def move(self, rel_x, rel_y): self.pos[0] += self.dt * rel_x self.pos[1] -= self.dt * rel_y self.pos[0] = Utils.clamp(self.pos[0], 0, self.screen_size[0] - self.dim[0]) self.pos[1] = Utils.clamp(self.pos[1], 0, self.screen_size[1] - self.dim[1])
def play(self): clock = pygame.time.Clock() while True: if not self.get_input() or self.stop: break self.update() self.move() if Setting.PLAY_MODE == Setting.SINGLE_MODE: self.ai_move() self.draw() clock.tick(60) self.dt = 1.0 / Utils.clamp(clock.get_fps(), 30, 90)
def play(self): clock = pygame.time.Clock() while True: if not self.get_input() or self.stop: break self.update() self.move() if Setting.PLAY_MODE == Setting.SINGLE_MODE: self.ai_move() self.draw() clock.tick(60) self.dt = 1.0/Utils.clamp(clock.get_fps(), 30, 90)
def ai_move(self): move_speed = 5 if self.balls and self.balls[0].speed[0] < 0: for paddle in self.players[0].paddles: if abs(paddle.pos[1]-self.balls[0].pos[1]) > 50: if paddle.pos[1] > self.balls[0].pos[1]: paddle.pos[1] -= move_speed else: paddle.pos[1] += move_speed else: paddle.pos[1] = self.balls[0].pos[1] - paddle.dim[1]/2 # paddle.pos[1] += 5 paddle.pos[1] = Utils.clamp(paddle.pos[1], 0, self.screen_size[1] - paddle.dim[1])
def ai_move(self): move_speed = 5 if self.balls and self.balls[0].speed[0] < 0: for paddle in self.players[0].paddles: if abs(paddle.pos[1] - self.balls[0].pos[1]) > 50: if paddle.pos[1] > self.balls[0].pos[1]: paddle.pos[1] -= move_speed else: paddle.pos[1] += move_speed else: paddle.pos[1] = self.balls[0].pos[1] - paddle.dim[1] / 2 # paddle.pos[1] += 5 paddle.pos[1] = Utils.clamp(paddle.pos[1], 0, self.screen_size[1] - paddle.dim[1])