X-Git-Url: https://plomlompom.com/repos/berlin_corona.txt?a=blobdiff_plain;f=plugins%2Fclient%2FTheCrawlingEater.py;h=1123af2c2ca962249f059273d16f4d3f1690d88a;hb=14db6b45621e35493ec2ea4b07d39acd3f41a45b;hp=3d13d2c3d22e5af95c3f03fc1d4e3b74640cc96c;hpb=5205756191b1305684a5005f3940e49d1b6caafa;p=plomrogue diff --git a/plugins/client/TheCrawlingEater.py b/plugins/client/TheCrawlingEater.py index 3d13d2c..1123af2 100644 --- a/plugins/client/TheCrawlingEater.py +++ b/plugins/client/TheCrawlingEater.py @@ -3,24 +3,21 @@ # 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 +curses.init_pair(77, curses.COLOR_WHITE, curses.COLOR_GREEN) +curses.init_pair(78, curses.COLOR_BLACK, curses.COLOR_RED) +curses.init_pair(79, curses.COLOR_WHITE, curses.COLOR_BLUE) +curses.init_pair(80, curses.COLOR_BLACK, curses.COLOR_YELLOW) -def win_bowel(self): - winmap = [] - curses.init_pair(80, curses.COLOR_YELLOW, curses.COLOR_RED) - for i in range(world_data["bowel"]): - winmap += [("#", curses.color_pair(80))] - winmap_size = [1, len(winmap)] - offset = [0, 0] - return offset, winmap_size, winmap +def win_bar_maker(color_number, symbol, title): + def win_bar(self): + winmap = [] + for i in range(world_data[title]): + winmap += [(symbol, curses.color_pair(color_number))] + winmap_size = [1, len(winmap)] + offset = [0, 0] + return offset, winmap_size, winmap + return win_bar def win_map(self): @@ -31,6 +28,7 @@ def win_map(self): "3": "%", "4": "#", "5": "X", + "-": "O", } win_size = self.size offset = [0, 0] @@ -61,8 +59,10 @@ def win_map(self): curses.init_pair(12, curses.COLOR_BLACK, curses.COLOR_YELLOW) curses.init_pair(13, curses.COLOR_BLACK, curses.COLOR_RED) curses.init_pair(14, curses.COLOR_BLACK, curses.COLOR_MAGENTA) + curses.init_pair(15, curses.COLOR_RED, curses.COLOR_GREEN) col_unknown = curses.color_pair(1) col_mem = curses.color_pair(1) + col_creature = curses.color_pair(15) col_player = curses.color_pair(8) earth_colors = [ curses.color_pair(4), @@ -89,7 +89,10 @@ def win_map(self): char = world_data["mem_map"][pos] winmap += [(char, curses.A_REVERSE), ("?", curses.A_REVERSE)] continue + bonus = " " if char == " ": + if world_data["soundmap"][pos] != "0": + bonus = "?" char = world_data["mem_map"][pos] if char == " ": attribute = col_unknown @@ -97,10 +100,8 @@ def win_map(self): attribute = col_mem if char in charmap: char = charmap[char] - bonus = (" ", attribute) winmap += [(char, attribute), bonus] else: - bonus = " " attribute = col_unknown wetval = ord(world_data["wetmap"][pos]) - ord("0") if ord("0") <= ord(char) <= ord("5"): @@ -112,7 +113,10 @@ def win_map(self): if char in charmap: char = charmap[char] elif char == "@": - attribute = col_player + attribute = col_creature + av_pos = world_data["avatar_position"] + if pos == av_pos[0] * world_data["map_size"] + av_pos[1]: + attribute = col_player winmap += [(char, attribute), bonus] if y % 2 == 0: winmap += " " @@ -120,20 +124,40 @@ def win_map(self): from client.config.world_data import world_data +world_data["kidney"] = 0 +world_data["stomach"] = 0 world_data["bowel"] = 0 world_data["bladder"] = 0 world_data["wetmap"] = " " * (world_data["map_size"] ** 2) +world_data["soundmap"] = " " * (world_data["map_size"] ** 2) from client.config.io import io +io["worldstate_read_order"] += [["stomach", "int"]] +io["worldstate_read_order"] += [["kidney", "int"]] io["worldstate_read_order"] += [["bowel", "int"]] io["worldstate_read_order"] += [["bladder", "int"]] io["worldstate_read_order"] += [["wetmap", "map"]] +io["worldstate_read_order"] += [["soundmap", "map"]] from client.config.windows import windows_config from client.windows import win_log windows_config[:] = [ - {"config": [0, -34], "func": win_map, "title": "The Crawling Eater"}, - {"config": [1, 33], "func": win_bowel, "title": "bowel"}, - {"config": [1, 33], "func": win_bladder, "title": "bladder"}, - {"config": [-4, 33], "func": win_log, "title": "log"} + {"config": [0, -34], + "func": win_map, + "title": "The Crawling Eater"}, + {"config": [1, 33], + "func": win_bar_maker(77, "%", "stomach"), + "title": "stomach"}, + {"config": [1, 33], + "func": win_bar_maker(79, "~", "kidney"), + "title": "kidney"}, + {"config": [1, 33], + "func": win_bar_maker(78, "%", "bowel"), + "title": "bowel"}, + {"config": [1, 33], + "func": win_bar_maker(80, "~", "bladder"), + "title": "bladder"}, + {"config": [-8, 33], + "func": win_log, + "title": "log"} ] from client.window_management import set_windows set_windows()