RMRK is retiring.
Server is paid up for the rest of 2026, but the forum may go after that. See here for more information. Please archive or save anything you would like to keep before 2027.
Main Menu
  • Welcome to The RPG Maker Resource Kit.

World Map versus Catterpillar system

Started by Ericmor, September 15, 2006, 03:58:07 PM

0 Members and 1 Guest are viewing this topic.

Ericmor

I recently added the world map script on my game, but there's a conflict with catterpillar "Train System" script: the extra actors sprite variables aren't stored.
World map changes the first map on the game in a "MAP VIEW" of the world. Catterpillar system make other party character to follow you like a train.
The game crashes AFTER you exits the worl map... very frustating.
If anyone knows how to fix that, please help!
Thanks in advance.

Catterpillar system script:


#CARTEPILLAR SYSTEM - The "TRAIN PARTY"

module Train_Actor

# ?Switch setup for transparent status
# When true, switch control is used
# TRANSPARENT_SWITCH = true
TRANSPARENT_SWITCH = false

# ?Switch number for transparent status
# When TRANSPARENT_SWITCH is true, transparency will be activated when the switch of this number is on
TRANSPARENT_SWITCHES_INDEX = 20

# ?Maximum number of actors
# There will be support for a large number of people in a party in the future...
TRAIN_ACTOR_SIZE_MAX = 4

# Constants
DOWN_LEFT  = 1
DOWN_RIGHT = 3
UP_LEFT    = 7
UP_RIGHT   = 9
JUMP       = 5

#The next statement indicates wich actor will be forever in "walk animation",
# even if it's stopped! To put everybody normal, put "HERE_THE_ACTOR_ID  =1 "
# to make the second hero always walk, "HERE_THE_ACTOR_ID  =2 ", etc.
#HERE_THE_ACTOR_ID = 2
HERE_THE_ACTOR_ID = 1

end

# rgss

# Spriteset_Map_Module.rb
#==============================================================================
# ? Spriteset_Map_Module
#------------------------------------------------------------------------------
# Caterpillar movement of actor is carried out on map
#==============================================================================

module Train_Actor

module Spriteset_Map_Module
def setup_actor_character_sprites?
   return @setup_actor_character_sprites_flag != nil
end
def setup_actor_character_sprites(characters)
   if !setup_actor_character_sprites?
     for character in characters.reverse
       @character_sprites.unshift(
         Sprite_Character.new(@viewport1, character)
       )
     end
     @setup_actor_character_sprites_flag = true
   end
end
end

end

class Spriteset_Map
include Train_Actor::Spriteset_Map_Module
end

# Scene_Map_Module.rb
#==============================================================================
# ? Scene_Map_Module
#------------------------------------------------------------------------------
# Caterpillar movement of actor is carried out on map
#==============================================================================

module Train_Actor

module Scene_Map_Module
def setup_actor_character_sprites(characters)
   @spriteset.setup_actor_character_sprites(characters)
end
end

end

class Scene_Map
include Train_Actor::Scene_Map_Module
end



module Train_Actor

module Scene_Menu_Module
def setup_actor_character_sprites(characters)
   @spriteset.setup_actor_character_sprites(characters)
end
end

end

class Scene_Menu
include Train_Actor::Scene_Menu_Module
end


# Game_Party_Module.rb
#==============================================================================
# ? Game_Party_Module
#------------------------------------------------------------------------------
# Caterpillar movement of actor is carried out on map
#==============================================================================

module Train_Actor

module Game_Party_Module
attr_reader :characters
def actors_dead?
   for actor in actors
     #remove down here to make dead actors stay in party .
    # if actor.dead?
     #  return true
    # end
     #remove up here to make dead actors stay in party .
   end
   return false
end
def update_party_order
   if not actors_dead?
     return actors
   end
   #remove down here to make dead actors stay in party .
   alive_actors = []
   dead_actors = []
   for actor in actors
     if actor.dead?
      dead_actors.push actor
     else
   # remove up here to make dead actors stay in party .
       alive_actors.push actor
       #remove down here to make dead actors stay in party .
     end
   end
   #remove up here to make dead actors stay in party .
   return alive_actors + dead_actors
