diff --git a/server/gameserver/player.cc b/server/gameserver/player.cc index a8d2385..ff48cfb 100644 --- a/server/gameserver/player.cc +++ b/server/gameserver/player.cc @@ -1104,10 +1104,12 @@ void Player::_CMRevive(f8::MsgHdr& hdr, const cs::CMRevive& msg) void Player::_CMCancelRevive(f8::MsgHdr& hdr, const cs::CMCancelRevive& msg) { - if (dead && !real_dead) { + if (dead && revive_timer && !real_dead) { dead = true; real_dead = true; downed = false; OnDie(); + room->xtimer.DeleteTimer(revive_timer); + revive_timer = nullptr; } }