diff --git a/server/gameserver/incubator.cc b/server/gameserver/incubator.cc index ead84fff..50aa96fd 100644 --- a/server/gameserver/incubator.cc +++ b/server/gameserver/incubator.cc @@ -404,10 +404,12 @@ void Incubator::NextWave() int acc_time = 0; { xtimer_list* timer = wave_timers_[room->pve_data.GetWave()]; - int remain_time = room->xtimer.GetRemainTime(timer); - room->xtimer.ModifyTimer - (timer, room->pve_mode_meta->pb->wave_prepare_time() * SERVER_FRAME_RATE); - acc_time = remain_time; + if (timer) { + int remain_time = room->xtimer.GetRemainTime(timer); + room->xtimer.ModifyTimer + (timer, room->pve_mode_meta->pb->wave_prepare_time() * SERVER_FRAME_RATE); + acc_time = remain_time; + } } acc_time -= room->pve_mode_meta->pb->wave_prepare_time() * SERVER_FRAME_RATE; for (int i = room->pve_data.GetWave() + 1; i < wave_timers_.size(); ++i) {