X-Git-Url: https://plomlompom.com/repos/foo.html?a=blobdiff_plain;f=roguelike-server;h=483dc22f75171bb588c2d4c471a44637da88938e;hb=858dd9d0785c3d528e3ce8d7111819ef7e572217;hp=57f0b6c1bc737dd92c8ebd3e14fa9bca2697c662;hpb=b36bacf2869c51bbbfe628ad431080971fab409c;p=plomrogue
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))