end
def setup_actor_character_sprites
    if @characters.nil?
     @characters = []
     for i in 1 ... TRAIN_ACTOR_SIZE_MAX
       @characters.push(Game_Party_Actor.new)
     end
   end
   setup_actors = update_party_order
   for i in 1 ... TRAIN_ACTOR_SIZE_MAX
     @characters[i - 1].setup(setup_actors[i])
   end
   if $scene.class.method_defined?('setup_actor_character_sprites')
     $scene.setup_actor_character_sprites(@characters)
   end
end
def update_party_actors
    update_party_order
   setup_actor_character_sprites
   transparent = $game_player.transparent
   if transparent == false
     if TRANSPARENT_SWITCH
       transparent = $game_switches[TRANSPARENT_SWITCHES_INDEX]
     end
   end
   for character in @characters
     character.transparent = transparent
     character.move_speed = $game_player.move_speed
     if character.cp_id == HERE_THE_ACTOR_ID # Blizzard´s support for stopped animation
       character.step_anime = true # Blizzard´s support for stopped animation
     else # Blizzard´s support for stopped animation
       character.step_anime = $game_player.step_anime
     end # Blizzard´s support for stopped animation
     character.update
   end
end
def moveto_party_actors( x, y )
   setup_actor_character_sprites
   for character in @characters
     character.moveto( x, y )
   end
   if @move_list == nil
     @move_list = []
   end
   move_list_setup
end
def move_party_actors
     if @move_list == nil
       @move_list = []
       move_list_setup
     end
     @move_list.each_index do |i|
     if @characters[i] != nil
       case @move_list[i].type
         when Input::DOWN
           @characters[i].move_down(@move_list[i].args[0])
         when Input::LEFT
           @characters[i].move_left(@move_list[i].args[0])
         when Input::RIGHT
           @characters[i].move_right(@move_list[i].args[0])
         when Input::UP
           @characters[i].move_up(@move_list[i].args[0])
         when DOWN_LEFT
           @characters[i].move_lower_left
         when DOWN_RIGHT
           @characters[i].move_lower_right
         when UP_LEFT
           @characters[i].move_upper_left
         when UP_RIGHT
           @characters[i].move_upper_right
         when JUMP
           @characters[i].jump(@move_list[i].args[0],@move_list[i].args[1])
       end
     end
   end
end
class Move_List_Element
   def initialize(type,args)
     @type = type
     @args = args
   end
   def type() return @type end
   def args() return @args end
end
def move_list_setup
   for i in 0 .. TRAIN_ACTOR_SIZE_MAX
     @move_list[i] = nil
   end
end
def add_move_list(type,*args)
   @move_list.unshift(Move_List_Element.new(type,args)).pop
end
def move_down_party_actors(turn_enabled = true)
   move_party_actors
   add_move_list(Input::DOWN,turn_enabled)
end
def move_left_party_actors(turn_enabled = true)
   move_party_actors
   add_move_list(Input::LEFT,turn_enabled)
end
def move_right_party_actors(turn_enabled = true)
   move_party_actors
   add_move_list(Input::RIGHT,turn_enabled)
end
def move_up_party_actors(turn_enabled = true)
   move_party_actors
   add_move_list(Input::UP,turn_enabled)
end
def move_lower_left_party_actors
   move_party_actors
   add_move_list(DOWN_LEFT)
end
def move_lower_right_party_actors
   move_party_actors
   add_move_list(DOWN_RIGHT)
end
def move_upper_left_party_actors
   move_party_actors
   add_move_list(UP_LEFT)
end
def move_upper_right_party_actors
   move_party_actors
   add_move_list(UP_RIGHT)
end
def jump_party_actors(x_plus, y_plus)
   move_party_actors
   add_move_list(JUMP,x_plus, y_plus)
