Engr. Adiktuzmiko

Chemical Engineer, Game Developer, Using BlinkBoy'
Veteran
Joined
May 15, 2012
Messages
14,682
Reaction score
3,005
First Language
Tagalog
Primarily Uses
RMVXA
Overview

Well, normally you cannot move events in between tiles, and this snippet gives you the power to do so via a simple script call.

Take note though that this is suggested to only be used for decorative events and those that run autorun/parallel as this might cause activation bug if used on events triggered by Action button and touch events.

Script

=beginHow to use:simply make a script call in an event,preferable parallel so it runs beforeyou see the map, then just erase itevent_move_ex(id,x,y)-> id = Event ID-> x = Map X (can have decimals)-> y = Map Y (can have decimals)=endclass Game_Interpreter def event_move_ex(id,x,y) $game_map.events[id].movetox(x,y) endendclass Game_Event def movetox(x, y) @x = x @y = y @real_x = @x @real_y = @y @prelock_direction = 0 straighten update_bush_depth endend
Terms

Free for anything, it's a really simple snippet
 

Mithran

Global Moderators
Global Mod
Joined
Mar 2, 2012
Messages
404
Reaction score
217
First Language
English
Primarily Uses
Keep in mind that moving events to decimal coordinates like this will make them 'stick' at those decimal coordinates until specifically moved off of them, they will not be able to collide with anything other than things at their same decimal level. Simply using the default character.moveto command has this same behavior, and will also take decimals. If you wanted this command to immediately move the event onto the nearest logical tile so it can still be interacted with, you need to round the @x and @y coordinates in your command, passing the decimals only into real_x and real_y.
 

tale

Volunteer
Veteran
Joined
Dec 16, 2016
Messages
816
Reaction score
1,422
First Language
English
Primarily Uses
N/A
Fixed script format, credit Adiktuzmiko.
Code:
=begin
How to use:
simply make a script call in an event,
preferable parallel so it runs before
you see the map, then just erase it
event_move_ex(id,x,y)
-> id = Event ID-> x = Map X (can have decimals)-> y = Map Y (can have decimals)
=end
class Game_Interpreter
  def event_move_ex(id,x,y)
    $game_map.events[id].movetox(x,y)
  end
end
class Game_Event
  def movetox(x, y)
    @x = x
    @y = y
    @real_x = @x
    @real_y = @y
    @prelock_direction = 0
    straighten
    update_bush_depth
end
end
 

Latest Threads

Latest Posts

Latest Profile Posts

I'm off to search the master script list for my skill issue. HOORAY! FUN!
Fun fact: Digimon is an isekai :kaoswt2:
The problem with being a perfectionist is that you are never done with something.
Our Lore Wizard, Buttercup, just emailed me a draft of one of our in-game lore books, and it's one of my favorites so far. Her books are really bringing a vibrant history to Evergloom!

I've posted it under a spoiler tag called 'A study in 43rd Century Poetry' in our development thread!
Whoops, the corner of my map is as big as GALV's whole demo map xD
wops.PNG

Forum statistics

Threads
112,325
Messages
1,067,366
Members
145,954
Latest member
dfasdfasdfasdfasdf
Top