From 8e817e727d498859c52c59024af71d6ac9dadd48 Mon Sep 17 00:00:00 2001 From: Christian Heller Date: Wed, 9 Mar 2016 23:12:24 +0100 Subject: [PATCH 1/1] TCE: Add voluntary urination. --- confserver/TheCrawlingEater | 3 +++ plugins/client/TheCrawlingEater.py | 1 + plugins/server/TheCrawlingEater.py | 19 +++++++++++++++++++ 3 files changed, 23 insertions(+) diff --git a/confserver/TheCrawlingEater b/confserver/TheCrawlingEater index 5338708..81e10dc 100644 --- a/confserver/TheCrawlingEater +++ b/confserver/TheCrawlingEater @@ -15,6 +15,9 @@ TA_NAME drop TA_ID 4 TA_NAME drink +TA_ID 5 +TA_NAME pee + TT_ID 0 TT_START_NUMBER 1 TT_LIFEPOINTS 1 diff --git a/plugins/client/TheCrawlingEater.py b/plugins/client/TheCrawlingEater.py index e5559c5..b2acb06 100644 --- a/plugins/client/TheCrawlingEater.py +++ b/plugins/client/TheCrawlingEater.py @@ -113,3 +113,4 @@ from client.commands import command_sender from client.config.commands import commands commands["S"] = (command_sender("drop"),) commands["D"] = (command_sender("drink"),) +commands["P"] = (command_sender("pee"),) diff --git a/plugins/server/TheCrawlingEater.py b/plugins/server/TheCrawlingEater.py index 210356a..6b56488 100644 --- a/plugins/server/TheCrawlingEater.py +++ b/plugins/server/TheCrawlingEater.py @@ -20,6 +20,23 @@ def actor_drink(t): t["T_BLADDER"] += 1 +def play_pee(): + if action_exists("pee") and world_db["WORLD_ACTIVE"]: + if world_db["Things"][0]["T_BLADDER"] < 1: + log("Nothing to drop from empty bladder.") + return + world_db["set_command"]("pee") + + +def actor_pee(t): + if t["T_BLADDER"] < 1: + return + if t == world_db["Things"][0]: + log("You LOSE fluid.") + terrain = world_db["MAP"][t["pos"]] + t["T_BLADDER"] -= 1 + + def play_drop(): if action_exists("drop") and world_db["WORLD_ACTIVE"]: if world_db["Things"][0]["T_BOWEL"] < 1: @@ -252,6 +269,7 @@ commands_db["move"] = (1, False, play_move) commands_db["wait"] = (0, False, play_wait) commands_db["drop"] = (0, False, play_drop) commands_db["drink"] = (0, False, play_drink) +commands_db["pee"] = (0, False, play_pee) commands_db["use"] = (1, False, lambda x: None) commands_db["pickup"] = (0, False, lambda: None) commands_db["T_BOWEL"] = (1, False, setter("Thing", "T_BOWEL", 0, 255)) @@ -263,6 +281,7 @@ server.config.actions.action_db = { "actor_move": actor_move, "actor_drop": actor_drop, "actor_drink": actor_drink, + "actor_pee": actor_pee, } strong_write(io_db["file_out"], "PLUGIN TheCrawlingEater\n") -- 2.30.2