def determine_dir(self): while not cf.check_movable(self.pos_x + self.dir_x, self.pos_y + self.dir_y, self.map): if self.flag == 1: self.dir_x = -self.dir_x self.flag = -1 else: self.dir_y = -self.dir_y self.flag = 1
def update(self, current_time, pos_x=0, pos_y=0, is_move=False): if is_move: self.cnt += 1 if self.cnt % 2 == 0: if cf.check_movable(self.pos_x, self.pos_y + self.flag, self.map): self.pos_y += self.flag self.flag = -self.flag super().update(current_time, self.pos_x, self.pos_y) else: super().update(current_time, self.pos_x, self.pos_y) else: super().update(current_time, self.pos_x, self.pos_y)
def update(self, current_time, pos_x=0, pos_y=0, is_move=False): if is_move: temp_flag = (self.flag + 1) % 4 temp_x = self.pos_x + self.move[temp_flag][0] temp_y = self.pos_y + self.move[temp_flag][1] if cf.check_movable(temp_x, temp_y, self.map): self.flag = temp_flag self.pos_x = temp_x self.pos_y = temp_y super().update(current_time, self.pos_x, self.pos_y) else: super().update(current_time, self.pos_x, self.pos_y)
def move_or_kill(self, factor_x, factor_y): if common_function.check_movable(self.pos_x + factor_x, self.pos_y + factor_y, self.map): '''Kill''' if self.map.array[self.pos_x + factor_x][self.pos_y + factor_y] == 2: self.swipe.set_pos(self.pos_x + factor_x, self.pos_y + factor_y) self.swipe.visable = True self.removeMonster(self.pos_x + factor_x, self.pos_y + factor_y) else: '''Move''' self.pos_x += factor_x self.pos_y += factor_y
def update(self, current_time, pos_x=0, pos_y=0, is_move=False): if cf.check_movable(pos_x, pos_y, self.map): super().update(current_time, pos_x, pos_y)