From f109d8d2684d3725d6985b0e654b24d35c897811 Mon Sep 17 00:00:00 2001 From: csd4ni3l Date: Sun, 22 Jun 2025 18:37:17 +0200 Subject: [PATCH] Use Roboto instead of Protest Strike, fix display mode crash, add file loading --- CREDITS | 2 + assets/fonts/OFL.txt | 93 +++++++++++++++++++ assets/fonts/ProtestStrike-Regular.ttf | Bin 83412 -> 0 bytes assets/fonts/Roboto-Black.ttf | Bin 0 -> 147424 bytes game/file_manager.py | 122 +++++++++++++++++++++++++ game/play.py | 77 ++++++++++------ menus/main.py | 4 +- menus/settings.py | 9 +- run.py | 5 +- utils/constants.py | 8 +- 10 files changed, 284 insertions(+), 36 deletions(-) create mode 100644 assets/fonts/OFL.txt delete mode 100644 assets/fonts/ProtestStrike-Regular.ttf create mode 100644 assets/fonts/Roboto-Black.ttf create mode 100644 game/file_manager.py diff --git a/CREDITS b/CREDITS index 8949336..cf1af5f 100644 --- a/CREDITS +++ b/CREDITS @@ -1,5 +1,7 @@ Thanks to Pixabay for the sound effects and the music! +The Roboto Black font used in this project is licensed under the Open Font License. Read assets/fonts/OFL.txt for more information. + Huge Thanks to Python for being the programming language used in this game. https://www.python.org/ diff --git a/assets/fonts/OFL.txt b/assets/fonts/OFL.txt new file mode 100644 index 0000000..a417551 --- /dev/null +++ b/assets/fonts/OFL.txt @@ -0,0 +1,93 @@ +Copyright 2011 The Roboto Project Authors (https://github.com/googlefonts/roboto-classic) + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +https://openfontlicense.org + + +----------------------------------------------------------- +SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007 +----------------------------------------------------------- + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting -- in part or in whole -- any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. diff --git a/assets/fonts/ProtestStrike-Regular.ttf b/assets/fonts/ProtestStrike-Regular.ttf deleted file mode 100644 index 3a88f0c7d02486e4771519267ac8bf2862de2d1f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 83412 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 Y4P9o`cJWPMOdW>A9Y3%a6W@{kU-tH#9RL6T diff --git a/assets/fonts/Roboto-Black.ttf b/assets/fonts/Roboto-Black.ttf new file mode 100644 index 0000000000000000000000000000000000000000..d51221af2b255560bcb313fbcc22cc43167c173f GIT binary patch literal 147424 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%0ALi}h*0#?{JL~Z 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

