File tree Expand file tree Collapse file tree 1 file changed +8
-4
lines changed
Expand file tree Collapse file tree 1 file changed +8
-4
lines changed Original file line number Diff line number Diff line change @@ -241,16 +241,20 @@ void Game_Map::SetupFromSave(
241241
242242 if (is_map_save_compat) {
243243 std::vector<int > destroyed_event_ids;
244- for (size_t i = 0 , j = 0 ; i < events.size ();++i) {
244+
245+ for (size_t i = 0 , j = 0 ; i < events.size () && j < map_info.events .size (); ++i) {
245246 auto & ev = events[i];
246247 auto & save_ev = map_info.events [j];
247248 if (ev.GetId () == save_ev.ID ) {
248249 ev.SetSaveData (save_ev);
249250 ++j;
250251 } else {
251- assert (save_ev.ID > ev.GetId ());
252- // assume that the event has been destroyed during gameplay via "DestroyMapEvent"
253- destroyed_event_ids.emplace_back (ev.GetId ());
252+ if (save_ev.ID > ev.GetId ()) {
253+ // assume that the event has been destroyed during gameplay via "DestroyMapEvent"
254+ destroyed_event_ids.emplace_back (ev.GetId ());
255+ } else {
256+ Output::Debug (" SetupFromSave: Unexpected ID {}/{}" , save_ev.ID , ev.GetId ());
257+ }
254258 }
255259 }
256260 for (size_t i = 0 ; i < destroyed_event_ids.size (); ++i) {
You can’t perform that action at this time.
0 commit comments