diff --git a/.gitignore b/.gitignore index ecbb66e..874e073 100644 --- a/.gitignore +++ b/.gitignore @@ -10,4 +10,5 @@ build/ dist/ rats rats.spec -.env \ No newline at end of file +.env +release/ \ No newline at end of file diff --git a/key.py b/key.py new file mode 100644 index 0000000..127c745 --- /dev/null +++ b/key.py @@ -0,0 +1,55 @@ +#!/usr/bin/env python3 + +import sys +import os +sys.path.append(os.path.dirname(os.path.abspath(__file__))) + +from engine import sdl2 as engine + +class KeyTester: + def __init__(self): + self.render_engine = engine.GameWindow(800, 600, 1, "Key Tester", + key_callback=(self.key_pressed, self.key_released, None)) + self.pressed_keys = [] + self.last_key = "None" + + def key_pressed(self, key): + self.last_key = f"PRESSED: {key}" + if key not in self.pressed_keys: + self.pressed_keys.append(key) + print(f"Key pressed: {key}") + + def key_released(self, key): + self.last_key = f"RELEASED: {key}" + if key in self.pressed_keys: + self.pressed_keys.remove(key) + print(f"Key released: {key}") + + def update_display(self): + # Mostra l'ultimo tasto premuto/rilasciato + self.render_engine.draw_text(f"Last action: {self.last_key}", + self.render_engine.fonts[20], (10, 10), + engine.sdl2.ext.Color(255, 255, 255)) + + # Mostra tutti i tasti attualmente premuti + pressed_text = "Currently pressed: " + ", ".join(self.pressed_keys) if self.pressed_keys else "Currently pressed: None" + self.render_engine.draw_text(pressed_text, + self.render_engine.fonts[16], (10, 40), + engine.sdl2.ext.Color(255, 255, 255)) + + # Istruzioni + self.render_engine.draw_text("Press any key to test. ESC to quit.", + self.render_engine.fonts[14], (10, 80), + engine.sdl2.ext.Color(200, 200, 200)) + + # Continua il loop + self.render_engine.new_cycle(60, self.update_display) + + def run(self): + print("Key Tester started. Press keys to see them displayed.") + print("Press ESC to quit.") + self.render_engine.mainloop(update=self.update_display) + +if __name__ == "__main__": + tester = KeyTester() + tester.run() \ No newline at end of file diff --git a/units/__pycache__/rat.cpython-313.pyc b/units/__pycache__/rat.cpython-313.pyc index 1ff24fd..bb861f2 100644 Binary files a/units/__pycache__/rat.cpython-313.pyc and b/units/__pycache__/rat.cpython-313.pyc differ diff --git a/units/__pycache__/unit.cpython-313.pyc b/units/__pycache__/unit.cpython-313.pyc index bf787f5..df01ebe 100644 Binary files a/units/__pycache__/unit.cpython-313.pyc and b/units/__pycache__/unit.cpython-313.pyc differ