def update(self): has_to_read, _, _ = select([self.gamepad.fd], [], [], 0.01) if has_to_read: for event in self.gamepad.read(): if event.type == ecodes.EV_KEY: if event.code == self.LEFT_ARROW_KEY_CODE and event.value == 1: Player.get_instance().running_left = True if event.code == self.LEFT_ARROW_KEY_CODE and event.value == 0: Player.get_instance().running_left = False if event.code == self.RIGHT_ARROW_KEY_CODE and event.value == 1: Player.get_instance().running_right = True if event.code == self.RIGHT_ARROW_KEY_CODE and event.value == 0: Player.get_instance().running_right = False if event.code == self.CIRCLE_KEY_CODE and event.value == 1: Shooter.spawn_bullet(Direction.RIGHT) if event.code == self.SQUARE_KEY_CODE and event.value == 1: Shooter.spawn_bullet(Direction.LEFT) if event.code == self.START_KEY_CODE and event.value == 1: GameManager.get_instance().restart()