Habs mal mit diesem Script ausprobiert doch der funktioniert nur in seinem Projekt und nicht wenn ich es in meiner Liste hinzufügen möchte.

Anstatt das Vehicle zu betreten wird der Charakter zu einem (was ja fürs erste zwar richtig ist) doch dann wird auch noch eine andere Grafik gespeichert die man auf der Map erkennen kann. Man steigt wieder aus und man wird in eine andere Map tranferiert. Wenn das Luftschiff genutzt wird kann es keine Berge überqueren und zum Floß sag ich mal das es nur zum anschauen zu gebrauchen ist. Im großem und ganzem haben diese Vehicle auf der Map keine besondere Funktion auch wenn ich diese mit mehreren Funktionen ausstatte oder Tilesets der Nummerierung zuteilen möchte.

Der Script ist dieser:
Code:
class Game_Character
  def passable?(x, y, d)
    
    # Get new coordinates
    new_x = x + (d == 6 ? 1 : d == 4 ? -1 : 0)
    new_y = y + (d == 2 ? 1 : d == 8 ? -1 : 0)
    
    # If coordinates are outside of map
    unless $game_map.valid?(new_x, new_y)
      return false
    end
    
    # If through is ON
    if @through
      return true
    end
        
    # If unable to leave first move tile in designated direction
    unless $game_map.passable?(x, y, d, self)
      return false
    end
    
    # If unable to enter move tile in designated direction
    unless $game_map.passable?(new_x, new_y, 10 - d)
      return false
    end
        
    #check terrain for vehicle
    check_terrain(new_x, new_y)    
      
    # Loop all events
    for event in $game_map.events.values
      # If event coordinates are consistent with move destination
      if event.x == new_x and event.y == new_y
        @state = true
        # If through is OFF
        unless event.through
          # If self is event
          if self != $game_player
            return false
          end
          # With self as the player and partner graphic as character
          if event.character_name != ""
            return false
          end
        end
      end
    end
    
    if @state == false
      return false
    end      
    
    # If player coordinates are consistent with move destination
    if $game_player.x == new_x and $game_player.y == new_y
      # If through is OFF
      unless $game_player.through
        # If your own graphic is the character
        if @character_name != ""
          return false
        end
      end
    end
      
    
    return true
    
  end
  
  #--------------------------------------------------------------------------
  # * Check the terrain for the vehicle
  #   @terrain (0=none, 1=river, 2=ocean, 3=air, 4=ground)
  #   @vehicle (0=foot, 1=canoe, 2=boat, 3=dragon)
  #   @state (true=passable tile, false=unpassable tile)
  #--------------------------------------------------------------------------
  def check_terrain(new_x, new_y)  
    @state = false
    @terrain = $game_map.terrain_tag(new_x, new_y)
    @vehicle = $game_variables[1]
    
    @state = true if @vehicle == 0 && @terrain == 4  #foot & ground
    @state = true if @vehicle == 1 && @terrain == 3  #canoe & river
    @state = true if @vehicle == 2 && @terrain == 2  #boat & ocean
    @state = true if @vehicle == 3                   #dragon
    @state = true if @terrain == 0
  end

end

class Game_Player < Game_Character
  
  alias in_vehicle_alias update
  #--------------------------------------------------------------------------
  # * Memorize actor graphic
  #--------------------------------------------------------------------------      
  def actor_memorize
    @actor_name = $game_actors[1].character_name
    @actor_hue = $game_actors[1].character_hue
    @battler_name = $game_actors[1].battler_name
    @battler_hue = $game_actors[1].battler_hue
    return true
  end

  #--------------------------------------------------------------------------
  # * Restore actor graphic
  #--------------------------------------------------------------------------      
  def actor_restore
    actor = $game_actors[1]
    actor.set_graphic(@actor_name.to_s, @actor_hue, @battler_name.to_s, @battler_hue)
    $game_player.refresh
    return true
  end    
  
  #--------------------------------------------------------------------------
  # * Enter a vehicle
  #--------------------------------------------------------------------------        
  def enter_vehicle(type)
    
    $game_system.menu_disabled = true
    $game_system.save_disabled = true    
    
    if type != "dragon"
      @through = true
      move_forward
      @through = false    
    end
    
    actor_memorize
    actor = $game_actors[1]    
    actor.set_graphic(type, @actor_hue, @battler_name.to_s, @battler_hue) 
    
    $game_switches[1] = false    #Canoe Off     
    $game_switches[2] = false    #Boat Off     
    $game_switches[3] = false    #Dragon Off         
    
    if type == "canoe"
      $game_variables[1] = 1       #set terrian
      $game_switches[1] = true    #Canoe On
      Audio.bgm_play("Audio/BGM/047-Positive05", 100, 100) #play canoe music
  
    elsif type == "boat"
      $game_variables[1] = 2       #set terrian
      $game_switches[2] = true    #Boat On      
      Audio.bgm_play("Audio/BGM/046-Positive04", 100, 100) #play ship music
      
    elsif type == "dragon"
      $game_variables[1] = 3       #set terrian
      $game_switches[3] = true    #Dragon On  
      Audio.bgm_play("Audio/BGM/045-Positive03", 100, 100) #play dragon music
      
    end
    
    $game_player.refresh
    $game_map.refresh
    
    return true
  end

  #--------------------------------------------------------------------------
  # * Enter a vehicle
  #--------------------------------------------------------------------------        
  def exit_vehicle

    $game_system.menu_disabled = false    
    $game_system.save_disabled = false
    
    if @terrain == 4
            
      if $game_switches[1] == true      #getting off canoe
        canoe = $game_map.events[1]     #get canoe event
        canoe.moveto(x, y)              #move to player's x, y coords
        $game_switches[1] = false       #Canoe Off   
        $game_variables[2] = x          #set canoe x coord
        $game_variables[3] = y          #set canoe y coord
        @through = true
        move_forward
        @through = false          
        
      elsif $game_switches[2] == true   #getting off boat
        boat = $game_map.events[2]      #get boat event
        boat.moveto(x, y)               #move to player's x, y coords        
        $game_switches[2] = false       #Boat Off    
        $game_variables[4] = x          #set boat x coord
        $game_variables[5] = y          #set boate y coord  
        @through = true
        move_forward
        @through = false                  
        
      elsif $game_switches[3] == true   #getting off dragon
        dragon = $game_map.events[3]    #get dragon event
        dragon.moveto(x, y)             #move to player's x, y coords        
        $game_switches[3] = false       #Dragon Off    
        $game_variables[6] = x          #set dragon x coord
        $game_variables[7] = y          #set dragon y coord 
      end
      
      # get off vehicle
      actor_restore
    
      # reset terrain
      $game_variables[1] = 0           
    
      # play walking music
      Audio.bgm_play("Audio/BGM/044-Positive02", 100, 100) #play music
      
      $game_player.refresh  
      $game_map.refresh    
    
    end
  
  end 
  
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    in_vehicle_alias
    # if not on ground terrain, check for boat exit
    if $game_variables[1] != 0
      if Input.trigger?(Input::C)
        exit_vehicle
      end   
    end
  end
 
end
Letzten Endes brachte es auch nichts sich darüber zu informieren da dies wohl ein besonderer Fall ist wie ich es in der Internetrecherche gemerkt habe.