X-Git-Url: https://plomlompom.com/repos/test.html?a=blobdiff_plain;f=src%2Fserver%2Finit.c;h=1b36490947a2405912535b5516f7a427bdd0e3bb;hb=81630285494cf6d9e5ddd845e4e55702d87029b0;hp=ee9f9c276872897e121c7acca1b7268bd4ec3c27;hpb=2b2a1e0169b3a863fd87b679d789a4e2b789eb67;p=plomrogue diff --git a/src/server/init.c b/src/server/init.c index ee9f9c2..1b36490 100644 --- a/src/server/init.c +++ b/src/server/init.c @@ -31,7 +31,7 @@ #include "things.h" /* Thing, ThingType, free_things(), add_things(), * get_thing_id_action_id_by_name() */ -#include "run.h" /* obey_msg(), io_loop(), record() */ +#include "run.h" /* obey_msg(), io_loop(), record(), send_to_outfile() */ #include "world.h" /* global world */ @@ -71,7 +71,7 @@ static void obey_lines_from_file(char * path, uint8_t record) { *nl = '\0'; } - obey_msg(line, record, 1); + obey_msg(line, record); } err_line_inc(); } @@ -91,18 +91,18 @@ static void replay_game() while ( world.turn < world.replay && try_fgets(line, linemax + 1, file, __func__)) { - obey_msg(line, 0, 1); + obey_msg(line, 0); err_line_inc(); } uint8_t end = 0; - while (!io_loop()) + while (3 == io_loop(2)) { if (!end) { end = (NULL == try_fgets(line, linemax + 1, file, __func__)); if (!end) { - obey_msg(line, 0, 1); + obey_msg(line, 0); err_line_inc(); } } @@ -224,8 +224,9 @@ extern uint8_t remake_world() } } world.turn = 1; - world.do_update = 1; + world.do_update = 1; /* calling obey_msg() only sets this if world.exists */ world.exists = 1; + send_to_outfile("NEW_WORLD\n", 1); return 0; } @@ -255,10 +256,10 @@ extern void run_game() char * msg = try_malloc(strlen(command) + 1 + 11 + 1, __func__); int test = sprintf(msg, "%s %d", command, (int) time(NULL)); exit_trouble(test < 0, __func__, s[S_FCN_SPRINTF]); - obey_msg(msg, 1, 1); + obey_msg(msg, 1); free(msg); } err_line_zero(); - io_loop(); + io_loop(1); record(NULL, 1); }