From 0f45999d7208f9288e6b38b6286a3f2a37e7c3dc Mon Sep 17 00:00:00 2001 From: aura Date: Sun, 26 Apr 2026 21:30:30 +0200 Subject: aa --- source/sourcemod/scripting/gokz-core/misc.sp | 19 +++++++++++-------- source/sourcemod/scripting/gokz-core/teleports.sp | 16 ++++++++++++++++ 2 files changed, 27 insertions(+), 8 deletions(-) (limited to 'source/sourcemod/scripting/gokz-core') diff --git a/source/sourcemod/scripting/gokz-core/misc.sp b/source/sourcemod/scripting/gokz-core/misc.sp index ae44a1d..6c322e9 100644 --- a/source/sourcemod/scripting/gokz-core/misc.sp +++ b/source/sourcemod/scripting/gokz-core/misc.sp @@ -208,7 +208,10 @@ void OnPlayerRunCmd_Turnbinds(int client, int buttons, int tickcount, float angl void OnPlayerSpawn_PlayerCollision(int client) { // Let players go through other players - // SetEntProp(client, Prop_Send, "m_CollisionGroup", GOKZ_COLLISION_GROUP_STANDARD); + + int warmup = GameRules_GetProp( "m_bWarmupPeriod" ); + if( warmup ) + SetEntProp(client, Prop_Send, "m_CollisionGroup", GOKZ_COLLISION_GROUP_STANDARD); } void OnSetModel_PlayerCollision(int client) @@ -348,13 +351,13 @@ void JoinTeam(int client, int newTeam, bool restorePos, bool forceBroadcast = fa player.StopTimer(); // Just joining a team alone can put you into weird invalid spawns. // Need to teleport the player to a valid one. - float spawnOrigin[3]; - float spawnAngles[3]; - if (newTeam == CS_TEAM_CT) - GetValidSpawnCT(spawnOrigin, spawnAngles); - else - GetValidSpawnT(spawnOrigin, spawnAngles); - TeleportPlayer(client, spawnOrigin, spawnAngles); + // float spawnOrigin[3]; + // float spawnAngles[3]; + // if (newTeam == CS_TEAM_CT) + // GetValidSpawnCT(spawnOrigin, spawnAngles); + // else + // GetValidSpawnT(spawnOrigin, spawnAngles); + // TeleportPlayer(client, spawnOrigin, spawnAngles); } hasSavedPosition[client] = false; Call_GOKZ_OnJoinTeam(client, newTeam); diff --git a/source/sourcemod/scripting/gokz-core/teleports.sp b/source/sourcemod/scripting/gokz-core/teleports.sp index 764fc6e..499a198 100644 --- a/source/sourcemod/scripting/gokz-core/teleports.sp +++ b/source/sourcemod/scripting/gokz-core/teleports.sp @@ -258,6 +258,15 @@ void TeleportToCheckpoint(int client) bool CanTeleportToCheckpoint(int client, bool showError = false) { + int warmup = GameRules_GetProp( "m_bWarmupPeriod" ); + if( !warmup ) { + if( showError ) { + GOKZ_PrintToChat(client, true, "%s", "Teleporting is only allowed during warmup"); + GOKZ_PlayErrorSound(client); + } + return false; + } + // Safeguard Check if (GOKZ_GetCoreOption(client, Option_Safeguard) == Safeguard_EnabledPRO && GOKZ_GetTimerRunning(client) && GOKZ_GetValidTimer(client) && GOKZ_GetTeleportCount(client) == 0) { @@ -399,6 +408,13 @@ bool CanNextCheckpoint(int client, bool showError = false) bool CanTeleportToStart(int client, bool showError = false) { + int warmup = GameRules_GetProp( "m_bWarmupPeriod" ); + if( !warmup ) { + GOKZ_PrintToChat(client, true, "%s", "Teleporting is only allowed during warmup"); + GOKZ_PlayErrorSound(client); + return false; + } + // Safeguard Check if (GOKZ_GetCoreOption(client, Option_Safeguard) > Safeguard_Disabled && GOKZ_GetTimerRunning(client) && GOKZ_GetValidTimer(client)) { -- cgit v1.2.3