diff options
author | kdx <kikoodx@paranoici.org> | 2023-08-30 07:01:18 +0200 |
---|---|---|
committer | kdx <kikoodx@paranoici.org> | 2023-08-30 07:01:18 +0200 |
commit | c157571230920c359f29c6d68c607d2ec1cd827c (patch) | |
tree | 2dc56d50b434f654066c68862833e529a84b88b6 | |
parent | f217acf535a8d3557b08345155d3016e86aa58ae (diff) | |
download | premovechess-c157571230920c359f29c6d68c607d2ec1cd827c.tar.gz |
-rw-r--r-- | inc/game.h | 5 | ||||
-rw-r--r-- | res/clock0.bmp | bin | 0 -> 1229610 bytes | |||
-rw-r--r-- | res/clock1.bmp | bin | 0 -> 1229610 bytes | |||
-rw-r--r-- | src/game.c | 31 | ||||
-rw-r--r-- | src/main.c | 15 |
5 files changed, 45 insertions, 6 deletions
diff --git a/inc/game.h b/inc/game.h new file mode 100644 index 0000000..090a19d --- /dev/null +++ b/inc/game.h @@ -0,0 +1,5 @@ +#pragma once + +void game_init(int white); +void game_update(void); +void game_draw(void); diff --git a/res/clock0.bmp b/res/clock0.bmp Binary files differnew file mode 100644 index 0000000..248f0ae --- /dev/null +++ b/res/clock0.bmp diff --git a/res/clock1.bmp b/res/clock1.bmp Binary files differnew file mode 100644 index 0000000..b9fdad1 --- /dev/null +++ b/res/clock1.bmp diff --git a/src/game.c b/src/game.c new file mode 100644 index 0000000..a30363f --- /dev/null +++ b/src/game.c @@ -0,0 +1,31 @@ +#include "game.h" +#include "TZR.h" +#include "cfg.h" + +int _white = 0; +int _my_turn = 0; + +void +game_init(int white) +{ + _white = white; + _my_turn = white; +} + +void +game_update(void) +{ +} + +void +game_draw(void) +{ + if (!_my_turn) { + TZR_DrawSetColor(1, 1, 1); + const TZR_Uint res[2] = { + TZR_RES("res/clock0.bmp"), + TZR_RES("res/clock1.bmp") + }; + TZR_DrawImage(res[TZR_GetTick() / FPS % 2]); + } +} @@ -2,6 +2,7 @@ #include "cfg.h" #include "log.h" #include "netcode.h" +#include "game.h" static void deinit(void); static int main_loop(void *udata); @@ -11,14 +12,14 @@ main(int argc, char **argv) { (void)argc, (void)argv; - char p1_white; + char p2_white; if (argc > 1) { log_info("client, connecting to %s", argv[1]); if (netcode_init_client(argv[1], 8177)) { log_error("netcode_init_client failed"); return -1; } - if (netcode_recv(&p1_white, 1)) { + if (netcode_recv(&p2_white, 1)) { log_error("netcode_send failed"); netcode_deinit(); return -1; @@ -30,15 +31,15 @@ main(int argc, char **argv) return -1; } srand(time(NULL)); - p1_white = rand() % 2; - if (netcode_send(&p1_white, 1)) { + p2_white = rand() % 2; + if (netcode_send(&p2_white, 1)) { log_error("netcode_send failed"); netcode_deinit(); return -1; } } - log_info("i'm %s", (p1_white ^ netcode_host()) ? "black" : "white"); + game_init(p2_white ^ netcode_host()); if (TZR_Init(.width=DWIDTH, .height=DHEIGHT, .target_fps=FPS)) return 1; @@ -63,13 +64,15 @@ main_loop(void *udata) { (void)udata; + game_update(); + TZR_DrawBegin(); + game_draw(); TZR_DrawEnd(); if (netcode_ping()) { log_error("netcode_ping failed"); return -1; } - return 0; } |