Ich bin kein Ruby-Experte, aber was du versuchen könntest:

Code:
# If moving, event running, move route forcing, and message window
# display are all not occurring
unless moving? or $game_system.map_interpreter.running? or           
  @move_route_forcing or $game_temp.message_window_showing
  # Move player in the direction the directional button is being pressed
  if $game_switches[hier die Nummer vom Switch einsetzen]  
    case Input.dir4      
    # When Down
    when 2
      if Input.trigger?(Input::DOWN) and self.direction == 2
        move_down
      elsif Input.trigger?(Input::DOWN)
        @wait_time = 4
        turn_down
      elsif @wait_time <= 0
        move_down
      end      
    # When Left
    when 4
      if Input.trigger?(Input::LEFT) and self.direction == 4
        move_left
      elsif Input.trigger?(Input::LEFT)
        @wait_time = 4
        turn_left
      elsif @wait_time <= 0
        move_left
      end      
    # When right
    when 6
      if Input.trigger?(Input::RIGHT) and self.direction == 6
        move_right
      elsif Input.trigger?(Input::RIGHT)
        @wait_time = 4
        turn_right
      elsif @wait_time <= 0
        move_right
      end      
    # When Up
    when 8
      if Input.trigger?(Input::UP) and self.direction == 8
        move_up
      elsif Input.trigger?(Input::UP)
        @wait_time = 4
        turn_up
      elsif @wait_time <= 0
        move_up
      end
    end
  else
    # Bewegung ohne Drehen
    case Input.dir4
    when 2
      move_down
    when 4
      move_left
    when 6
      move_right
    when 8
      move_up
    end
  end
end
# Remember coordinates in local variables
Mit $game_switches[Nummer] greift man auf die Standard-Switches vom Maker zu. Die Methode fragt ab, ob der Switch an ist und falls ja, wird zuerst die Drehung ausgeführt, falls nein, bewegt sich die Figur ganz normal.