add cookies to save sm_hide_lennies
This commit is contained in:
parent
c33b9284a3
commit
6a9a9ee612
@ -6,8 +6,11 @@
|
|||||||
#include <cstrike>
|
#include <cstrike>
|
||||||
#include <ccc>
|
#include <ccc>
|
||||||
#include <multicolors>
|
#include <multicolors>
|
||||||
|
#include <clientprefs>
|
||||||
|
|
||||||
bool g_bHideLennies[MAXPLAYERS + 1] = { false, ... };
|
bool g_bHideLennies[MAXPLAYERS + 1] = { false, ... };
|
||||||
|
bool g_bHideLenniesHooked = false;
|
||||||
|
Handle g_hCookieHideLennies = null;
|
||||||
|
|
||||||
char g_cLennies[23][] = {"( ͡° ͜ʖ ͡°)", "͜ʖ", "(° ͜ʖ °)", "( ͝͠°͜ل͝͠°)", "( ͡° ͜ ͡°)", "( ͡°╭͜ʖ╮͡° )", "( ͠° ͜ʖ ͡°)", "( ° ͜ʖ °)", "(╯°□°)╯", "_(ツ)_", "_ツ_", "( ̿°̿ ͜ل͜ ̿°̿ )", "( ͡", "( ͠", "( ͝", "( °", "(͡", "ಠ_ಠ", "͡°", "°͡", "ʖ", "͡", "͜"};
|
char g_cLennies[23][] = {"( ͡° ͜ʖ ͡°)", "͜ʖ", "(° ͜ʖ °)", "( ͝͠°͜ل͝͠°)", "( ͡° ͜ ͡°)", "( ͡°╭͜ʖ╮͡° )", "( ͠° ͜ʖ ͡°)", "( ° ͜ʖ °)", "(╯°□°)╯", "_(ツ)_", "_ツ_", "( ̿°̿ ͜ل͜ ̿°̿ )", "( ͡", "( ͠", "( ͝", "( °", "(͡", "ಠ_ಠ", "͡°", "°͡", "ʖ", "͡", "͜"};
|
||||||
|
|
||||||
@ -23,6 +26,8 @@ public Plugin myinfo =
|
|||||||
public void OnPluginStart()
|
public void OnPluginStart()
|
||||||
{
|
{
|
||||||
RegConsoleCmd("sm_hide_lennies", HideLennies, "Toggle blocking Lennies");
|
RegConsoleCmd("sm_hide_lennies", HideLennies, "Toggle blocking Lennies");
|
||||||
|
|
||||||
|
g_hCookieHideLennies = RegClientCookie("lennies_blocked", "are lennies blocked", CookieAccess_Protected);
|
||||||
}
|
}
|
||||||
|
|
||||||
public Action CCC_OnChatMessage(int client, int author, const char[] message)
|
public Action CCC_OnChatMessage(int client, int author, const char[] message)
|
||||||
@ -45,19 +50,56 @@ public Action CCC_OnChatMessage(int client, int author, const char[] message)
|
|||||||
public Action HideLennies(int client, int args)
|
public Action HideLennies(int client, int args)
|
||||||
{
|
{
|
||||||
g_bHideLennies[client] = !g_bHideLennies[client];
|
g_bHideLennies[client] = !g_bHideLennies[client];
|
||||||
|
CheckHideLenniesHooks();
|
||||||
|
|
||||||
if(g_bHideLennies[client])
|
if(g_bHideLennies[client])
|
||||||
{
|
{
|
||||||
ReplyToCommand(client, "You blocked Lennies");
|
ReplyToCommand(client, "You blocked Lennies");
|
||||||
|
SetClientCookie(client, g_hCookieHideLennies, "1");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
ReplyToCommand(client, "You unblocked Lennies");
|
ReplyToCommand(client, "You unblocked Lennies");
|
||||||
|
SetClientCookie(client, g_hCookieHideLennies, "");
|
||||||
}
|
}
|
||||||
return Plugin_Handled;
|
return Plugin_Handled;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void OnClientCookiesCached(int client)
|
||||||
|
{
|
||||||
|
char sBuffer[2];
|
||||||
|
|
||||||
|
GetClientCookie(client, g_hCookieHideLennies, sBuffer, sizeof(sBuffer));
|
||||||
|
|
||||||
|
if(sBuffer[0] != '\0')
|
||||||
|
{
|
||||||
|
g_bHideLennies[client] = true;
|
||||||
|
g_bHideLenniesHooked = true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
g_bHideLennies[client] = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void OnClientDisconnect(int client)
|
public void OnClientDisconnect(int client)
|
||||||
{
|
{
|
||||||
g_bHideLennies[client] = false;
|
g_bHideLennies[client] = false;
|
||||||
|
CheckHideLenniesHooks();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void CheckHideLenniesHooks()
|
||||||
|
{
|
||||||
|
bool bShouldHook = false;
|
||||||
|
|
||||||
|
for(int i = 1; i <= MaxClients; i++)
|
||||||
|
{
|
||||||
|
if(g_bHideLennies[i])
|
||||||
|
{
|
||||||
|
bShouldHook = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
g_bHideLenniesHooked = bShouldHook;
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user