X-Git-Url: https://plomlompom.com/repos/feed.xml?a=blobdiff_plain;f=src%2Fserver%2Frun.c;h=1df4b63b6668dbd5076ae3d9fa7ea26b529f00be;hb=0255432b4e8d3a7b3aec71c4e43e7fb063c45833;hp=3be073a70170654e89f4a5c6a3b0e6639eacd544;hpb=dd9d65ee727ac7e95801da0f8b5bae7009811802;p=plomrogue diff --git a/src/server/run.c b/src/server/run.c index 3be073a..1df4b63 100644 --- a/src/server/run.c +++ b/src/server/run.c @@ -1,6 +1,7 @@ /* src/server/run.c */ #include "run.h" +#include /* NULL */ #include /* uint8_t, uint16_t, uint32_t */ #include /* FILE, sprintf() */ #include /* free() */ @@ -11,7 +12,7 @@ * textfile_sizes(), try_fputc() */ #include "../common/rexit.h" /* exit_trouble() */ -#include "ai.h" /* pretty_dumb_ai() */ +#include "ai.h" /* ai() */ #include "init.h" /* remake_world() */ #include "io.h" /* io_round() */ #include "map_object_actions.h" /* get_moa_id_by_name() */ @@ -39,7 +40,6 @@ static void turn_over() struct MapObj * player = get_player(); struct MapObj * map_object = player; uint16_t start_turn = world.turn; - uint8_t first_round = 1; while ( 0 < player->lifepoints || (0 == player->lifepoints && start_turn == world.turn)) { @@ -50,15 +50,14 @@ static void turn_over() } if (0 < map_object->lifepoints) { - if (0 == first_round && 0 == map_object->progress) + if (0 == map_object->command) { if (map_object == player) { break; } - pretty_dumb_ai(map_object); + ai(map_object); } - first_round = 0; map_object->progress++; struct MapObjAct * moa = world.map_obj_acts; while (moa->id != map_object->command) @@ -68,6 +67,7 @@ static void turn_over() if (map_object->progress == moa->effort) { moa->func(map_object); + map_object->command = 0; map_object->progress = 0; } }