diff --git a/tetrarcade.py b/tetrarcade.py index bf34ce5..7fa8fe8 100644 --- a/tetrarcade.py +++ b/tetrarcade.py @@ -13,7 +13,7 @@ python -m pip install --user arcade """ ) -from tetris import Tetris, Status, AbstractScheduler +from tetrislogic import TetrisLogic, Status, AbstractScheduler # Constants @@ -105,8 +105,7 @@ class ArcadeScheduler(AbstractScheduler): self._tasks = {} def start(self, task, period): - def _task(delta_time): - task() + _task = lambda _: task() self._tasks[task] = _task arcade.schedule(_task, period) @@ -120,7 +119,7 @@ class ArcadeScheduler(AbstractScheduler): del self._tasks[task] -class TetrArcade(Tetris, arcade.Window): +class TetrArcade(TetrisLogic, arcade.Window): scheduler = ArcadeScheduler() @@ -129,7 +128,7 @@ class TetrArcade(Tetris, arcade.Window): locale.setlocale(locale.LC_ALL, '') - self.actions = { + self.KEY_MAP = { Status.STARTING: { arcade.key.ENTER: self.new_game }, @@ -217,7 +216,7 @@ class TetrArcade(Tetris, arcade.Window): def on_key_press(self, key, modifiers): for key_or_modifier in (key, modifiers): try: - action = self.actions[self.status][key_or_modifier] + action = self.KEY_MAP[self.status][key_or_modifier] except KeyError: pass else: @@ -225,7 +224,7 @@ class TetrArcade(Tetris, arcade.Window): def on_key_release(self, key, modifiers): try: - action = self.actions[self.status][key] + action = self.KEY_MAP[self.status][key] except KeyError: pass else: diff --git a/tetris.py b/tetrislogic.py similarity index 98% rename from tetris.py rename to tetrislogic.py index 28cd1c3..40936ec 100644 --- a/tetris.py +++ b/tetrislogic.py @@ -182,7 +182,7 @@ class Tetromino: return cls.random_bag.pop()() -class Tetris(): +class TetrisLogic(): T_SLOT = (Coord(-1, 1), Coord(1, 1), Coord(1, -1), Coord(-1, -1)) @@ -227,7 +227,7 @@ class Tetris(): self.current_piece = None self.held_piece = None self.status = Status.PLAYING - self.scheduler.start(self.clock, 1) + self.scheduler.start(self.update_time, 1) self.new_level() def new_level(self): @@ -460,7 +460,7 @@ class Tetris(): self.status = Status.PAUSED self.scheduler.stop(self.drop) self.scheduler.stop(self.lock) - self.scheduler.stop(self.clock) + self.scheduler.stop(self.update_time) self.pressed_actions = [] self.stop_autorepeat() @@ -469,15 +469,15 @@ class Tetris(): self.scheduler.start(self.drop, self.fall_delay) if self.current_piece.prelocked: self.scheduler.start(self.lock, self.lock_delay) - self.scheduler.start(self.clock, 1) + self.scheduler.start(self.update_time, 1) def game_over(self): self.status = Status.OVER self.scheduler.stop(self.drop) - self.scheduler.stop(self.clock) + self.scheduler.stop(self.update_time) self.scheduler.stop(self.repeat_action) - def clock(self, delta_time=1): + def update_time(self, delta_time=1): self.time += delta_time def do_action(self, action):