X-Git-Url: https://plomlompom.com/repos/berlin_corona.txt?a=blobdiff_plain;f=plugins%2Fclient%2FTheCrawlingEater.py;h=6996daf1ef4d25bfe611984c33cb2e4bc665bf25;hb=5cb6d71f5a8d7fecfde60351f6b767754ce3f092;hp=7d52bd36ce29744b0523b4eb9db62282380353da;hpb=15be45b8bd3fba5cc9779cfe36e8e8a0ea68f081;p=plomrogue diff --git a/plugins/client/TheCrawlingEater.py b/plugins/client/TheCrawlingEater.py index 7d52bd3..6996daf 100644 --- a/plugins/client/TheCrawlingEater.py +++ b/plugins/client/TheCrawlingEater.py @@ -1,3 +1,28 @@ +# This file is part of PlomRogue. PlomRogue is licensed under the GPL version 3 +# or any later version. For details on its copyright, license, and warranties, +# see the file NOTICE in the root directory of the PlomRogue source package. + + +def win_bladder(self): + winmap = [] + curses.init_pair(79, curses.COLOR_WHITE, curses.COLOR_BLUE) + for i in range(world_data["bladder"]): + winmap += [("~", curses.color_pair(79))] + winmap_size = [1, len(winmap)] + offset = [0, 0] + return offset, winmap_size, winmap + + +def win_stomach(self): + winmap = [] + curses.init_pair(80, curses.COLOR_YELLOW, curses.COLOR_RED) + for i in range(world_data["stomach"]): + winmap += [("#", curses.color_pair(80))] + winmap_size = [1, len(winmap)] + offset = [0, 0] + return offset, winmap_size, winmap + + def win_map(self): win_size = self.size offset = [0, 0] @@ -18,13 +43,16 @@ def win_map(self): curses.init_pair(2, curses.COLOR_BLUE, curses.COLOR_BLACK) curses.init_pair(3, curses.COLOR_RED, curses.COLOR_BLACK) curses.init_pair(4, curses.COLOR_YELLOW, curses.COLOR_BLACK) + curses.init_pair(5, curses.COLOR_MAGENTA, curses.COLOR_BLACK) + curses.init_pair(6, curses.COLOR_BLACK, curses.COLOR_BLUE) col_unknown = curses.color_pair(1) col_mem_obstacle = curses.color_pair(2) col_mem = curses.color_pair(2) - col_ground = curses.color_pair(3) - col_stone = curses.color_pair(4) + col_stone = curses.color_pair(1) + col_dirt = curses.color_pair(4) col_earth = curses.color_pair(3) - col_player = curses.color_pair(1) + col_player = curses.color_pair(5) + col_water = curses.color_pair(6) for y in range(world_data["map_size"]): for x in range(world_data["map_size"]): pos = y * world_data["map_size"] + x @@ -46,26 +74,42 @@ def win_map(self): winmap += [(char, attribute), bonus] else: attribute = col_stone + bonus = " " if char == ".": - attribute = col_ground - if char == "#": + attribute = col_dirt + elif char == ":": + attribute = col_earth + elif char == "%": attribute = col_earth - elif char == "@": + elif char == "#": + attribute = col_dirt + elif char == "~": + attribute = col_water + elif char == "o": attribute = col_player - bonus = (" ", attribute) + bonus = (char, attribute) winmap += [(char, attribute), bonus] if y % 2 == 0: winmap += " " return offset, winmap_size, winmap +from client.config.world_data import world_data +world_data["stomach"] = 0 +world_data["bladder"] = 0 +from client.config.io import io +io["worldstate_read_order"] += [["stomach", "int"]] +io["worldstate_read_order"] += [["bladder", "int"]] from client.config.windows import windows_config -from client.windows import win_log, win_inventory, win_look, win_info +from client.windows import win_log windows_config[:] = [ - {"config": [1, 33], "func": win_info, "title": "Stats"}, - {"config": [-7, 33], "func": win_log, "title": "Log"}, - {"config": [4, 16], "func": win_inventory, "title": "Inventory"}, - {"config": [4, 16], "func": win_look, "title": "Things here"}, - {"config": [0, -34], "func": win_map, "title": "The Crawling Eater"} + {"config": [0, -34], "func": win_map, "title": "The Crawling Eater"}, + {"config": [1, 33], "func": win_stomach, "title": "stomach"}, + {"config": [1, 33], "func": win_bladder, "title": "bladder"}, + {"config": [-4, 33], "func": win_log, "title": "log"} ] from client.window_management import set_windows set_windows() +from client.commands import command_sender +from client.config.commands import commands +commands["S"] = (command_sender("drop"),) +commands["D"] = (command_sender("drink"),)