end
end

end

class Game_Party
include Train_Actor::Game_Party_Module
end

# Game_Player_Module.rb
#==============================================================================
# ? Game_Player_Module
#------------------------------------------------------------------------------
# Caterpillar movement of actor is carried out on map
#==============================================================================

module Train_Actor

module Game_Player_Module
attr_reader :move_speed
attr_reader :step_anime

def update_party_actors
   $game_party.update_party_actors
   $game_party.actors.each do |actor|
     #if actor.dead?
     #  next
     #end
     @character_name = actor.character_name
     @character_hue = actor.character_hue
     break
   end
end
def update
   update_party_actors
   super
end
def moveto( x, y )
   $game_party.moveto_party_actors( x, y )
   super( x, y )
end
def move_down(turn_enabled = true)
   if passable?(@x, @y, Input::DOWN)
     $game_party.move_down_party_actors(turn_enabled)
   end
   super(turn_enabled)
end
def move_left(turn_enabled = true)
   if passable?(@x, @y, Input::LEFT)
     $game_party.move_left_party_actors(turn_enabled)
   end
   super(turn_enabled)
end
def move_right(turn_enabled = true)
   if passable?(@x, @y, Input::RIGHT)
     $game_party.move_right_party_actors(turn_enabled)
   end
   super(turn_enabled)
end
def move_up(turn_enabled = true)
   if passable?(@x, @y, Input::UP)
     $game_party.move_up_party_actors(turn_enabled)
   end
   super(turn_enabled)
end
def move_lower_left
   # When possible to move from down?left or from left?down
   if (passable?(@x, @y, Input::DOWN) and passable?(@x, @y + 1, Input::LEFT)) or
      (passable?(@x, @y, Input::LEFT) and passable?(@x - 1, @y, Input::DOWN))
     $game_party.move_lower_left_party_actors
   end
   super
end
def move_lower_right
   # When possible to move from down?right or from right?down
   if (passable?(@x, @y, Input::DOWN) and passable?(@x, @y + 1, Input::RIGHT)) or
      (passable?(@x, @y, Input::RIGHT) and passable?(@x + 1, @y, Input::DOWN))
     $game_party.move_lower_right_party_actors
   end
   super
end
def move_upper_left
   # When possible to move from up?left or from left?up
   if (passable?(@x, @y, Input::UP) and passable?(@x, @y - 1, Input::LEFT)) or
      (passable?(@x, @y, Input::LEFT) and passable?(@x - 1, @y, Input::UP))
     $game_party.move_upper_left_party_actors
   end
   super
end
def move_upper_right
   # When possible to move from up?right or from right?up
   if (passable?(@x, @y, Input::UP) and passable?(@x, @y - 1, Input::RIGHT)) or
      (passable?(@x, @y, Input::RIGHT) and passable?(@x + 1, @y, Input::UP))
     $game_party.move_upper_right_party_actors
   end
   super
end
def jump(x_plus, y_plus)
   # New coordinates are calculated
   new_x = @x + x_plus
   new_y = @y + y_plus
   # When addition values are (0,0), it is possible to jump to the destination
   if (x_plus == 0 and y_plus == 0) or passable?(new_x, new_y, 0)
     $game_party.jump_party_actors(x_plus, y_plus)
   end
   super(x_plus, y_plus)
end
end

end

class Game_Player
include Train_Actor::Game_Player_Module
end

# Game_Event_Module.rb
#==============================================================================
# ? Game_Event_Module
#------------------------------------------------------------------------------
# Caterpillar movement of actor is carried out on map
#==============================================================================

module Train_Actor

