How to make savepoint load by location variable WITHIN the savepoint

(It's honestly able to be done with any Rpg Maker, I just used this one)

Normally, savepoints come in two varieties:
-A floating crystal or diary or something that is action-based and opens a save menu
-A pad, where you step on that enables saving, with spots around it in four directions that disable saving.

What if I told you that a single two-page local event (and page 1 is optional) can take out all switches or need for additional local events, and even better, the location doesn't need to be changed each time, just copy/paste the local event?

Alright, so here's what you do.

(You can make this conditional, if there are places that don't save, just add Saving ON as a trigger to page 1 and 2)

Page 1 (Touch)
<>Flash 0.1 Sec
(Not really necessary, and it won't shut off until you leave the platform)
<>Full Heal
<>End Event Processing
(This is not here for the normal reason, it exits to page 2)

Page 2 (Parallel)
<>Variable CurrentX, Hero X
<>Variable CurrentY, Hero Y
<>Variable SavepointX, ThisEvent X
<>Variable SavepointY, ThisEvent Y
(Essentially, this checks your location and saves the location of ThisEvent)

<>Condition: CurrentX Not SavepointX
<>Forbid Save
<>Condition: CurrentY Not SavepointY
<>Forbid Save

<>Condition: CurrentX Not SavepointX
<>Condition: CurrentY Not SavepointY
<>Allow Save
<>Common Event: Map Event - ThisEvent (Page 1)
<> End Event Processing

Essentially, when happens is that while off the savepoint, saving is disabled. While on the savepoint, the screen glows and you fully restore, as well as allowing saving.

You can also merge this to one page. Just replace the common event with the first page stuff.

I'm not exactly sure about the finer points (like making it only flash once). But I suppose you could do this with switches and shut the switch off when you step off the savepoint.

Anyway, I tested this and it seems to work.