Aggiorna la gestione dei tasti e aggiungi nuovi file di configurazione per le schermate di pausa e menu di avvio
This commit is contained in:
+24
-12
@@ -5,31 +5,43 @@ import random
|
||||
|
||||
class KeyBindings:
|
||||
def key_pressed(self, key, coords=None):
|
||||
if key in self.keybindings["quit"]:
|
||||
keybindings = self.configs[f"keybinding_{self.game_status}"]
|
||||
if key in keybindings.get("quit", []):
|
||||
self.engine.close()
|
||||
elif key in self.keybindings["new_rat"]:
|
||||
elif key in keybindings.get("new_rat", []):
|
||||
self.new_rat()
|
||||
elif key in self.keybindings["kill_rat"]:
|
||||
elif key in keybindings.get("kill_rat", []):
|
||||
if self.units:
|
||||
self.units[random.choice(list(self.units.keys()))].die(score=5)
|
||||
elif key in self.keybindings["toggle_audio"]:
|
||||
elif key in keybindings.get("toggle_audio", []):
|
||||
self.audio = not self.audio
|
||||
elif key in self.keybindings["toggle_full_screen"]:
|
||||
elif key in keybindings.get("toggle_full_screen", []):
|
||||
self.full_screen = not self.full_screen
|
||||
self.engine.full_screen(self.full_screen)
|
||||
elif key in self.keybindings["scroll_up"]:
|
||||
elif key in keybindings.get("scroll_up", []):
|
||||
self.start_scrolling("Up")
|
||||
elif key in self.keybindings["scroll_down"]:
|
||||
elif key in keybindings.get("scroll_down", []):
|
||||
self.start_scrolling("Down")
|
||||
elif key in self.keybindings["scroll_left"]:
|
||||
elif key in keybindings.get("scroll_left", []):
|
||||
self.start_scrolling("Left")
|
||||
elif key in self.keybindings["scroll_right"]:
|
||||
elif key in keybindings.get("scroll_right", []):
|
||||
self.start_scrolling("Right")
|
||||
elif key in self.keybindings["spawn_bomb"]:
|
||||
elif key in keybindings.get("spawn_bomb", []):
|
||||
self.play_sound("PUTDOWN.WAV", tag="effects")
|
||||
self.spawn_bomb(self.pointer)
|
||||
elif key in self.keybindings["pause"]:
|
||||
self.pause = not self.pause
|
||||
elif key in keybindings.get("pause", []):
|
||||
self.game_status = "paused" if self.game_status == "game" else "game"
|
||||
elif key in keybindings.get("start_game", []):
|
||||
self.pause = False
|
||||
self.game_status = "game"
|
||||
self.start_game()
|
||||
elif key in keybindings.get("reset_game", []):
|
||||
self.pause = False
|
||||
self.game_status = "game"
|
||||
self.game_end = (False, None)
|
||||
self.units.clear()
|
||||
self.points = 0
|
||||
self.start_game()
|
||||
|
||||
def quit_game(self):
|
||||
self.engine.close()
|
||||
|
||||
Reference in New Issue
Block a user