module Game_Event_Module
#--------------------------------------------------------------------------
# ? Judgement determined
#     x  : X coordinates
#     y  : Y coordinates
#     d  : Direction (0,2,4,6,8)  ? 0 = Checks if all directions are not able to be passed (for a jump)
# return : Passing is impossible (false), possible (true)
#--------------------------------------------------------------------------
def passable?(x, y, d)
   result = super(x, y, d)
   if result
     # New coordinates are searched for
     new_x = x + (d == 6 ? 1 : d == 4 ? -1 : 0)
     new_y = y + (d == 2 ? 1 : d == 8 ? -1 : 0)
     # Loops for actor in train
     for actor in $game_party.characters
       # When displayed
       if not actor.character_name.empty?
         # When actor's coordinates correspond to the destination
         if actor.x == new_x and actor.y == new_y
           # When event
           if self != $game_player
             # Passing is impossible
             return false
           end
         end
       end
     end
   end
   return result
end
end

end

class Game_Event
include Train_Actor::Game_Event_Module
end
 
# Game_Party_Actor.rb
#==============================================================================
# ? Game_Party_Actor
#------------------------------------------------------------------------------
# Caterpillar movement of actor is carried out on map
#==============================================================================

module Train_Actor

class Game_Party_Actor < Game_Character
attr_reader :cp_id
attr_writer :move_speed
attr_writer :step_anime

def initialize
   super()
   @through = true
end
def setup(actor)
   # The file name and hue of the character are set
   @cp_id = $data_actors[actor.id].id
   if actor != nil #and (not actor.dead?) # When dead, it is erased for the time being...
     @character_name = actor.character_name
     @character_hue = actor.character_hue
   else
     @character_name = ""
     @character_hue = 0
   end
   # Opacity and blending method are initialized
   @opacity = 255
   @blend_type = 0
end
def screen_z(height = 0)
   if $game_player.x == @x and $game_player.y == @y
     return $game_player.screen_z(height) - 1
   end
   super(height)
end
#--------------------------------------------------------------------------
# ? Move down
#     turn_enabled : Flag that permits direction change on the spot
#--------------------------------------------------------------------------
def move_down(turn_enabled = true)
   # Face down
   if turn_enabled
     turn_down
   end
   # When possible to pass
   if passable?(@x, @y, Input::DOWN)
     # Face down
     turn_down
     # Update coordinates
     @y += 1
   end
end
#--------------------------------------------------------------------------
# ? Move left
#     turn_enabled : Flag that permits direction change on the spot
#--------------------------------------------------------------------------
def move_left(turn_enabled = true)
   # Face left
   if turn_enabled
     turn_left
   end
   # When possible to pass
   if passable?(@x, @y, Input::LEFT)
     # Face left
     turn_left
     # Update coordinates
     @x -= 1
   end
end
#--------------------------------------------------------------------------
# ? Move right
#     turn_enabled : Flag that permits direction change on the spot
#--------------------------------------------------------------------------
def move_right(turn_enabled = true)
   # Face right
   if turn_enabled
     turn_right
   end
   # When possible to pass
   if passable?(@x, @y, Input::RIGHT)
     # Face right
     turn_right
     # Update coordinates
     @x += 1
   end
end
#--------------------------------------------------------------------------
# ? Move up
#     turn_enabled : Flag that permits direction change on the spot
#--------------------------------------------------------------------------
def move_up(turn_enabled = true)
   # Face up
   if turn_enabled
     turn_up
   end
   # When possible to pass
   if passable?(@x, @y, Input::UP)
     # Face up
     turn_up
     # Update coordinates
     @y -= 1
   end
end
#--------------------------------------------------------------------------
# ? Move lower left
#--------------------------------------------------------------------------
def move_lower_left
   # When no direction fixation
   unless @direction_fix
     # Turn left when facing right, turn down when facing up
     @direction = (@direction == Input::RIGHT ? Input::LEFT : @direction == Input::UP ? Input::DOWN : @direction)
   end
   # When possible to move from down?left or from left?down
   if (passable?(@x, @y, Input::DOWN) and passable?(@x, @y + 1, Input::LEFT)) or
      (passable?(@x, @y, Input::LEFT) and passable?(@x - 1, @y, Input::DOWN))
     # Update coordinates
     @x -= 1
     @y += 1
   end
