From e055ea1f5deb22915079b10e88b6af7d0e1af1a1 Mon Sep 17 00:00:00 2001 From: Kayne Ruse Date: Sat, 29 Mar 2025 11:12:40 +1100 Subject: [PATCH] Switched to a new font, properly --- README.md | 8 ++------ assets/16 Bit Dreams Mono.ttf | Bin 0 -> 52597 bytes assets/PublicPixel.ttf | Bin 128684 -> 0 bytes assets/dejavu10x10_gs_tc.png | Bin 8439 -> 0 bytes source/actions.py | 8 +------- source/event_handlers.py | 17 +++++++++++++---- source/main.py | 10 +++++----- source/message_log.py | 2 +- 8 files changed, 22 insertions(+), 23 deletions(-) create mode 100644 assets/16 Bit Dreams Mono.ttf delete mode 100644 assets/PublicPixel.ttf delete mode 100644 assets/dejavu10x10_gs_tc.png diff --git a/README.md b/README.md index de7d685..82d32e4 100644 --- a/README.md +++ b/README.md @@ -53,11 +53,7 @@ exit $lint_errors heapq is a thing for the speed sorting -## Font File Credits and links - -https://ggbot.itch.io/public-pixel-font -https://2bitcrook.itch.io/44-game-boy-fonts -https://arcade.itch.io/1980 -https://speakthesky.itch.io/typeface-angel-sealing-glyphs +## Credits and links +Font: https://2bitcrook.itch.io/44-game-boy-fonts diff --git a/assets/16 Bit Dreams Mono.ttf b/assets/16 Bit Dreams Mono.ttf new file mode 100644 index 0000000000000000000000000000000000000000..b186a82fa3b7ead211542adb6301c8d5475128cb GIT binary patch literal 52597 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 H&x!v5+gr`A diff --git a/assets/dejavu10x10_gs_tc.png b/assets/dejavu10x10_gs_tc.png deleted file mode 100644 index ea3adbe8661bf28ac1199ce662588fa4d9317162..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8439 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 0: msg_text += f" for {damage} damage" else: msg_text += f" but was ineffective" - engine.message_log.add_message(text = msg_text, color=msg_color) + engine.message_log.add_message(text = msg_text) #actually applying the change here, so the player's death event is at the bottom of the message log target.stats.current_hp -= damage diff --git a/source/event_handlers.py b/source/event_handlers.py index f0b45e0..c3ce119 100644 --- a/source/event_handlers.py +++ b/source/event_handlers.py @@ -3,6 +3,7 @@ from typing import Optional, TYPE_CHECKING import tcod +import colors from actions import BaseAction, QuitAction, BumpAction, WaitAction if TYPE_CHECKING: @@ -146,14 +147,22 @@ class LogHistoryViewer(EventHandler): log_console = tcod.console.Console(console.width - 6, console.height - 6) #rendering a nice log window - log_console.draw_frame(0, 0, log_console.width, log_console.height) + log_console.draw_frame( + 0,0, log_console.width, log_console.height, + # "╔═╗║ ║╚═╝" + decoration="\\x/x x/x\\", + fg=colors.terminal_dark, bg=colors.black + ) log_console.print_box( - 0, 0, log_console.width, 1, "Message History", alignment=tcod.constants.CENTER + 0, 0, log_console.width, log_console.height, + string = "Message History", + alignment=tcod.constants.CENTER, + fg=colors.terminal_light, bg=colors.black ) self.engine.message_log.render_messages( log_console, - 1, 1, - log_console.width - 2, log_console.height - 2, + 2, 2, + log_console.width - 4, log_console.height - 4, self.engine.message_log.messages[:self.cursor + 1] ) log_console.blit(console, 3, 3) #into the middle diff --git a/source/main.py b/source/main.py index 0d4813e..c4492a4 100755 --- a/source/main.py +++ b/source/main.py @@ -8,8 +8,7 @@ import colors def main() -> None: #screen dimensions depend partially on the tileset - tileset = tcod.tileset.load_truetype_font("assets/PublicPixel.ttf", 16, 16) - #TODO: see if there's a nicer tilesheet + tileset = tcod.tileset.load_truetype_font("assets/16 Bit Dreams Mono.ttf", 16, 16) #how big is the map's dimensions map_width = 80 @@ -35,9 +34,10 @@ def main() -> None: ui_height = ui_height, initial_log= [ - Message(" Movement: Numpad", colors.terminal_light), - Message(" See Log: Backtick", colors.terminal_light), - Message(" Quit: Esc", colors.terminal_light), + Message(" Move/Attack: Numpad", colors.terminal_dark), + Message(" See Log: Backtick", colors.terminal_dark), + Message(" Quit: Esc", colors.terminal_dark), + Message(" ~ ~ ~", colors.terminal_dark), Message("Welcome to the Cave of Gobbos!", colors.cyan), ] ) diff --git a/source/message_log.py b/source/message_log.py index ba7a28a..9bf1ba4 100644 --- a/source/message_log.py +++ b/source/message_log.py @@ -23,7 +23,7 @@ class MessageLog: def __init__(self): self.messages: List[Message] = [] - def add_message(self, text: str, color: Tuple[int, int, int] = colors.white, *, stack: bool = True) -> None: + def add_message(self, text: str, color: Tuple[int, int, int] = colors.terminal_light, *, stack: bool = True) -> None: if stack and self.messages and text == self.messages[-1].raw_text: self.messages[-1].count += 1 else: