From: Christian Heller Date: Wed, 26 Aug 2015 03:24:31 +0000 (+0200) Subject: Let dying actors drop their things. X-Git-Tag: tce~313 X-Git-Url: https://plomlompom.com/repos/%7B%7B%20web_path%20%7D%7D/decks/%7B%7Bprefix%7D%7D/static/ledger?a=commitdiff_plain;h=858dd9d0785c3d528e3ce8d7111819ef7e572217;p=plomrogue Let dying actors drop their things. --- diff --git a/roguelike-server b/roguelike-server index 57f0b6c..483dc22 100755 --- a/roguelike-server +++ b/roguelike-server @@ -578,9 +578,15 @@ def decrement_lifepoints(t): If t is the player avatar, only blank its fovmap, so that the client may still display memory data. On non-player things, erase fovmap and memory. + Dying actors drop all their things. """ t["T_LIFEPOINTS"] -= 1 if 0 == t["T_LIFEPOINTS"]: + for id in t["T_CARRIES"]: + t["T_CARRIES"].remove(id) + world_db["Things"][id]["T_POSY"] = t["T_POSY"] + world_db["Things"][id]["T_POSX"] = t["T_POSX"] + world_db["Things"][id]["carried"] = False t["T_TYPE"] = world_db["ThingTypes"][t["T_TYPE"]]["TT_CORPSE_ID"] if world_db["Things"][0] == t: t["fovmap"] = bytearray(b' ' * (world_db["MAP_LENGTH"] ** 2))