From a91bf8257013971c291dd22e9ca2b089c1f7c624 Mon Sep 17 00:00:00 2001 From: Jackz Date: Sat, 23 Jan 2021 15:38:43 -0600 Subject: [PATCH] extraplayeritems: Detect end saferoom more reliabily --- plugins/l4d2_extraplayeritems.smx | Bin 8892 -> 9095 bytes scripting/l4d2_extraplayeritems.sp | 43 ++++++++++++----------------- 2 files changed, 18 insertions(+), 25 deletions(-) diff --git a/plugins/l4d2_extraplayeritems.smx b/plugins/l4d2_extraplayeritems.smx index 6324bafc71332a70801eb6786b49684de0d371d3..f45e5bc300aa8dacacae889cb38dc06e27719c58 100644 GIT binary patch delta 8951 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 Gl=(kJOx3{v delta 8747 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 U+FujjMb;R3hMiM;UZFYvAB${ probably dynamic array if using % system. -Far away player detection (behind), tell players in chat. -*/ public APLRes AskPluginLoad2(Handle myself, bool late, char[] error, int err_max) { - if(late) - isLateLoaded = true; - + if(late) isLateLoaded = true; } -public void OnPluginStart() -{ +public void OnPluginStart() { EngineVersion g_Game = GetEngineVersion(); - if(g_Game != Engine_Left4Dead && g_Game != Engine_Left4Dead2) - { + if(g_Game != Engine_Left4Dead && g_Game != Engine_Left4Dead2) { SetFailState("This plugin is for L4D/L4D2 only."); } HookEvent("player_spawn", Event_PlayerSpawn); HookEvent("player_first_spawn", Event_PlayerFirstSpawn); HookEvent("round_end", Event_RoundEnd); - HookEvent("player_entered_checkpoint", Event_EnterSaferoom); HookEvent("heal_success", Event_HealFinished); HookEvent("map_transition", Event_MapTransition); HookEvent("game_start", Event_GameStart); @@ -124,10 +112,8 @@ public Action Event_PlayerFirstSpawn(Event event, const char[] name, bool dontBr firstGiven = true; CreateTimer(1.0, Timer_GiveKits); } - }else{ - if(!DoesClientHaveKit(client)) { - CheatCommand(client, "give", "first_aid_kit", ""); - } + }else if(!DoesClientHaveKit(client)) { + CheatCommand(client, "give", "first_aid_kit", ""); } } } @@ -161,34 +147,41 @@ public void OnMapStart() { } isFailureRound = false; } + #if defined DEBUG PrintToServer(">>> MAP START. Extra Kits: %d", extraKitsAmount); #endif + if(!isLateLoaded) { CreateTimer(30.0, Timer_AddExtraCounts); isLateLoaded = false; } + + //Hook the end saferoom as event + HookEntityOutput("info_changelevel", "OnStartTouch", EntityOutput_OnStartTouchSaferoom); + HookEntityOutput("trigger_changelevel", "OnStartTouch", EntityOutput_OnStartTouchSaferoom); } -public void Event_EnterSaferoom(Event event, const char[] name, bool dontBroadcast) { - int client = GetClientOfUserId(event.GetInt("userid")); - if(client > 0 && !isCheckpointReached && GetClientTeam(client) == 2 && L4D_IsInLastCheckpoint(client)) { - isCheckpointReached = true; +public void EntityOutput_OnStartTouchSaferoom(const char[] output, int caller, int client, float time) { + if(!isCheckpointReached && IsValidClient(client) && GetClientTeam(client) == 2){ + isCheckpointReached = true; int extraPlayers = GetSurvivorsCount() - 4; + if(extraPlayers > 0) { #if defined DEBUG PrintToConsoleAll("CHECKPOINT REACHED BY %N | EXTRA KITS: %d", client, extraPlayers); #endif + //If hAddExtraKits TRUE: Append to previous, FALSE: Overwrite if(hAddExtraKits.BoolValue) extraKitsAmount += extraPlayers; else extraKitsAmount = extraPlayers; + extraKitsStarted = extraKitsAmount; PrintToServer(">>> Player entered saferoom. An extra %d kits will be provided", extraKitsAmount); } - } + } } - public Action Event_RoundEnd(Event event, const char[] name, bool dontBroadcast) { if(!isFailureRound) isFailureRound = true; }