Premise:
How can I change the map but keeping the events as is?
Answer:
Easy, just use create a map with identical events then use a transfer player.
Problem:
But then you're not keeping the events as is. It just the event that looks identical in a different map. It creates a future problem like referencing the event or cross-checking if both events in a different map are the same. i.e, you modify one, you modify another. Or whatever problem may arise.
Well, look no further!
Scriptlet you need.
Code:
- class Game_Map
- def change_data(map_id)
- @map.data = load_data(sprintf("Data/Map%03d.rvdata2", map_id)).data
- end
- end
复制代码
Demonstration:
Let's create two identical maps.
One map contains event, another map doesn't but looks different.
In the Ralph event at map 1, it looked like this.
If you wonder what is this, it's basically
evented transition effect.
In the end, how does it look like?
It looks like this.
The Ralph event is preserved, but the map data is changed. Technically, you're still in the map ID 1, but the data is changed.
Do note that the map data is not saved. So if you re-enter the map, it will go back to the default.
Closing
I'm not sure how useful is this. But it's a trick that I think definitely worth sharing. And no, you don't need to credit me for that small snippet.
本贴来自国际rpgmaker官方论坛作者:TheoAllen处,因国际论坛即将永久关站,为了存档多年珍贵资料,署名转载到本论坛存档,由于官方帖子为英文原帖,需要中文翻译请点击论坛顶部切换语言为中文就可以将帖子翻译成中文浏览,方便大家随时查看,原文地址:
https://forums.rpgmakerweb.com/threads/ace-change-map-data-without-transfer-player.106143/