diff --git a/src/client/render/gl/passes/BarPass.ts b/src/client/render/gl/passes/BarPass.ts index 7e1de3800..159e6b911 100644 --- a/src/client/render/gl/passes/BarPass.ts +++ b/src/client/render/gl/passes/BarPass.ts @@ -138,6 +138,7 @@ export class BarPass { // --- Progress bars (structures) --- for (const unit of structures.values()) { + if (!unit.isActive) continue; const progress = this.computeStructureProgress(unit, gameTick); if (progress !== null) this.pushProgress(unit, progress); } diff --git a/src/client/render/gl/passes/StructureLevelPass.ts b/src/client/render/gl/passes/StructureLevelPass.ts index a727e31e9..b20e41b95 100644 --- a/src/client/render/gl/passes/StructureLevelPass.ts +++ b/src/client/render/gl/passes/StructureLevelPass.ts @@ -230,6 +230,7 @@ export class StructureLevelPass { let count = 0; for (const unit of units.values()) { + if (!unit.isActive) continue; if (!STRUCTURE_TYPES.has(unit.unitType)) continue; if (unit.level <= 1) continue; diff --git a/src/client/render/gl/passes/StructurePass.ts b/src/client/render/gl/passes/StructurePass.ts index 42f153143..4ea70a3ab 100644 --- a/src/client/render/gl/passes/StructurePass.ts +++ b/src/client/render/gl/passes/StructurePass.ts @@ -264,6 +264,7 @@ export class StructurePass { let count = 0; for (const unit of units.values()) { + if (!unit.isActive) continue; const atlasIdx = this.typeToAtlasCol.get(unit.unitType); if (atlasIdx === undefined) continue; diff --git a/src/core/execution/MissileSiloExecution.ts b/src/core/execution/MissileSiloExecution.ts index a94727eab..4eb41883f 100644 --- a/src/core/execution/MissileSiloExecution.ts +++ b/src/core/execution/MissileSiloExecution.ts @@ -18,6 +18,11 @@ export class MissileSiloExecution implements Execution { return; } + if (!this.silo.isActive()) { + this.active = false; + return; + } + // frontTime is the time the earliest missile fired. const frontTime = this.silo.missileTimerQueue()[0]; if (frontTime === undefined) {