Event that go throught player but collide with everything else

DarielZer0

Villager
Member
Joined
Oct 16, 2021
Messages
27
Reaction score
8
First Language
Spanish
Primarily Uses
RMMV
i want to make a event that collide with other events and walls but go throught the player. it's possible?
 

Soulrender

Jack Of All Trades
Veteran
Joined
Jan 12, 2019
Messages
1,401
Reaction score
852
First Language
Poland
Primarily Uses
RMMV
Yes. It's possible, but there are two major questions before implementing such feature:

#1 Does player can interact with that event later?
#2 Are there more than 1 such events on map?

If there is only one event you want to apply then you need to create an empty parallel event on map and in Script... option paste this code:
Code:
this._px = $gamePlayer._x; //Get X position of player
this._py = $gamePlayer._y; //Get Y position of player
this._ex = $gameMap.event(eventId).x; //Get X of your specific Event
this._ey = $gameMap.event(eventId).y; //Get Y of your specific Event

then in event you need to use Conditional branch and in 4th tab select Script and type:
Code:
$gameMap.distance(this._px, this._py, this._ex, this._ey) <= 1
Remember to check option Create Else Branch and below Script type:
Code:
$gameMap.event(eventId)._through = true;
and finally below Else type
Code:
$gameMap.event(eventId)._through = false;

Remeber to keep this event parallel otherwise it won't trigger.

Whole empty event should look like this:
xO3LjHt.png


(in place of number 99 and eventId you put ID of your event you want to make it through player, but collide with everything else.
 
Last edited:

DarielZer0

Villager
Member
Joined
Oct 16, 2021
Messages
27
Reaction score
8
First Language
Spanish
Primarily Uses
RMMV
Yes. It's possible, but there are two major questions before implementing such feature:

#1 Does player can interact with that event later?
#2 Are there more than 1 such events on map?

If there is only one event you want to apply then you need to create an empty parallel event on map and in Script... option paste this code:
Code:
this._px = $gamePlayer._x; //Get X position of player
this._py = $gamePlayer._y; //Get Y position of player
this._ex = $gameMap.event(eventId).x; //Get X of your specific Event
this._ey = $gameMap.event(eventId).y; //Get Y of your specific Event

then in event you need to use Conditional branch and in 4th tab select Script and type:
Code:
$gameMap.distance(this._px, this._py, this._ex, this._ey) <= 1
Remember to check option Create Else Branch and below Script type:
Code:
$gameMap.event(eventId)._through = true;
and finally below Else type
Code:
$gameMap.event(eventId)._through = false;

Remeber to keep this event parallel otherwise it won't trigger.

Whole empty event should look like this:
xO3LjHt.png


(in place of number 99 and eventId you put ID of your event you want to make it through player, but collide with everything else.
i already did something similar to this,only that i did it with variables but the result is almost the same,when i am 1 grid of distance the event go through everything and since it moves in ramdom directions sometimes it get stuck in a wall or another event,and also there are multiple events of this kind in the map
 

Latest Threads

Latest Profile Posts

Awright ya marshmallows! :kaopride: Here's a peek of what Alice's 8-bit Gothic gonna be like! EXPECT IT! (...in 2025?) :kaoswt:

alice_gothictiles.png
SF_People3_4 added!
index.php

Finds notes for an old side project... Oh, that's right, the two tracks that sounded really cool and gave inspiration for the big bad in that game... Spends day working on cutscene from old notes, looks okay, now lets slot in the first track... um... I did have those tracks??? It was a year or so ago but I did buy them didn't I?
CA9mtHJ.gif

Everything is really confusing for me

Forum statistics

Threads
118,592
Messages
1,117,163
Members
155,658
Latest member
CarloFourQuattro
Top