I dont have much time at the moment, but i noted a few errors in the Pictures.
Item List Picture:
Occasion: Only from Menu, this would not work in Battle.
Calling Bank Chest Picture:
You dont need to remove the Item, the Item removed itself, because its consumable.
Edit: Found a possible theoretical solution which works on all maps.
Delete Set Eventlocation also!
Also if several Eventpages meet there Conditions, only the highest pagenumber meeting conditions will be executed.
So your Event39 will always have its second Eventpage turned On, or non at all, so the 1st Page never runs.
It looks like you fixed that in your second attempt.
So if Event 42 is the Event for chest on every map, than the common event should not turn on a global switch, but the self switch of event42 on the current map, else it would be On on every Map. So remove the Switch in Common Event and in Event 42 change Page condition to Self SwitchA. (Sorry much text and my english isnt always good for explaining)
To turn Self Switch On in Common Event for Event42 on current Map, you need to insert this as Event Scriptcommand:
Code:
$gameSelfSwitches.setValue([$gameMap.mapId(), 42, 'A'], true)
If you wonder how we set the Chest Event on Position? Now comes the Magic =), we use the Autonomous Moveroute of Event42,
turn Frequency to Highest , than enter the moveroute: no repeat, and as scriptcode command you insert:
Code:
$gameMap.events()[ this._eventId - 1 ].setPosition( $gameVariables.value(35), $gameVariables.value(36) );
It uses the variable 35 and 36 for x and y, since those values dont change and since the moveroute reexecutes when map is reentered, this makes that the chest stays on place, even if you change the map.
I did not rebuild it, but it should work. Your Pictures were very Helpful.
Edit: Oh no Murphys Law, a theoretical bug appeared =).
The moveroute of the chest would have trouble setting the chest on position if its far outside of visible screen, when map is reentered.
To fix this we need one more Event on every map. It also needs the same id on every map.
1. Common Event Activates Self Switch A of new Event.
2. New Event lets call it "PositionLoader" is on paralell, it sets the Chest Event on Location with Eventcommand Moveroute. Than it turns the Self Switch A of Chest On. Than it uses Eventcommand Erase Event. Thatway its erased until map is reentered.
3.Chest Event, we delete the autonomous moveroute. When we pick up the chest, make sure to deactivate self switch A of "PositionLoader" and self switch A of Chest.
Sorry for this confusion but now it also works on very huge maps.
I often seem to run into errors after i completed something. My apologies.