Code: |
class Interpreter def trainer_spotted(distance) character = $game_map.events[@event_id] if Input.trigger?(Input::C) px = $game_player.x py = $game_player.y cx = character.x cy = character.y heros_p = get_character(-1) if heros_p.direction == 4 and py == cy and px == cx + 1 character.direction = 6 return true end if heros_p.direction == 6 and py == cy and px == cx - 1 character.direction = 4 return true end if heros_p.direction == 2 and px == cx and py == cy - 1 character.direction = 8 return true end if heros_p.direction == 8 and px == cx and py == cy + 1 character.direction = 2 return true end end if $game_player.moving? return false end case character.direction when 4 # Tourné vers la gauche if character.y == $game_player.y and character.x - $game_player.x >= 0 and (character.x - $game_player.x).abs <= distance $game_player.turn_right return true end when 8 # Tourné vers le haut if character.x == $game_player.x and character.y - $game_player.y >= 0 and (character.y - $game_player.y).abs <= distance $game_player.turn_down return true end when 6 # Tourné vers la droite if character.y == $game_player.y and character.x - $game_player.x <= 0 and (character.x - $game_player.x).abs <= distance $game_player.turn_left return true end when 2 # Tourné vers le bas if character.x == $game_player.x and character.y - $game_player.y <= 0 and (character.y - $game_player.y).abs <= distance $game_player.turn_up return true end end return false end end # Fin Interpreter |