home · contact · privacy
Server: Tell player about deaths his wounding is responsible for.
authorChristian Heller <c.heller@plomlompom.de>
Sun, 28 Feb 2016 22:18:45 +0000 (23:18 +0100)
committerChristian Heller <c.heller@plomlompom.de>
Sun, 28 Feb 2016 22:18:45 +0000 (23:18 +0100)
server/actions.py
server/decrement_lifepoints.py

index ee68866b000dfb238b7c5debd0976d95ad42c85f..22d165a4023c6652cb02706be7b0b01ac3cf79f9 100644 (file)
@@ -31,15 +31,16 @@ def actor_move(t):
                   if world_db["Things"][id]["T_POSX"] == move_result[2]]
         if len(hitted):
             hit_id = hitted[0]
                   if world_db["Things"][id]["T_POSX"] == move_result[2]]
         if len(hitted):
             hit_id = hitted[0]
+            hitted_type_id = world_db["Things"][hit_id]["T_TYPE"]
             if t == world_db["Things"][0]:
             if t == world_db["Things"][0]:
-                hitted_type = world_db["Things"][hit_id]["T_TYPE"]
-                hitted_name = world_db["ThingTypes"][hitted_type]["TT_NAME"]
+                hitted_name = world_db["ThingTypes"][hitted_type_id]["TT_NAME"]
                 log("You WOUND " + hitted_name + ".")
             elif 0 == hit_id:
                 hitter_name = world_db["ThingTypes"][t["T_TYPE"]]["TT_NAME"]
                 log(hitter_name +" WOUNDS you.")
                 log("You WOUND " + hitted_name + ".")
             elif 0 == hit_id:
                 hitter_name = world_db["ThingTypes"][t["T_TYPE"]]["TT_NAME"]
                 log(hitter_name +" WOUNDS you.")
-            decrement_lifepoints_func(world_db["Things"][hit_id])
-            return
+            decr_test = decrement_lifepoints_func(world_db["Things"][hit_id])
+            if decr_test > 0 and t == world_db["Things"][0]:
+                log(hitted_name + " dies.")
         passable = chr(world_db["MAP"][pos]) in symbols_passable
     dir = [dir for dir in directions_db
            if directions_db[dir] == chr(t["T_ARGUMENT"])][0]
         passable = chr(world_db["MAP"][pos]) in symbols_passable
     dir = [dir for dir in directions_db
            if directions_db[dir] == chr(t["T_ARGUMENT"])][0]
index 8fe5de8c9cbad60146c385df7ca8354456ec3418..827a16ea0616da93fe25c13e2ce412a2f315812b 100644 (file)
@@ -14,6 +14,7 @@ def decrement_lifepoints(t):
     from server.io import log
     t["T_LIFEPOINTS"] -= 1
     if 0 == t["T_LIFEPOINTS"]:
     from server.io import log
     t["T_LIFEPOINTS"] -= 1
     if 0 == t["T_LIFEPOINTS"]:
+        live_tid = t["T_TYPE"]
         for id in t["T_CARRIES"]:
             t["T_CARRIES"].remove(id)
             world_db["Things"][id]["T_POSY"] = t["T_POSY"]
         for id in t["T_CARRIES"]:
             t["T_CARRIES"].remove(id)
             world_db["Things"][id]["T_POSY"] = t["T_POSY"]
@@ -29,3 +30,5 @@ def decrement_lifepoints(t):
             t["T_MEMMAP"] = False
             t["T_MEMDEPTHMAP"] = False
             t["T_MEMTHING"] = []
             t["T_MEMMAP"] = False
             t["T_MEMDEPTHMAP"] = False
             t["T_MEMTHING"] = []
+        return world_db["ThingTypes"][live_tid]["TT_LIFEPOINTS"]
+    return 0