end
#--------------------------------------------------------------------------
# ? Move lower right
#--------------------------------------------------------------------------
def move_lower_right
   # When no direction fixation
   unless @direction_fix
     # Turn right when facing left, turn down when facing up
     @direction = (@direction == Input::LEFT ? Input::RIGHT : @direction == Input::UP ? Input::DOWN : @direction)
   end
   # When possible to move from down?right or from right?down
   if (passable?(@x, @y, Input::DOWN) and passable?(@x, @y + 1, Input::RIGHT)) or
      (passable?(@x, @y, Input::RIGHT) and passable?(@x + 1, @y, Input::DOWN))
     # Update coordinates
     @x += 1
     @y += 1
   end
end
#--------------------------------------------------------------------------
# ? move upper left
#--------------------------------------------------------------------------
def move_upper_left
   # When no direction fixation
   unless @direction_fix
     # Turn left when facing right, turn up when facing down
     @direction = (@direction == Input::RIGHT ? Input::LEFT : @direction == Input::DOWN ? Input::UP : @direction)
   end
   # When possible to move from up?left or from left?up
   if (passable?(@x, @y, Input::UP) and passable?(@x, @y - 1, Input::LEFT)) or
      (passable?(@x, @y, Input::LEFT) and passable?(@x - 1, @y, Input::UP))
     # Update coordinates
     @x -= 1
     @y -= 1
   end
end
#--------------------------------------------------------------------------
# ? move upper right
#--------------------------------------------------------------------------
def move_upper_right
   # When no direction fixation
   unless @direction_fix
     # Turn right when facing left, turn up when facing down
     @direction = (@direction == Input::LEFT ? Input::RIGHT : @direction == Input::DOWN ? Input::UP : @direction)
   end
   # When possible to move from up?right or from right?up
   if (passable?(@x, @y, Input::UP) and passable?(@x, @y - 1, Input::RIGHT)) or
      (passable?(@x, @y, Input::RIGHT) and passable?(@x + 1, @y, Input::UP))
     # Update coordinates
     @x += 1
     @y -= 1
   end
end
end

end
class Scene_Battle
  include Train_Actor::Scene_Map_Module
end



World Map script:


#==============================================================================
# ? World Map
#------------------------------------------------------------------------------
# ?Near Fantastica
#   19/12/04
#   Note: well not work unless you remove the @spriteset.dispose from the
#   transfer_player of the Scene_Map.
#   Script use 2 graphics: Characters/cursor.png and Tilesets/WorldMap.png
#==============================================================================

#==============================================================================
# Ericmor's instructions:
# The first map ever on your project (map001) will be the world map. Place the
# map as a tileset, and them place events where you want the arrow locator
# pointing - like, the city where the character is. The event only needs to
# be NAMED LIKE THE MAP NAME THAT IT WILL LOCATES. So, if you renamed map003
# to REALM OF GONDOR, you name an event in world map to REALM OF GONDOR.
#
# Won't work unless the VERY first map on the game isn't the world map.
# Map001 can't be defined by hand... or either create a new project, or try
# to pinpoint map001 identity by placing events with some map name on it.
# If you don't want to loose your first map, copy/paste it on the tree view
# on the left down corner menu in the editor.
# There's also an extra event on the original world map named: Temp Event
#
# How to activate: just write down the script call:
# World_Map.new
#==============================================================================

#==============================================================================
# ? Game_Map
#------------------------------------------------------------------------------
# ?Add defenision of the names to Game Map Class
#==============================================================================