hBlH)yO@%iY6|t~izjPn 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 CN~Ki* literal 0 HcmV?d00001 diff --git a/game/file_manager.py b/game/file_manager.py new file mode 100644 index 0000000..ecf6682 --- /dev/null +++ b/game/file_manager.py @@ -0,0 +1,122 @@ +import arcade, arcade.gui, os, time + +from utils.constants import button_style +from utils.preload import button_texture, button_hovered_texture + +from arcade.gui.experimental.scroll_area import UIScrollArea, UIScrollBar + +class FileManager(arcade.gui.UIView): + def __init__(self, start_directory, allowed_extensions, *args): + super().__init__() + + self.current_directory = start_directory + self.allowed_extensions = allowed_extensions + self.file_buttons = [] + self.submitted_content = "" + self.done = False + self.args = args + + self.anchor = self.ui.add(arcade.gui.UIAnchorLayout(size_hint=(1, 1))) + self.box = self.anchor.add(arcade.gui.UIBoxLayout(size_hint=(0.7, 0.7)), anchor_x="center", anchor_y="center") + + self.content_cache = {} + self.pre_cache_contents() + + def on_show_view(self): + super().on_show_view() + + self.current_directory_label = self.anchor.add(arcade.gui.UILabel(text=self.current_directory, font_name="Roboto", font_size=24), anchor_x="center", anchor_y="top", align_y=-15) + + self.scroll_area = UIScrollArea(size_hint=(0.95, 1)) # center on screen + self.scroll_area.scroll_speed = -50 + self.box.add(self.scroll_area) + + self.scrollbar = UIScrollBar(self.scroll_area) + self.scrollbar.size_hint = (0.02, 1) + self.anchor.add(self.scrollbar, anchor_x="right", anchor_y="center") + + self.files_box = arcade.gui.UIBoxLayout(space_between=5) + self.scroll_area.add(self.files_box) + + self.back_button = self.anchor.add(arcade.gui.UITextureButton(texture=button_texture, texture_hovered=button_hovered_texture, text='<--', style=button_style, width=100, height=50), anchor_x="left", anchor_y="top", align_x=5, align_y=-5) + self.back_button.on_click = lambda event: self.change_directory(os.path.dirname(self.current_directory)) + + self.show_directory() + + def submit(self, content): + self.submitted_content = content + self.done = True + + if os.path.isfile(content): + from game.play import Game + self.window.show_view(Game(*self.args, load_from=self.submitted_content)) + + def get_content(self, directory): + if not directory in self.content_cache or time.perf_counter() - self.content_cache[directory][-1] >= 30: + try: + entries = os.listdir(directory) + except PermissionError: + return None + + filtered = [ + entry for entry in entries + if (os.path.isdir(os.path.join(directory, entry)) and not "." in entry) or + os.path.splitext(entry)[1].lower() in self.allowed_extensions + ] + + sorted_entries = sorted( + filtered, + key=lambda x: (0 if os.path.isdir(os.path.join(directory, x)) else 1, x.lower()) + ) + + self.content_cache[directory] = sorted_entries + self.content_cache[directory].append(time.perf_counter()) + + return self.content_cache[directory][:-1] + + def pre_cache_contents(self): + for directory in self.walk_limited_depth(self.current_directory): + self.get_content(directory) + + def walk_limited_depth(self, start_dir, max_depth=2): + start_dir = os.path.abspath(start_dir) + + def _walk(current_dir, current_depth): + if current_depth > max_depth: + return + + yield current_dir + try: + with os.scandir(current_dir) as it: + for entry in it: + if entry.is_dir(follow_symlinks=False): + yield from _walk(entry.path, current_depth + 1) + except PermissionError: + pass # skip directories you can't access + + return _walk(start_dir, 0) + + def show_directory(self): + self.files_box.clear() + self.file_buttons.clear() + + self.current_directory_label.text = self.current_directory + + for file in self.get_content(self.current_directory): + self.file_buttons.append(self.files_box.add(arcade.gui.UITextureButton(texture=button_texture, texture_hovered=button_hovered_texture, text=file, style=button_style, width=self.window.width / 1.5))) + if os.path.isdir(f"{self.current_directory}/{file}"): + self.file_buttons[-1].on_click = lambda event, directory=f"{self.current_directory}/{file}": self.change_directory(directory) + else: + self.file_buttons[-1].on_click = lambda event, file=f"{self.current_directory}/{file}": self.submit(file) + + def change_directory(self, directory): + if directory.startswith("//"): # Fix / paths + directory = directory[1:] + + self.current_directory = directory + + self.show_directory() + + def on_mouse_press(self, x, y, button, modifiers): + if button == arcade.MOUSE_BUTTON_RIGHT: + self.change_directory(os.path.dirname(self.current_directory)) diff --git a/game/play.py b/game/play.py index c4ff7f1..762b550 100644 --- a/game/play.py +++ b/game/play.py @@ -1,16 +1,18 @@ -import arcade, arcade.gui, random, math, copy, time, json +import arcade, arcade.gui, random, math, copy, time, json, os from utils.constants import COLS, ROWS, CELL_SIZE, SPACING, NEIGHBORS, button_style from utils.preload import create_sound, destroy_sound, button_texture, button_hovered_texture class Game(arcade.gui.UIView): - def __init__(self, pypresence_client=None): + def __init__(self, pypresence_client=None, generation=None, running=False, cell_grid=None, load_from=None): super().__init__() - self.generation = 0 + self.generation = generation or 0 self.population = 0 - self.running = True + self.running = running or False self.generation_fps = 10 - + self.cell_grid = cell_grid or {} + self.sprite_grid = {} + self.load_from = load_from self.pypresence_generation_count = 0 self.pypresence_client = pypresence_client @@ -30,48 +32,63 @@ class Game(arcade.gui.UIView): self.anchor = self.add_widget(arcade.gui.UIAnchorLayout(size_hint=(1, 1))) self.info_box = self.anchor.add(arcade.gui.UIBoxLayout(space_between=5, vertical=False), anchor_x="center", anchor_y="top") - self.population_label = arcade.gui.UILabel(text="Population: 0", font_name="Protest Strike", font_size=16) + self.population_label = arcade.gui.UILabel(text="Population: 0", font_name="Roboto", font_size=16) self.info_box.add(self.population_label) - self.generation_label = arcade.gui.UILabel(text="Generation: 0", font_name="Protest Strike", font_size=16) + self.generation_label = arcade.gui.UILabel(text="Generation: 0", font_name="Roboto", font_size=16) self.info_box.add(self.generation_label) - self.fps_label = arcade.gui.UILabel(text="FPS: 10", font_name="Protest Strike", font_size=16) + self.fps_label = arcade.gui.UILabel(text="FPS: 10", font_name="Roboto", font_size=16) self.info_box.add(self.fps_label) self.back_button = arcade.gui.UITextureButton(texture=button_texture, texture_hovered=button_hovered_texture, text='<--', style=button_style, width=100, height=50) - self.back_button.on_click = lambda e: self.main_exit() + self.back_button.on_click = lambda event: self.main_exit() self.anchor.add(self.back_button, anchor_x="left", anchor_y="top", align_x=5, align_y=-5) + self.load_button = arcade.gui.UITextureButton(texture=button_texture, texture_hovered=button_hovered_texture, text="Load", style=button_style, width=200, height=100) + self.load_button.on_click = lambda event: self.load() + self.anchor.add(self.load_button, anchor_x="left", anchor_y="bottom", align_x=5, align_y=5) + arcade.schedule(self.update_generation, 1 / self.generation_fps) def main_exit(self): from menus.main import Main self.window.show_view(Main(self.pypresence_client)) - def setup_grid(self, randomized=False): + def setup_grid(self, load_existing=False, randomized=False): self.spritelist.clear() - self.cell_grid = {} - self.sprite_grid = {} - for row in range(ROWS): self.cell_grid[row] = {} self.sprite_grid[row] = {} + + if self.load_from: + loaded_data = [] + with open(self.load_from, "r") as file: + data = file.read().splitlines() + for line in data: + if line == "#Life 1.06": + continue + + x, y = line.split(" ") + x = int(COLS / 2 + int(x)) + y = int(ROWS / 2 + int(y)) + loaded_data.append((y, x)) + + for row in range(ROWS): for col in range(COLS): - if randomized and random.randint(0, 1) == 1: - cell = arcade.SpriteSolidColor(CELL_SIZE, CELL_SIZE, center_x=self.start_x + col * (CELL_SIZE + SPACING), center_y=self.start_y + row * (CELL_SIZE + SPACING), color=arcade.color.WHITE) - self.cell_grid[row][col] = 1 - self.sprite_grid[row][col] = cell - self.spritelist.append(cell) + if self.load_from: + self.cell_grid[row][col] = 1 if (row, col) in loaded_data else 0 + elif not load_existing: + if randomized and random.randint(0, 1): + self.cell_grid[row][col] = 1 + self.population += 1 + continue - self.population += 1 + self.cell_grid[row][col] = 0 - continue - - self.cell_grid[row][col] = 0 cell = arcade.SpriteSolidColor(CELL_SIZE, CELL_SIZE, center_x=self.start_x + col * (CELL_SIZE + SPACING), center_y=self.start_y + row * (CELL_SIZE + SPACING), color=arcade.color.WHITE) - cell.visible = False + cell.visible = self.cell_grid[row][col] self.sprite_grid[row][col] = cell self.spritelist.append(cell) @@ -96,10 +113,10 @@ class Game(arcade.gui.UIView): if neighbor_x == 0 and neighbor_y == 0: continue - if grid.get(y + neighbor_y, {}).get(x + neighbor_x) == 1: + if grid.get(y + neighbor_y, {}).get(x + neighbor_x): cell_neighbors += 1 - if grid[y][x] == 1: + if grid[y][x]: if (cell_neighbors == 2 or cell_neighbors == 3): pass # survives else: # dies @@ -129,6 +146,10 @@ class Game(arcade.gui.UIView): self.population_label.text = f"Population: {self.population}" self.generation_label.text = f"Generation: {self.generation}" + self.cell_grid.clear() + self.spritelist.clear() + self.sprite_grid.clear() + arcade.unschedule(self.update_generation) self.setup_grid() arcade.schedule(self.update_generation, 1 / self.generation_fps) @@ -170,13 +191,17 @@ class Game(arcade.gui.UIView): if grid_col < 0 or grid_row < 0 or grid_row >= ROWS or grid_col >= COLS: return - if self.cell_grid[grid_row][grid_col] == 1: + if self.cell_grid[grid_row][grid_col]: self.population -= 1 if self.settings_dict.get("sfx", True): destroy_sound.play(volume=self.settings_dict.get("sfx_volume", 50) / 100) self.sprite_grid[grid_row][grid_col].visible = False self.cell_grid[grid_row][grid_col] = 0 + def load(self): + from game.file_manager import FileManager + self.window.show_view(FileManager(os.path.expanduser("~"), [".txt"], self.pypresence_client, self.generation, self.running, self.cell_grid)) + def on_draw(self): super().on_draw() diff --git a/menus/main.py b/menus/main.py index c8211c3..e78fee7 100644 --- a/menus/main.py +++ b/menus/main.py @@ -1,5 +1,5 @@ import arcade, arcade.gui, asyncio, pypresence, time, json, copy -from utils.preload import button_texture, button_hovered_texture, theme_sound +from utils.preload import button_texture, button_hovered_texture from utils.constants import button_style, discord_presence_id from utils.utils import FakePyPresence @@ -51,7 +51,7 @@ class Main(arcade.gui.UIView): def on_show_view(self): super().on_show_view() - self.title_label = self.box.add(arcade.gui.UILabel(text="Game Of Life", font_name="Protest Strike", font_size=48)) + self.title_label = self.box.add(arcade.gui.UILabel(text="Game Of Life", font_name="Roboto", font_size=48)) self.play_button = self.box.add(arcade.gui.UITextureButton(text="Play", texture=button_texture, texture_hovered=button_hovered_texture, width=self.window.width / 2, height=150, style=button_style)) self.play_button.on_click = lambda event: self.play() diff --git a/menus/settings.py b/menus/settings.py index 6f7c6be..198db70 100644 --- a/menus/settings.py +++ b/menus/settings.py @@ -82,7 +82,7 @@ class Settings(arcade.gui.UIView): self.value_layout.clear() for setting in settings[category]: - label = arcade.gui.UILabel(text=setting, font_name="Protest Strike", font_size=28, text_color=arcade.color.WHITE ) + label = arcade.gui.UILabel(text=setting, font_name="Roboto", font_size=28, text_color=arcade.color.WHITE ) self.key_layout.add(label) setting_dict = settings[category][setting] @@ -160,7 +160,10 @@ class Settings(arcade.gui.UIView): if self.settings_dict['vsync']: self.window.set_vsync(True) display_mode = self.window.display.get_default_screen().get_mode() - refresh_rate = display_mode.rate + if display_mode: + refresh_rate = display_mode.rate + else: + refresh_rate = 60 self.window.set_update_rate(1 / refresh_rate) self.window.set_draw_rate(1 / refresh_rate) @@ -273,7 +276,7 @@ class Settings(arcade.gui.UIView): else: font_size = 12 - self.credits_label = arcade.gui.UILabel(text=text, text_color=arcade.color.WHITE, font_name="Protest Strike", font_size=font_size, align="center", multiline=True) + self.credits_label = arcade.gui.UILabel(text=text, text_color=arcade.color.WHITE, font_name="Roboto", font_size=font_size, align="center", multiline=True) self.key_layout.add(self.credits_label) diff --git a/run.py b/run.py index 197266d..fd8a1ca 100644 --- a/run.py +++ b/run.py @@ -77,7 +77,10 @@ window = arcade.Window(width=resolution[0], height=resolution[1], title='Game Of if vsync: window.set_vsync(True) display_mode = window.display.get_default_screen().get_mode() - refresh_rate = display_mode.rate + if display_mode: + refresh_rate = display_mode.rate + else: + refresh_rate = 60 window.set_update_rate(1 / refresh_rate) window.set_draw_rate(1 / refresh_rate) elif not fps_limit == 0: diff --git a/utils/constants.py b/utils/constants.py index 08ab363..de4c5e8 100644 --- a/utils/constants.py +++ b/utils/constants.py @@ -13,10 +13,10 @@ discord_presence_id = 1363780625928028200 log_dir = 'logs' menu_background_color = arcade.color.DARK_SLATE_GRAY -button_style = {'normal': UITextureButtonStyle(font_name="Protest Strike", font_color=arcade.color.BLACK), 'hover': UITextureButtonStyle(font_name="Protest Strike", font_color=arcade.color.BLACK), - 'press': UITextureButtonStyle(font_name="Protest Strike", font_color=arcade.color.BLACK), 'disabled': UITextureButtonStyle(font_name="Protest Strike", font_color=arcade.color.BLACK)} -dropdown_style = {'normal': UIFlatButtonStyle(font_name="Protest Strike", font_color=arcade.color.BLACK, bg=Color(128, 128, 128)), 'hover': UIFlatButtonStyle(font_name="Protest Strike", font_color=arcade.color.BLACK, bg=Color(49, 154, 54)), - 'press': UIFlatButtonStyle(font_name="Protest Strike", font_color=arcade.color.BLACK, bg=Color(128, 128, 128)), 'disabled': UIFlatButtonStyle(font_name="Protest Strike", font_color=arcade.color.BLACK, bg=Color(128, 128, 128))} +button_style = {'normal': UITextureButtonStyle(font_name="Roboto", font_color=arcade.color.BLACK), 'hover': UITextureButtonStyle(font_name="Roboto", font_color=arcade.color.BLACK), + 'press': UITextureButtonStyle(font_name="Roboto", font_color=arcade.color.BLACK), 'disabled': UITextureButtonStyle(font_name="Roboto", font_color=arcade.color.BLACK)} +dropdown_style = {'normal': UIFlatButtonStyle(font_name="Roboto", font_color=arcade.color.BLACK, bg=Color(128, 128, 128)), 'hover': UIFlatButtonStyle(font_name="Roboto", font_color=arcade.color.BLACK, bg=Color(49, 154, 54)), + 'press': UIFlatButtonStyle(font_name="Roboto", font_color=arcade.color.BLACK, bg=Color(128, 128, 128)), 'disabled': UIFlatButtonStyle(font_name="Roboto", font_color=arcade.color.BLACK, bg=Color(128, 128, 128))} slider_default_style = UISliderStyle(bg=Color(128, 128, 128), unfilled_track=Color(128, 128, 128), filled_track=Color(49, 154, 54)) slider_hover_style = UISliderStyle(bg=Color(49, 154, 54), unfilled_track=Color(128, 128, 128), filled_track=Color(49, 154, 54))