Untitled diff

Created Diff never expires
10 हटाए गए
लाइनें
कुल
हटाया गया
शब्द
कुल
हटाया गया
इस सुविधा का उपयोग जारी रखने के लिए, अपग्रेड करें
Diffchecker logo
Diffchecker Pro
106 लाइनें
7 जोड़े गए
लाइनें
कुल
जोड़ा गया
शब्द
कुल
जोड़ा गया
इस सुविधा का उपयोग जारी रखने के लिए, अपग्रेड करें
Diffchecker logo
Diffchecker Pro
103 लाइनें
// SourceMod 1.7+
// SourceMod 1.7+
#include <sourcemod>
#include <sourcemod>
#include <clientprefs>
#include <clientprefs>
#include <scp>


#pragma semicolon 1
#pragma semicolon 1


#define PLUGIN_VERSION "1.1"
#define PLUGIN_VERSION "1.1"


Handle gH_Cookie = INVALID_HANDLE;
Handle gH_Cookie = INVALID_HANDLE;


public Plugin:myinfo =
public Plugin:myinfo =
{
{
name = "[CS:GO] Chat colors",
name = "Chat color menu",
author = "shavit",
author = "Philip",
description = "Provides a menu with the option to change your chat color.",
description = "Chat color menu in-game!",
version = PLUGIN_VERSION,
version = "0.1",
url = "http://forums.alliedmods.net/member.php?u=163134"
url = "http://steamcommunity.com/id/PhilipTheBoss321/"
}
}


public void OnPluginStart()
public void OnPluginStart()
{
{
gH_Cookie = RegClientCookie("sm_chatcolors_cookie", "Contains the used chat color", CookieAccess_Protected);
gH_Cookie = RegClientCookie("sm_chatcolors_cookie", "Contains the used chat color", CookieAccess_Protected);


CreateConVar("sm_csgochatcolors_version", PLUGIN_VERSION, "Plugin version", FCVAR_PLUGIN|FCVAR_DONTRECORD|FCVAR_NOTIFY);
CreateConVar("sm_csgochatcolors_version", PLUGIN_VERSION, "Plugin version", FCVAR_PLUGIN|FCVAR_DONTRECORD|FCVAR_NOTIFY);


RegAdminCmd("sm_colors", Command_Colors, ADMFLAG_GENERIC, "Pops up the colors menu");
RegAdminCmd("sm_colors", Command_Colors, ADMFLAG_GENERIC, "Pops up the colors menu");
}
}


public Action Command_Colors(int client, int args)
public Action Command_Colors(int client, int args)
{
{
Handle hMenu = CreateMenu(MenuHandler_Colors, MENU_ACTIONS_ALL);
Handle hMenu = CreateMenu(MenuHandler_Colors, MENU_ACTIONS_ALL);
SetMenuTitle(hMenu, "Select a chat color:");
SetMenuTitle(hMenu, "Select a chat color:");


AddMenuItem(hMenu, "none", "Default");
AddMenuItem(hMenu, "none", "Default");
AddMenuItem(hMenu, "\x02", "Strong Red");
AddMenuItem(hMenu, "\x02", "Strong Red");
AddMenuItem(hMenu, "\x03", "Team Color");
AddMenuItem(hMenu, "\x03", "Team Color");
AddMenuItem(hMenu, "\x04", "Green");
AddMenuItem(hMenu, "\x04", "Green");
AddMenuItem(hMenu, "\x05", "Turquoise");
AddMenuItem(hMenu, "\x05", "Turquoise");
AddMenuItem(hMenu, "\x06", "Yellow-Green");
AddMenuItem(hMenu, "\x06", "Yellow-Green");
AddMenuItem(hMenu, "\x07", "Light Red");
AddMenuItem(hMenu, "\x07", "Light Red");
AddMenuItem(hMenu, "\x08", "Gray");
AddMenuItem(hMenu, "\x08", "Gray");
AddMenuItem(hMenu, "\x09", "Light Yellow");
AddMenuItem(hMenu, "\x09", "Light Yellow");
AddMenuItem(hMenu, "\x0A", "Light Blue");
AddMenuItem(hMenu, "\x0A", "Light Blue");
AddMenuItem(hMenu, "\x0C", "Purple");
AddMenuItem(hMenu, "\x0C", "Purple");
AddMenuItem(hMenu, "\x0E", "Pink");
AddMenuItem(hMenu, "\x0E", "Pink");
AddMenuItem(hMenu, "\x10", "Orange");
AddMenuItem(hMenu, "\x10", "Orange");


SetMenuExitButton(hMenu, true);
SetMenuExitButton(hMenu, true);


DisplayMenu(hMenu, client, 20);
DisplayMenu(hMenu, client, 20);


return Plugin_Handled;
return Plugin_Handled;
}
}


public int MenuHandler_Colors(Handle hMenu, MenuAction maAction, int client, int choice)
public int MenuHandler_Colors(Handle hMenu, MenuAction maAction, int client, int choice)
{
{
if(maAction == MenuAction_Select)
if(maAction == MenuAction_Select)
{
{
char sChoice[8];
char sChoice[8];
GetMenuItem(hMenu, choice, sChoice, 8);
GetMenuItem(hMenu, choice, sChoice, 8);


SetClientCookie(client, gH_Cookie, sChoice);
SetClientCookie(client, gH_Cookie, sChoice);


if(StrEqual(sChoice, "none"))
if(StrEqual(sChoice, "none"))
{
{
FormatEx(sChoice, 8, "\x01");
FormatEx(sChoice, 8, "\x01");
}
}


if(StrEqual(sChoice, "\x03"))
if(StrEqual(sChoice, "\x03"))
{
{
PrintToChat(client, " \x04[Chat Colors]\x01 Your chat color will match your team color.");
PrintToChat(client, " \x08[\x01i\x07Colors\x08]\x0E You\x01'\x0Bll now have the team color.");
}
}


else
else
{
{
PrintToChat(client, " \x04[Chat Colors]\x01 You have selected %sthis color\x01.", sChoice);
PrintToChat(client, " \x08[\x01i\x07Colors\x08]\x0E You\x01'\x0Eve selected %sthis color\x01.", sChoice);
}
}
}
}


else if(maAction == MenuAction_End)
else if(maAction == MenuAction_End)
{
{
CloseHandle(hMenu);
CloseHandle(hMenu);
}
}
}
}


public Action OnChatMessage(int &client, Handle hRecipients, char[] sName, char[] sMessage)
public Action OnChatMessage(int &client, Handle hRecipients, char[] sName, char[] sMessage)
{
{
if(CheckCommandAccess(client, "sm_colors", ADMFLAG_GENERIC))
if(CheckCommandAccess(client, "sm_colors", ADMFLAG_GENERIC))
{
{
char sCookie[8];
char sCookie[8];
GetClientCookie(client, gH_Cookie, sCookie, 8);
GetClientCookie(client, gH_Cookie, sCookie, 8);


if(StrEqual(sCookie, "") || StrEqual(sCookie, "none"))
if(StrEqual(sCookie, "") || StrEqual(sCookie, "none"))
{
{
return Plugin_Continue;
return Plugin_Continue;
}
}


Format(sMessage, MAXLENGTH_MESSAGE, "%s%s", sCookie, sMessage);

return Plugin_Changed;
return Plugin_Changed;
}
}


return Plugin_Continue;
return Plugin_Continue;
}
}