class Game_Map
  #--------------------------------------------------------------------------
  # ? Refer setup to Game Map
  #--------------------------------------------------------------------------
  attr_accessor   :number_events
  alias game_map_setup setup
  #--------------------------------------------------------------------------
  # ? Loads Event names
  #--------------------------------------------------------------------------
  def setup(map_id)
    @name = {}
    @number_events = 0
    game_map_setup(map_id)
    for i in @map.events.keys
      @number_events = @number_events + 1
      @name[i] = @map.events[i].name
    end
  end
  #--------------------------------------------------------------------------
  # ? Displays Event names
  #--------------------------------------------------------------------------
  def event_name(event)
    @event_id = event
    @name[@event_id]
  end
  #--------------------------------------------------------------------------
  # ? Loads Map Names
  #--------------------------------------------------------------------------
  #Dubealex Addition (from XRXS) to show Map Name on screen
  def map_name
    $map_infos[@map_id]
  end
end

#==============================================================================
# ? Scene_Title
#------------------------------------------------------------------------------
# ?Add load map names and event names
#==============================================================================

class Scene_Title
  # active world map to false
  $world_map_active = false
  #Dubealex Addition (from XRXS) to show Map Name on screen
   $map_infos = load_data("Data/MapInfos.rxdata")
   for key in $map_infos.keys
     $map_infos[key] = $map_infos[key].name
   end
end

#==============================================================================
# ? Game_Character
#------------------------------------------------------------------------------
# ?Redefine the character_name to attr_accessor
#==============================================================================

class Game_Character
  attr_accessor   :character_name
end

#==============================================================================
# ? World_Map
#------------------------------------------------------------------------------
# ?Find players curent location on maps and displays it to world map
#==============================================================================

class World_Map
  #--------------------------------------------------------------------------
  # ? Object initialization
  #--------------------------------------------------------------------------
  def initialize
  $last_map_name = $game_map.map_name
  $restore_map_id = $game_map.map_id
  $restore_player_x = $game_player.x
  $restore_player_y = $game_player.y
  $restore_player_direction = $game_player.direction
  $game_player.transparent = true
  $game_map.setup(1)
   for i in 1...($game_map.number_events+1)
      if $game_map.event_name(i) == $last_map_name
        $game_map.events[i].character_name = "cursor"
        x = $game_map.events[i].x
        y = $game_map.events[i].y
        $game_temp.player_new_x = x
        $game_temp.player_new_y = y
        $game_temp.player_new_map_id = 1
        $game_temp.player_transferring = true
       
        $scene = Scene_World_Map.new
        $scene.transfer_player
      end
    end
  end
end

#==============================================================================
# ? Window_Location
#------------------------------------------------------------------------------
# ?display current loaction
#==============================================================================

class Window_Location < Window_Base
  #--------------------------------------------------------------------------
  # ? Object initialization
  #--------------------------------------------------------------------------
  def initialize
    super(10, 10, 160, 96)
    self.contents = Bitmap.new(width - 32, height - 32)
    #--------------------------------------------------------------------------
    #Ericmor's note: the next two lines are Near fantastica's font control.
    #those font control's doesn't exist in standard RPGMAKER. Don't
    #uncomment it, unless you know WHAT YOU ARE DOING!
    #--------------------------------------------------------------------------
    #self.contents.font.name = $defaultfonttype  # "Number of Steps" window font
    #self.contents.font.size = $defaultfontsize
    refresh
  end
  #--------------------------------------------------------------------------
  # ? Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    self.contents.font.color = system_color
    self.contents.draw_text(4, 0, 120, 32, "Localização:")
    self.contents.font.color = normal_color
    self.contents.draw_text(4, 32, 120, 32, $last_map_name.to_s, 2)
  end
end

#==============================================================================
# ? Scene_World_Map
#------------------------------------------------------------------------------
# ?It is the class which processes the World Map picture
#==============================================================================

