View Single Post
Bacardi
Veteran Member
Join Date: Jan 2010
Location: mom's basement
Old 03-25-2021 , 13:20   Re: player_spawn - fails to keep setting after respawn.
Reply With Quote #5

Try this :/
Code:
#pragma semicolon 1

#include <sourcemod>

bool g_bEnableKson[MAXPLAYERS + 1];

public void OnPluginStart()
{
    RegAdminCmd("sm_kson", Cmd_Enable, ADMFLAG_CUSTOM6);
    
    HookEvent("player_spawn", Event_PlayerSpawn);
}

public void OnClientPostAdminCheck(int client)
{
    g_bEnableKson[client] = CheckCommandAccess(client, "sm_kson", ADMFLAG_CUSTOM6);
}

public Action Cmd_Enable(int client, int args)
{
    if (client <= 0 || client > MaxClients || !IsClientInGame(client))
    {
        return Plugin_Handled;
    }
    
    g_bEnableKson[client] = !g_bEnableKson[client];
    
    if (g_bEnableKson[client])
    {
        SetEntProp(client, Prop_Send, "m_nStreaks", 100);
    }
    
    return Plugin_Handled;
}

public void Event_PlayerSpawn(Event event, const char[] name, bool dontBroadcast)
{
    int client = GetClientOfUserId(event.GetInt("userid"));

    if (g_bEnableKson[client])
    {
        SetEntProp(client, Prop_Send, "m_nStreaks", 100);
    }
}
Bacardi is offline