I think I've done this before, but I can't for the life of me remember how. I'm using RPG Maker XP, and maybe it's a little different than the older ones, or maybe I'm just amnesiac.
I'm trying to figure out how to make it so that when I push a boulder from quite some distance onto a specific square, a switch is turned on and the boulder is rendered immobile. The way I have it set up now makes it so that, for some reason, I can push the boulder once more after it hits that space, and THEN the switch goes on.
There's probably an easy answer for this one, but I just can't find it.
Well without knowing exactly what your code is I can't say for sure what's wrong. I suggest you make the place the boulder must be moved on a place that the boulder can only be pushed to from a certain square and couldn't be pushed any other way once there (a short 1 square wide pathway).
Set a variable equal to the "switch" X location
Set a variable equal to the "switch" Y location
After you push the boulder (same event):
Set a variable equal to Boulder's X tile
Set a variable equal to Boulder's Y tile
Branch if BoulderX is equal to SwitchX
____Branch if BoulderY is equal to SwitchY
_______Set switch [xxxx:AwesomeSwitch] ON
____:End
:End
Your AwesomeSwitch could open a door and render the boulder unmovable, among other things