class Scene_World_Map
  #--------------------------------------------------------------------------
  # ? Main processing
  #--------------------------------------------------------------------------
  def main
    # Drawing up sprite set
    @spriteset = Spriteset_Map.new
    # Drawing up loaction window
    @location_window = Window_Location.new
    @location_window.opacity = 125
    # Transition execution
    Graphics.transition
    # Main loop
    loop do
      # Renewing the game picture
      Graphics.update
      # Updating the information of input
      Input.update
      # Frame renewal
      update
      # When the picture changes, discontinuing the loop
      if $scene != self
        break
      end
    end
    # Transition preparation
    Graphics.freeze
    # ???????????
    #@spriteset.dispose
    # Releasing the location window
    @location_window.dispose
    # When it changes to the title picture and it is in
    if $scene.is_a?(Scene_Title)
      # Fading out picture
      Graphics.transition
      Graphics.freeze
    end
  end
  #--------------------------------------------------------------------------
  # ? Frame renewal
  #--------------------------------------------------------------------------
  def update
    # Loop
    loop do
      #The map, in order of the interpreter and the player renewal (as for this renewal order,
      #when the condition for executing the event is satisfied, in the reason such that the opportunity
      #which instant is moved if the player is not given the importance)
      $game_map.update
      $game_system.map_interpreter.update
      $game_player.update
      # The system (the timer), renewing the picture
      $game_system.update
      $game_screen.update
      # If it is not the place on the move of the prayer, discontinuing the loop
      unless $game_temp.player_transferring
        break
      end
      # Executing place movement
      transfer_player
      # When it is in the midst of transition processing, discontinuing the loop
      if $game_temp.transition_processing
        break
      end
    end
    # Renewing sprite set
    @spriteset.update
    # When it is in the midst of transition processing,
    if $game_temp.transition_processing
      #During transition processing clearing the flag
      $game_temp.transition_processing = false
      #Transition execution
      if $game_temp.transition_name == ""
        Graphics.transition(20)
      else
        Graphics.transition(40, "Graphics/Transitions/" +
          $game_temp.transition_name)
      end
    end
    # The B when button is pushed
    if Input.trigger?(Input::B)
      $world_map_active = false
      $game_temp.player_new_map_id = $restore_map_id
      $game_temp.player_new_x = $restore_player_x
      $game_temp.player_new_y = $restore_player_y
      $game_temp.player_new_direction = $restore_player_direction
      $game_temp.player_transferring = true
      $scene = Scene_Map.new
      $scene.transfer_player
      $game_player.transparent = false
    end
  end
  #--------------------------------------------------------------------------
  # ? Place movement of player
  #--------------------------------------------------------------------------
  def transfer_player
    # Clearing the prayer place portable flag
    $game_temp.player_transferring = false
    # When the tip of moving differs from the present map,
    if $game_map.map_id != $game_temp.player_new_map_id
      # Setting up the new map
      $game_map.setup($game_temp.player_new_map_id)
    end
    # Setting the position of the prayer
    $game_player.moveto($game_temp.player_new_x, $game_temp.player_new_y)
    # Setting the direction of the prayer
    case $game_temp.player_new_direction
    when 2  # 2
      $game_player.turn_down
    when 4  # 4
      $game_player.turn_left
    when 6  # 6
      $game_player.turn_right
    when 8  # 8
      $game_player.turn_up
    end
    # Reforming the attitude of the prayer
    $game_player.straighten
    # Map renewal (parallel event execution)
    $game_map.update
    # Rewriting sprite set
    @spriteset = Spriteset_Map.new
    # When it is in the midst of transition processing,
    if $game_temp.transition_processing
      # During transition processing clearing the flag
      $game_temp.transition_processing = false
      # Transition execution
      Graphics.transition(20)
    end
    # Executing the automatic operation change of BGM and BGS which are set to the map
    $game_map.autoplay
    # Frame reset
    Graphics.frame_reset
    # Updating the information of input
    Input.update
  end
end

I need some real WORKING AVI script in RMXP!
3D ANIMATIONS:
http://www.youtube.com/profile?user=Ericmor
3D and 2D anime ART:
http://ericmor.deviantart.com/gallery/

Ericmor

I need some real WORKING AVI script in RMXP!
3D ANIMATIONS:
http://www.youtube.com/profile?user=Ericmor
3D and 2D anime ART:
http://ericmor.deviantart.com/gallery/