diff --git a/assets/script/game/map/MissionComp.ts b/assets/script/game/map/MissionComp.ts index 6db07d01..dd632cb3 100644 --- a/assets/script/game/map/MissionComp.ts +++ b/assets/script/game/map/MissionComp.ts @@ -432,7 +432,9 @@ export class MissionComp extends CCComp { } // 重置状态机的计时器 - this.PhaseTime.reset(); + if (this.PhaseTime) { + this.PhaseTime.reset(); + } switch (targetPhase) { case MissionPhase.PrepareStart: @@ -704,6 +706,9 @@ export class MissionComp extends CCComp { * - 性能监控基准值 */ data_init(){ + if (!this.PhaseTime) { + this.PhaseTime = new Timer(1); + } smc.mission.play = true; smc.mission.pause = false; smc.mission.stop_mon_action = false; @@ -1053,6 +1058,9 @@ export class MissionComp extends CCComp { /** ECS 组件移除时销毁节点 */ reset() { - this.node.destroy(); + this.PhaseTime = null as any; + if (this.node && this.node.isValid) { + this.node.destroy(); + } } }