X-Git-Url: https://plomlompom.com/repos/?p=plomrogue;a=blobdiff_plain;f=server%2Factions.py;h=5492dbe97b2f9bbcb62cb79b5cbe4b852b9ba181;hp=dd9d9e7f21c294685d76248b0e02b731b2cdec71;hb=26b0310b0c61804a781149032818d1c6f9b47fd9;hpb=2b56602240cad39f31b40445d8932856777295bd diff --git a/server/actions.py b/server/actions.py index dd9d9e7..5492dbe 100644 --- a/server/actions.py +++ b/server/actions.py @@ -55,7 +55,7 @@ def actor_move(t): def actor_pickup(t): - """Make t pick up (topmost?) Thing from ground into inventory. + """Make t pick up (topmost?) Thing from ground into inventory. Return it. Define topmostness by how low the thing's type ID is. """ @@ -67,14 +67,16 @@ def actor_pickup(t): lowest_tid = -1 for iid in ids: tid = world_db["Things"][iid]["T_TYPE"] - if lowest_tid == -1 or tid < lowest_tid: + from server.config.actions import actor_pickup_test_hook + if (lowest_tid == -1 or tid < lowest_tid) and \ + actor_pickup_test_hook(t, tid): id = iid lowest_tid = tid world_db["Things"][id]["carried"] = True t["T_CARRIES"].append(id) if t == world_db["Things"][0]: log("You PICK UP an object.") - + return world_db["Things"][id] def actor_drop(t): """Make t rop Thing from inventory to ground indexed by T_ARGUMENT."""