X-Git-Url: https://plomlompom.com/repos/foo.html?a=blobdiff_plain;ds=sidebyside;f=server%2Fworld.py;h=c00b5f14374bfb1fb2ca45c2b3af2e5c76255591;hb=81f8bee1a21642c56b1fead9ba79afdad0c8b451;hp=3a68ee407428b5d14cab74db7d5a50f5ba57c04b;hpb=0dd5be3b48b45d1be5cec5ff18f3cb633f99886d;p=plomrogue diff --git a/server/world.py b/server/world.py index 3a68ee4..c00b5f1 100644 --- a/server/world.py +++ b/server/world.py @@ -6,7 +6,6 @@ from server.config.world_data import world_db from server.io import log from server.utils import rand -from server.utils import id_setter def try_healing(t): @@ -52,11 +51,12 @@ def set_world_inactive(): def turn_over(): """Run game world and its inhabitants until new player input expected.""" - from server.config.actions import action_db, ai_func - from server.config.misc import thingproliferation_func + from server.ai import ai + from server.config.actions import action_db + from server.config.misc import calc_effort_func from server.update_map_memory import update_map_memory + from server.thingproliferation import thingproliferation id = 0 - whilebreaker = False while world_db["Things"][0]["T_LIFEPOINTS"]: proliferable_map = world_db["MAP"][:] for id in [id for id in world_db["Things"] @@ -73,9 +73,8 @@ def turn_over(): if not Thing["T_COMMAND"]: update_map_memory(Thing) if 0 == id: - whilebreaker = True - break - ai_func(Thing) + return + ai(Thing) try_healing(Thing) hunger(Thing) if Thing["T_LIFEPOINTS"]: @@ -83,12 +82,11 @@ def turn_over(): taid = [a for a in world_db["ThingActions"] if a == Thing["T_COMMAND"]][0] ThingAction = world_db["ThingActions"][taid] - if Thing["T_PROGRESS"] == ThingAction["TA_EFFORT"]: + effort = calc_effort_func(ThingAction, Thing) + if Thing["T_PROGRESS"] == effort: action = action_db["actor_" + ThingAction["TA_NAME"]] action(Thing) Thing["T_COMMAND"] = 0 Thing["T_PROGRESS"] = 0 - thingproliferation_func(Thing, proliferable_map) - if whilebreaker: - break + thingproliferation(Thing, proliferable_map) world_db["TURN"] += 1