diff --git a/src/server/cstrike/func_hostage_rescue.cpp b/src/server/cstrike/func_hostage_rescue.cpp index 75f17e89..02c8fd9b 100644 --- a/src/server/cstrike/func_hostage_rescue.cpp +++ b/src/server/cstrike/func_hostage_rescue.cpp @@ -55,6 +55,9 @@ func_hostage_rescue::touch(void) return; } + if (!((player)hosty.m_eFollowing)) + return; + Radio_BroadcastMessage(RADIO_RESCUED); g_cs_hostagesrescued++; diff --git a/src/server/cstrike/gamerules_multiplayer.cpp b/src/server/cstrike/gamerules_multiplayer.cpp index 98edc432..c5bdca30 100644 --- a/src/server/cstrike/gamerules_multiplayer.cpp +++ b/src/server/cstrike/gamerules_multiplayer.cpp @@ -149,9 +149,7 @@ CSMultiplayerRules::CreateRescueZones(void) /* count the already existing rescue zones. */ for (entity e = world; (e = find(e, ::classname, "func_hostage_rescue"));) { - if (e.team == TEAM_CT) { - zones++; - } + zones++; } /* we don't need to create any additional rescue zones. */ diff --git a/src/server/cstrike/info_hostage_rescue.cpp b/src/server/cstrike/info_hostage_rescue.cpp index 834cb432..01c0edba 100644 --- a/src/server/cstrike/info_hostage_rescue.cpp +++ b/src/server/cstrike/info_hostage_rescue.cpp @@ -54,6 +54,10 @@ info_hostage_rescue::touch(void) return; } + /* some custom maps are very smart... */ + if (!((player)hosty.m_eFollowing)) + return; + Radio_BroadcastMessage(RADIO_RESCUED); g_cs_hostagesrescued++;