05-16-2021, 02:39 AM
The save/load system assumes that you are resuming a game into the map. That is, it would switch from the Scene_Load class and move into Scene_Map.
In Scene_Load, there is a method called 'on_decision' which actively opens the chosen game file, opens it, and then goes to the map. But that it needed to read the file first may be the key. If the file opened indicated that the save was during battle.... that may be one of the keys.
Within Game_Temp, there is a flag called 'in_battle', which turns on/off some features in-game, such as removing weapons and armor from the item list so you don't have weapons to click in battle. If such a flag could be added to the 'Game_System' class, that could be helpful, basically duplicating the condition of the Game_Temp 'in_battle' flag. With that, you could have if $game_system.in_battle (RUN BATTLE).... if you get the drift.
However, when you enter battle, systems reset. So the issue would be a rework of the 'main' class of Scene_Battle to allow loading. Scene_Map's main method doesn't load fun stuff like events, event flags, but instead this being Game_Map and game variables and switches reloaded. Scene_Battle loads/resets values like turns and the enemies when started. So that needs to be handled too, likely as a rewrite of the main class.
In Scene_Load, there is a method called 'on_decision' which actively opens the chosen game file, opens it, and then goes to the map. But that it needed to read the file first may be the key. If the file opened indicated that the save was during battle.... that may be one of the keys.
Within Game_Temp, there is a flag called 'in_battle', which turns on/off some features in-game, such as removing weapons and armor from the item list so you don't have weapons to click in battle. If such a flag could be added to the 'Game_System' class, that could be helpful, basically duplicating the condition of the Game_Temp 'in_battle' flag. With that, you could have if $game_system.in_battle (RUN BATTLE).... if you get the drift.
However, when you enter battle, systems reset. So the issue would be a rework of the 'main' class of Scene_Battle to allow loading. Scene_Map's main method doesn't load fun stuff like events, event flags, but instead this being Game_Map and game variables and switches reloaded. Scene_Battle loads/resets values like turns and the enemies when started. So that needs to be handled too, likely as a rewrite of the main class.