mirror of
https://github.com/soarqin/DSP_Mods.git
synced 2025-12-08 21:33:28 +08:00
crash fix
This commit is contained in:
@@ -143,6 +143,7 @@ public static class PlanetFunctions
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var planetId = planet.id;
|
||||||
var gameScenario = GameMain.gameScenario;
|
var gameScenario = GameMain.gameScenario;
|
||||||
if (gameScenario != null)
|
if (gameScenario != null)
|
||||||
{
|
{
|
||||||
@@ -153,8 +154,8 @@ public static class PlanetFunctions
|
|||||||
{
|
{
|
||||||
if (pgc.id <= 0) continue;
|
if (pgc.id <= 0) continue;
|
||||||
int protoId = factory.entityPool[pgc.entityId].protoId;
|
int protoId = factory.entityPool[pgc.entityId].protoId;
|
||||||
gameScenario.achievementLogic.NotifyBeforeDismantleEntity(planet.id, protoId, pgc.entityId);
|
gameScenario.achievementLogic.NotifyBeforeDismantleEntity(planetId, protoId, pgc.entityId);
|
||||||
gameScenario.NotifyOnDismantleEntity(planet.id, protoId, pgc.entityId);
|
gameScenario.NotifyOnDismantleEntity(planetId, protoId, pgc.entityId);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -168,10 +169,22 @@ public static class PlanetFunctions
|
|||||||
var index = factory.index;
|
var index = factory.index;
|
||||||
var warningSystem = GameMain.data.warningSystem;
|
var warningSystem = GameMain.data.warningSystem;
|
||||||
var warningPool = warningSystem.warningPool;
|
var warningPool = warningSystem.warningPool;
|
||||||
for (var i = warningSystem.warningCursor - 1; i > 0; i--)
|
for (var i = warningSystem.warningCursor - 1; i >= 0; i--)
|
||||||
{
|
{
|
||||||
if (warningPool[i].id == i && warningPool[i].factoryId == index)
|
ref var warning = ref warningPool[i];
|
||||||
warningSystem.RemoveWarningData(warningPool[i].id);
|
if (warning.id != i) continue;
|
||||||
|
switch (warning.factoryId) {
|
||||||
|
case -4:
|
||||||
|
if (warning.astroId == planetId)
|
||||||
|
warningSystem.RemoveWarningData(i);
|
||||||
|
break;
|
||||||
|
case >= 0:
|
||||||
|
if (warning.factoryId == index)
|
||||||
|
warningSystem.RemoveWarningData(i);
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
var isCombatMode = factory.gameData.gameDesc.isCombatMode;
|
var isCombatMode = factory.gameData.gameDesc.isCombatMode;
|
||||||
factory.entityCursor = 1;
|
factory.entityCursor = 1;
|
||||||
|
|||||||
Reference in New Issue
Block a user