From 27b9a095f7b6bd8d1c02eef80afee35ab53f7d94 Mon Sep 17 00:00:00 2001 From: "Robin C. Ladiges" Date: Fri, 23 Jun 2023 04:18:41 +0200 Subject: [PATCH] fix: mark player as not a seeker when H&S is disabled If a player is a seeker and then disables H&S, they should no longer be considered as a seeker by other players. (Because staying as a seeker will kill hiders when touching them). --- source/server/Client.cpp | 2 +- source/server/hns/HideAndSeekMode.cpp | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/source/server/Client.cpp b/source/server/Client.cpp index 4457ef0..c047fdd 100644 --- a/source/server/Client.cpp +++ b/source/server/Client.cpp @@ -622,7 +622,7 @@ void Client::sendTagInfPacket() { packet->mUserID = sInstance->mUserID; - packet->isIt = hsMode->isPlayerIt(); + packet->isIt = hsMode->isPlayerIt() && hsMode->isModeActive(); packet->minutes = curInfo->mHidingTime.mMinutes; packet->seconds = curInfo->mHidingTime.mSeconds; diff --git a/source/server/hns/HideAndSeekMode.cpp b/source/server/hns/HideAndSeekMode.cpp index 65e97c0..9efbdaf 100644 --- a/source/server/hns/HideAndSeekMode.cpp +++ b/source/server/hns/HideAndSeekMode.cpp @@ -84,6 +84,8 @@ void HideAndSeekMode::begin() { playGuideLyt->end(); GameModeBase::begin(); + + Client::sendTagInfPacket(); } void HideAndSeekMode::end() { @@ -109,6 +111,8 @@ void HideAndSeekMode::end() { playGuideLyt->appear(); GameModeBase::end(); + + Client::sendTagInfPacket(); } void HideAndSeekMode::update() {