diff options
| author | aura <nw@moneybot.cc> | 2026-02-17 23:42:09 +0100 |
|---|---|---|
| committer | aura <nw@moneybot.cc> | 2026-02-17 23:42:09 +0100 |
| commit | 5e2eb7d67ae933b7566f1944d0bb7744da03d586 (patch) | |
| tree | 054acff1113270a9cd07933df760f3768c1b6853 /sourcemod/scripting/include/sourcemod-colors.inc | |
| parent | 341db13a008dc12bb22ceb50452d93d01476308c (diff) | |
move source stuff to its own folder
Diffstat (limited to 'sourcemod/scripting/include/sourcemod-colors.inc')
| -rw-r--r-- | sourcemod/scripting/include/sourcemod-colors.inc | 921 |
1 files changed, 0 insertions, 921 deletions
diff --git a/sourcemod/scripting/include/sourcemod-colors.inc b/sourcemod/scripting/include/sourcemod-colors.inc deleted file mode 100644 index 66bc97b..0000000 --- a/sourcemod/scripting/include/sourcemod-colors.inc +++ /dev/null @@ -1,921 +0,0 @@ -#if defined _sourcemod_colors_included - #endinput -#endif -#define _sourcemod_colors_included "1.0" - -/* -* _____ _ _____ _ -* / ____| | | / ____| | | -* | (___ ___ _ _ _ __ ___ ___ _ __ ___ ___ __| | | | ___ | | ___ _ __ ___ -* \___ \ / _ \| | | | '__/ __/ _ \ '_ ` _ \ / _ \ / _` | | | / _ \| |/ _ \| '__/ __| -* ____) | (_) | |_| | | | (_| __/ | | | | | (_) | (_| | | |___| (_) | | (_) | | \__ \ -* |_____/ \___/ \__,_|_| \___\___|_| |_| |_|\___/ \__,_| \_____\___/|_|\___/|_| |___/ -* -* -* - Author: Keith Warren (Drixevel) -* - Original By: Raska aka KissLick (ColorVariables) -* -* This is meant to be a drop-in replacement for every Source Engine game to add colors to chat and more cheat features. -*/ - -// ---------------------------------------------------------------------------------------- -#define MAX_BUFFER_SIZE 1024 - -static bool g_bInit; -static StringMap g_hColors; -static char g_sChatPrefix[64]; - -static bool g_bIgnorePrefix; -static int g_iAuthor; -static bool g_bSkipPlayers[MAXPLAYERS + 1]; -// ---------------------------------------------------------------------------------------- - -/* -* Sets the prefix for all chat prints to use. -* -* prefix - String to use. -* any - Extra Parameters -* -* Return - N/A -*/ -stock void CSetPrefix(const char[] prefix, any ...) -{ - VFormat(g_sChatPrefix, sizeof(g_sChatPrefix), prefix, 2); -} - -/* -* Setup the next print to skip using the prefix. -* -* -* Return - N/A -*/ -stock void CSkipNextPrefix() -{ - g_bIgnorePrefix = true; -} - -/* -* Sets the author for the next print. (Mostly applies colors) -* -* client - Author index. -* -* Return - N/A -*/ -stock void CSetNextAuthor(int client) -{ - if (client < 1 || client > MaxClients || !IsClientInGame(client)) - ThrowError("Invalid client index %i", client); - - g_iAuthor = client; -} - -/* -* Setup the next chat print to not be sent to this client. -* -* client - Client index. -* -* Return - N/A -*/ -stock void CSkipNextClient(int client) -{ - if (client < 1 || client > MaxClients) - ThrowError("Invalid client index %i", client); - - g_bSkipPlayers[client] = true; -} - -/* -* Sends a chat print to the client. -* -* client - Client index. -* message - Message string. -* any - Extra Parameters -* -* Return - N/A -*/ -stock void CPrintToChat(int client, const char[] message, any ...) -{ - if ((client < 1 || client > MaxClients || !IsClientInGame(client) || IsFakeClient(client)) && !IsClientSourceTV(client)) - return; - - SetGlobalTransTarget(client); - - char buffer[MAX_BUFFER_SIZE]; - VFormat(buffer, sizeof(buffer), message, 3); - - AddPrefixAndDefaultColor(buffer, sizeof(buffer)); - g_bIgnorePrefix = false; - - CProcessVariables(buffer, sizeof(buffer)); - CAddWhiteSpace(buffer, sizeof(buffer)); - - SendPlayerMessage(client, buffer, g_iAuthor); - g_iAuthor = 0; -} - -/* -* Sends a chat print to the client with a specified author. -* -* client - Client index. -* author - Author index. -* message - Message string. -* any - Extra Parameters -* -* Return - N/A -*/ -stock void CPrintToChatEx(int client, int author, const char[] message, any ...) -{ - CSetNextAuthor(author); - char buffer[MAX_BUFFER_SIZE]; - VFormat(buffer, sizeof(buffer), message, 4); - CPrintToChat(client, buffer); -} - -/* -* Sends a chat print to all clients. -* -* message - Message string. -* any - Extra Parameters -* -* Return - N/A -*/ -stock void CPrintToChatAll(const char[] message, any ...) -{ - char buffer[MAX_BUFFER_SIZE]; - - for (int client = 1; client <= MaxClients; client++) - { - if (!IsClientInGame(client) || g_bSkipPlayers[client]) - { - g_bSkipPlayers[client] = false; - continue; - } - - SetGlobalTransTarget(client); - - VFormat(buffer, sizeof(buffer), message, 2); - - AddPrefixAndDefaultColor(buffer, sizeof(buffer)); - g_bIgnorePrefix = false; - - CProcessVariables(buffer, sizeof(buffer)); - CAddWhiteSpace(buffer, sizeof(buffer)); - - SendPlayerMessage(client, buffer, g_iAuthor); - } - - g_iAuthor = 0; -} - -/* -* Sends a chat print to all clients with a specified author. -* -* author - Author index. -* message - Message string. -* any - Extra Parameters -* -* Return - N/A -*/ -stock void CPrintToChatAllEx(int author, const char[] message, any ...) -{ - CSetNextAuthor(author); - char buffer[MAX_BUFFER_SIZE]; - VFormat(buffer, sizeof(buffer), message, 3); - CPrintToChatAll(buffer); -} - -/* -* Sends a chat print to a specified team. -* -* team - Team index. -* message - Message string. -* any - Extra Parameters -* -* Return - N/A -*/ -stock void CPrintToChatTeam(int team, const char[] message, any ...) -{ - char buffer[MAX_BUFFER_SIZE]; - - for (int client = 1; client <= MaxClients; client++) - { - if (!IsClientInGame(client) || GetClientTeam(client) != team || g_bSkipPlayers[client]) - { - g_bSkipPlayers[client] = false; - continue; - } - - SetGlobalTransTarget(client); - VFormat(buffer, sizeof(buffer), message, 3); - - AddPrefixAndDefaultColor(buffer, sizeof(buffer)); - g_bIgnorePrefix = false; - - CProcessVariables(buffer, sizeof(buffer)); - CAddWhiteSpace(buffer, sizeof(buffer)); - - SendPlayerMessage(client, buffer, g_iAuthor); - } - - g_iAuthor = 0; -} - -/* -* Sends a chat print to a specified team with a specified author. -* -* team - Team index. -* message - Message string. -* any - Extra Parameters -* -* Return - N/A -*/ -stock void CPrintToChatTeamEx(int team, int author, const char[] message, any ...) -{ - CSetNextAuthor(author); - char buffer[MAX_BUFFER_SIZE]; - VFormat(buffer, sizeof(buffer), message, 4); - CPrintToChatTeam(team, buffer); -} - -/* -* Sends a chat print to available admins. -* Example for bitflags: (ADMFLAG_RESERVATION | ADMFLAG_GENERIC) -* -* bitflags - Bit Flags. -* message - Message string. -* any - Extra Parameters -* -* Return - N/A -*/ -stock void CPrintToChatAdmins(int bitflags, const char[] message, any ...) -{ - char buffer[MAX_BUFFER_SIZE]; - AdminId iAdminID; - - for (int client = 1; client <= MaxClients; client++) - { - if (!IsClientInGame(client) || g_bSkipPlayers[client]) - { - g_bSkipPlayers[client] = false; - continue; - } - - iAdminID = GetUserAdmin(client); - - if (iAdminID == INVALID_ADMIN_ID || !(GetAdminFlags(iAdminID, Access_Effective) & bitflags)) - continue; - - SetGlobalTransTarget(client); - VFormat(buffer, sizeof(buffer), message, 3); - - AddPrefixAndDefaultColor(buffer, sizeof(buffer)); - g_bIgnorePrefix = false; - - CProcessVariables(buffer, sizeof(buffer)); - CAddWhiteSpace(buffer, sizeof(buffer)); - - SendPlayerMessage(client, buffer, g_iAuthor); - } - - g_iAuthor = 0; -} - -/* -* Sends a chat print to available admins with a specified author. -* Example for bitflags: (ADMFLAG_RESERVATION | ADMFLAG_GENERIC) -* -* bitflags - Bit Flags. -* message - Message string. -* any - Extra Parameters -* -* Return - N/A -*/ -stock void CPrintToChatAdminsEx(int bitflags, int author, const char[] message, any ...) -{ - CSetNextAuthor(author); - char buffer[MAX_BUFFER_SIZE]; - VFormat(buffer, sizeof(buffer), message, 4); - CPrintToChatTeam(bitflags, buffer); -} - -/* -* Sends a reply message to the client. (This is useful because it works for console as well) -* -* client - Client index. -* message - Message string. -* any - Extra Parameters -* -* Return - N/A -*/ -stock void CReplyToCommand(int client, const char[] message, any ...) -{ - if (client < 0 || client > MaxClients) - ThrowError("Invalid client index %d", client); - - if (client != 0 && !IsClientInGame(client)) - ThrowError("Client %d is not in game", client); - - char buffer[MAX_BUFFER_SIZE]; - SetGlobalTransTarget(client); - VFormat(buffer, sizeof(buffer), message, 3); - - AddPrefixAndDefaultColor(buffer, sizeof(buffer), "engine 1"); - g_bIgnorePrefix = false; - - if (GetCmdReplySource() == SM_REPLY_TO_CONSOLE) - { - CRemoveColors(buffer, sizeof(buffer)); - PrintToConsole(client, "%s", buffer); - } - else - CPrintToChat(client, "%s", buffer); -} - -/* -* Displays usage of an admin command to users depending on the setting of the sm_show_activity cvar. -* This version does not display a message to the originating client if used from chat triggers or menus. -* If manual replies are used for these cases, then this function will suffice. -* Otherwise, ShowActivity2() is slightly more useful. -* -* client - Client index. -* message - Message string. -* any - Extra Parameters -* -* Return - N/A -*/ -stock void CShowActivity(int client, const char[] message, any ...) -{ - if (client < 0 || client > MaxClients) - ThrowError("Invalid client index %d", client); - - if (client != 0 && !IsClientInGame(client)) - ThrowError("Client %d is not in game", client); - - char buffer[MAX_BUFFER_SIZE]; - SetGlobalTransTarget(client); - VFormat(buffer, sizeof(buffer), message, 3); - Format(buffer, sizeof(buffer), "{engine 1}%s", buffer); - CProcessVariables(buffer, sizeof(buffer)); - CAddWhiteSpace(buffer, sizeof(buffer)); - - ShowActivity(client, "%s", buffer); -} - -/* -* Displays usage of an admin command to users depending on the setting of the sm_show_activity cvar. -* All users receive a message in their chat text, except for the originating client, who receives the message based on the current ReplySource. -* -* client - Client index. -* tag - Tag to show. -* message - Message string. -* any - Extra Parameters -* -* Return - N/A -*/ -stock void CShowActivityEx(int client, const char[] tag, const char[] message, any ...) -{ - if (client < 0 || client > MaxClients) - ThrowError("Invalid client index %d", client); - - if (client != 0 && !IsClientInGame(client)) - ThrowError("Client %d is not in game", client); - - char buffer[MAX_BUFFER_SIZE]; char sBufferTag[MAX_BUFFER_SIZE]; - SetGlobalTransTarget(client); - VFormat(buffer, sizeof(buffer), message, 4); - Format(buffer, sizeof(buffer), "{engine 1}%s", buffer); - CProcessVariables(buffer, sizeof(buffer)); - Format(sBufferTag, sizeof(sBufferTag), "{prefix}%s", tag); - CProcessVariables(sBufferTag, sizeof(sBufferTag)); - CAddWhiteSpace(buffer, sizeof(buffer)); - CAddWhiteSpace(sBufferTag, sizeof(sBufferTag)); - - ShowActivityEx(client, sBufferTag, " %s", buffer); -} - -/* -* Same as ShowActivity(), except the tag parameter is used instead of "[SM] " (note that you must supply any spacing). -* -* client - Client index. -* tag - Tag to show. -* message - Message string. -* any - Extra Parameters -* -* Return - N/A -*/ -stock void CShowActivity2(int client, const char[] tag, const char[] message, any ...) -{ - if (client < 0 || client > MaxClients) - ThrowError("Invalid client index %d", client); - - if (client != 0 && !IsClientInGame(client)) - ThrowError("Client %d is not in game", client); - - char buffer[MAX_BUFFER_SIZE]; char sBufferTag[MAX_BUFFER_SIZE]; - SetGlobalTransTarget(client); - VFormat(buffer, sizeof(buffer), message, 4); - Format(buffer, sizeof(buffer), "{engine 2}%s", buffer); - CProcessVariables(buffer, sizeof(buffer)); - Format(sBufferTag, sizeof(sBufferTag), "{prefix}%s", tag); - CProcessVariables(sBufferTag, sizeof(sBufferTag)); - CAddWhiteSpace(buffer, sizeof(buffer)); - CAddWhiteSpace(sBufferTag, sizeof(sBufferTag)); - - ShowActivityEx(client, sBufferTag, " %s", buffer); -} - -/* -* Strips all colors from the specified string. -* -* msg - String buffer. -* size - Size of the string. -* -* Return - N/A -*/ -stock void CRemoveColors(char[] msg, int size) -{ - CProcessVariables(msg, size, true); -} - -/* -* Processes colors in a string by replacing found tags with color/hex codes. -* -* msg - String buffer. -* size - Size of the string. -* removecolors - Whether to remove colors or keep them. (same as CRemoveColors) -* -* Return - N/A -*/ -stock void CProcessVariables(char[] msg, int size, bool removecolors = false) -{ - Init(); - - char[] sOut = new char[size]; char[] sCode = new char[size]; char[] color = new char[size]; - int iOutPos = 0; int iCodePos = -1; - int iMsgLen = strlen(msg); - - for (int i = 0; i < iMsgLen; i++) - { - if (msg[i] == '{') - iCodePos = 0; - - if (iCodePos > -1) - { - sCode[iCodePos] = msg[i]; - sCode[iCodePos + 1] = '\0'; - - if (msg[i] == '}' || i == iMsgLen - 1) - { - strcopy(sCode, strlen(sCode) - 1, sCode[1]); - StringToLower(sCode); - - if (CGetColor(sCode, color, size)) - { - if (!removecolors) - { - StrCat(sOut, size, color); - iOutPos += strlen(color); - } - } - else - { - Format(sOut, size, "%s{%s}", sOut, sCode); - iOutPos += strlen(sCode) + 2; - } - - iCodePos = -1; - strcopy(sCode, size, ""); - strcopy(color, size, ""); - } - else - iCodePos++; - - continue; - } - - sOut[iOutPos] = msg[i]; - iOutPos++; - sOut[iOutPos] = '\0'; - } - - strcopy(msg, size, sOut); -} - -/* -* Retrieves the color/hex code for a specified color name. -* -* name - Color to search for. -* color - String buffer. -* size - Size of the string. -* -* Return - True if found, false otherwise. -*/ -stock bool CGetColor(const char[] name, char[] color, int size) -{ - if (name[0] == '\0') - return false; - - if (name[0] == '@') - { - int iSpace; - char sData[64]; char m_sName[64]; - strcopy(m_sName, sizeof(m_sName), name[1]); - - if ((iSpace = FindCharInString(m_sName, ' ')) != -1 && (iSpace + 1 < strlen(m_sName))) - { - strcopy(m_sName, iSpace + 1, m_sName); - strcopy(sData, sizeof(sData), m_sName[iSpace + 1]); - } - - if (color[0] != '\0') - return true; - } - else if (name[0] == '#') - { - if (strlen(name) == 7) - { - Format(color, size, "\x07%s", name[1]); - return true; - } - - if (strlen(name) == 9) - { - Format(color, size, "\x08%s", name[1]); - return true; - } - } - else if (StrContains(name, "player ", false) == 0 && strlen(name) > 7) - { - int client = StringToInt(name[7]); - - if (client < 1 || client > MaxClients || !IsClientInGame(client)) - { - strcopy(color, size, "\x01"); - LogError("Invalid client index %d", client); - return false; - } - - strcopy(color, size, "\x01"); - - switch (GetClientTeam(client)) - { - case 1: g_hColors.GetString("engine 8", color, size); - case 2: g_hColors.GetString("engine 9", color, size); - case 3: g_hColors.GetString("engine 11", color, size); - } - - return true; - } - else - return g_hColors.GetString(name, color, size); - - return false; -} - -/* -* Checks if the specified color exists. -* -* name - Color to search for. -* -* Return - True if found, false otherwise. -*/ -stock bool CExistColor(const char[] name) -{ - if (name[0] == '\0' || name[0] == '@' || name[0] == '#') - return false; - - char color[64]; - return g_hColors.GetString(name, color, sizeof(color)); -} - -/* -* Sends a raw SayText2 usermsg to the specified client with settings. -* -* client - Client index. -* message - Message string. -* author - Author index. -* chat - "0 - raw text, 1 - sets CHAT_FILTER_PUBLICCHAT " -* -* Return - N/A -*/ -stock void CSayText2(int client, const char[] message, int author, bool chat = true) -{ - if (client < 1 || client > MaxClients) - return; - - Handle hMsg = StartMessageOne("SayText2", client, USERMSG_RELIABLE|USERMSG_BLOCKHOOKS); - if (GetFeatureStatus(FeatureType_Native, "GetUserMessageType") == FeatureStatus_Available && GetUserMessageType() == UM_Protobuf) - { - PbSetInt(hMsg, "ent_idx", author); - PbSetBool(hMsg, "chat", chat); - PbSetString(hMsg, "msg_name", message); - PbAddString(hMsg, "params", ""); - PbAddString(hMsg, "params", ""); - PbAddString(hMsg, "params", ""); - PbAddString(hMsg, "params", ""); - } - else - { - BfWriteByte(hMsg, author); - BfWriteByte(hMsg, true); - BfWriteString(hMsg, message); - } - - EndMessage(); -} - -/* -* Adds a space to the start a string buffer. -* -* buffer - String buffer. -* size - Size of the string. -* -* Return - N/A -*/ -stock void CAddWhiteSpace(char[] buffer, int size) -{ - if (!IsSource2009()) - Format(buffer, size, " %s", buffer); -} - -// ---------------------------------------------------------------------------------------- -// Private stuff -// ---------------------------------------------------------------------------------------- - -stock bool Init() -{ - if (g_bInit) - { - LoadColors(); - return true; - } - - for (int i = 1; i <= MaxClients; i++) - g_bSkipPlayers[i] = false; - - LoadColors(); - g_bInit = true; - - return true; -} - -stock void LoadColors() -{ - if (g_hColors == null) - g_hColors = new StringMap(); - else - g_hColors.Clear(); - - g_hColors.SetString("default", "\x01"); - g_hColors.SetString("teamcolor", "\x03"); - - if (IsSource2009()) - { - g_hColors.SetString("aliceblue", "\x07F0F8FF"); - g_hColors.SetString("allies", "\x074D7942"); - g_hColors.SetString("ancient", "\x07EB4B4B"); - g_hColors.SetString("antiquewhite", "\x07FAEBD7"); - g_hColors.SetString("aqua", "\x0700FFFF"); - g_hColors.SetString("aquamarine", "\x077FFFD4"); - g_hColors.SetString("arcana", "\x07ADE55C"); - g_hColors.SetString("axis", "\x07FF4040"); - g_hColors.SetString("azure", "\x07007FFF"); - g_hColors.SetString("beige", "\x07F5F5DC"); - g_hColors.SetString("bisque", "\x07FFE4C4"); - g_hColors.SetString("black", "\x07000000"); - g_hColors.SetString("blanchedalmond", "\x07FFEBCD"); - g_hColors.SetString("blue", "\x0799CCFF"); - g_hColors.SetString("blueviolet", "\x078A2BE2"); - g_hColors.SetString("brown", "\x07A52A2A"); - g_hColors.SetString("burlywood", "\x07DEB887"); - g_hColors.SetString("cadetblue", "\x075F9EA0"); - g_hColors.SetString("chartreuse", "\x077FFF00"); - g_hColors.SetString("chocolate", "\x07D2691E"); - g_hColors.SetString("collectors", "\x07AA0000"); - g_hColors.SetString("common", "\x07B0C3D9"); - g_hColors.SetString("community", "\x0770B04A"); - g_hColors.SetString("coral", "\x07FF7F50"); - g_hColors.SetString("cornflowerblue", "\x076495ED"); - g_hColors.SetString("cornsilk", "\x07FFF8DC"); - g_hColors.SetString("corrupted", "\x07A32C2E"); - g_hColors.SetString("crimson", "\x07DC143C"); - g_hColors.SetString("cyan", "\x0700FFFF"); - g_hColors.SetString("darkblue", "\x0700008B"); - g_hColors.SetString("darkcyan", "\x07008B8B"); - g_hColors.SetString("darkgoldenrod", "\x07B8860B"); - g_hColors.SetString("darkgray", "\x07A9A9A9"); - g_hColors.SetString("darkgrey", "\x07A9A9A9"); - g_hColors.SetString("darkgreen", "\x07006400"); - g_hColors.SetString("darkkhaki", "\x07BDB76B"); - g_hColors.SetString("darkmagenta", "\x078B008B"); - g_hColors.SetString("darkolivegreen", "\x07556B2F"); - g_hColors.SetString("darkorange", "\x07FF8C00"); - g_hColors.SetString("darkorchid", "\x079932CC"); - g_hColors.SetString("darkred", "\x078B0000"); - g_hColors.SetString("darksalmon", "\x07E9967A"); - g_hColors.SetString("darkseagreen", "\x078FBC8F"); - g_hColors.SetString("darkslateblue", "\x07483D8B"); - g_hColors.SetString("darkslategray", "\x072F4F4F"); - g_hColors.SetString("darkslategrey", "\x072F4F4F"); - g_hColors.SetString("darkturquoise", "\x0700CED1"); - g_hColors.SetString("darkviolet", "\x079400D3"); - g_hColors.SetString("deeppink", "\x07FF1493"); - g_hColors.SetString("deepskyblue", "\x0700BFFF"); - g_hColors.SetString("dimgray", "\x07696969"); - g_hColors.SetString("dimgrey", "\x07696969"); - g_hColors.SetString("dodgerblue", "\x071E90FF"); - g_hColors.SetString("exalted", "\x07CCCCCD"); - g_hColors.SetString("firebrick", "\x07B22222"); - g_hColors.SetString("floralwhite", "\x07FFFAF0"); - g_hColors.SetString("forestgreen", "\x07228B22"); - g_hColors.SetString("frozen", "\x074983B3"); - g_hColors.SetString("fuchsia", "\x07FF00FF"); - g_hColors.SetString("fullblue", "\x070000FF"); - g_hColors.SetString("fullred", "\x07FF0000"); - g_hColors.SetString("gainsboro", "\x07DCDCDC"); - g_hColors.SetString("genuine", "\x074D7455"); - g_hColors.SetString("ghostwhite", "\x07F8F8FF"); - g_hColors.SetString("gold", "\x07FFD700"); - g_hColors.SetString("goldenrod", "\x07DAA520"); - g_hColors.SetString("gray", "\x07CCCCCC"); - g_hColors.SetString("grey", "\x07CCCCCC"); - g_hColors.SetString("green", "\x073EFF3E"); - g_hColors.SetString("greenyellow", "\x07ADFF2F"); - g_hColors.SetString("haunted", "\x0738F3AB"); - g_hColors.SetString("honeydew", "\x07F0FFF0"); - g_hColors.SetString("hotpink", "\x07FF69B4"); - g_hColors.SetString("immortal", "\x07E4AE33"); - g_hColors.SetString("indianred", "\x07CD5C5C"); - g_hColors.SetString("indigo", "\x074B0082"); - g_hColors.SetString("ivory", "\x07FFFFF0"); - g_hColors.SetString("khaki", "\x07F0E68C"); - g_hColors.SetString("lavender", "\x07E6E6FA"); - g_hColors.SetString("lavenderblush", "\x07FFF0F5"); - g_hColors.SetString("lawngreen", "\x077CFC00"); - g_hColors.SetString("legendary", "\x07D32CE6"); - g_hColors.SetString("lemonchiffon", "\x07FFFACD"); - g_hColors.SetString("lightblue", "\x07ADD8E6"); - g_hColors.SetString("lightcoral", "\x07F08080"); - g_hColors.SetString("lightcyan", "\x07E0FFFF"); - g_hColors.SetString("lightgoldenrodyellow", "\x07FAFAD2"); - g_hColors.SetString("lightgray", "\x07D3D3D3"); - g_hColors.SetString("lightgrey", "\x07D3D3D3"); - g_hColors.SetString("lightgreen", "\x0799FF99"); - g_hColors.SetString("lightpink", "\x07FFB6C1"); - g_hColors.SetString("lightsalmon", "\x07FFA07A"); - g_hColors.SetString("lightseagreen", "\x0720B2AA"); - g_hColors.SetString("lightskyblue", "\x0787CEFA"); - g_hColors.SetString("lightslategray", "\x07778899"); - g_hColors.SetString("lightslategrey", "\x07778899"); - g_hColors.SetString("lightsteelblue", "\x07B0C4DE"); - g_hColors.SetString("lightyellow", "\x07FFFFE0"); - g_hColors.SetString("lime", "\x0700FF00"); - g_hColors.SetString("limegreen", "\x0732CD32"); - g_hColors.SetString("linen", "\x07FAF0E6"); - g_hColors.SetString("magenta", "\x07FF00FF"); - g_hColors.SetString("maroon", "\x07800000"); - g_hColors.SetString("mediumaquamarine", "\x0766CDAA"); - g_hColors.SetString("mediumblue", "\x070000CD"); - g_hColors.SetString("mediumorchid", "\x07BA55D3"); - g_hColors.SetString("mediumpurple", "\x079370D8"); - g_hColors.SetString("mediumseagreen", "\x073CB371"); - g_hColors.SetString("mediumslateblue", "\x077B68EE"); - g_hColors.SetString("mediumspringgreen", "\x0700FA9A"); - g_hColors.SetString("mediumturquoise", "\x0748D1CC"); - g_hColors.SetString("mediumvioletred", "\x07C71585"); - g_hColors.SetString("midnightblue", "\x07191970"); - g_hColors.SetString("mintcream", "\x07F5FFFA"); - g_hColors.SetString("mistyrose", "\x07FFE4E1"); - g_hColors.SetString("moccasin", "\x07FFE4B5"); - g_hColors.SetString("mythical", "\x078847FF"); - g_hColors.SetString("navajowhite", "\x07FFDEAD"); - g_hColors.SetString("navy", "\x07000080"); - g_hColors.SetString("normal", "\x07B2B2B2"); - g_hColors.SetString("oldlace", "\x07FDF5E6"); - g_hColors.SetString("olive", "\x079EC34F"); - g_hColors.SetString("olivedrab", "\x076B8E23"); - g_hColors.SetString("orange", "\x07FFA500"); - g_hColors.SetString("orangered", "\x07FF4500"); - g_hColors.SetString("orchid", "\x07DA70D6"); - g_hColors.SetString("palegoldenrod", "\x07EEE8AA"); - g_hColors.SetString("palegreen", "\x0798FB98"); - g_hColors.SetString("paleturquoise", "\x07AFEEEE"); - g_hColors.SetString("palevioletred", "\x07D87093"); - g_hColors.SetString("papayawhip", "\x07FFEFD5"); - g_hColors.SetString("peachpuff", "\x07FFDAB9"); - g_hColors.SetString("peru", "\x07CD853F"); - g_hColors.SetString("pink", "\x07FFC0CB"); - g_hColors.SetString("plum", "\x07DDA0DD"); - g_hColors.SetString("powderblue", "\x07B0E0E6"); - g_hColors.SetString("purple", "\x07800080"); - g_hColors.SetString("rare", "\x074B69FF"); - g_hColors.SetString("red", "\x07FF4040"); - g_hColors.SetString("rosybrown", "\x07BC8F8F"); - g_hColors.SetString("royalblue", "\x074169E1"); - g_hColors.SetString("saddlebrown", "\x078B4513"); - g_hColors.SetString("salmon", "\x07FA8072"); - g_hColors.SetString("sandybrown", "\x07F4A460"); - g_hColors.SetString("seagreen", "\x072E8B57"); - g_hColors.SetString("seashell", "\x07FFF5EE"); - g_hColors.SetString("selfmade", "\x0770B04A"); - g_hColors.SetString("sienna", "\x07A0522D"); - g_hColors.SetString("silver", "\x07C0C0C0"); - g_hColors.SetString("skyblue", "\x0787CEEB"); - g_hColors.SetString("slateblue", "\x076A5ACD"); - g_hColors.SetString("slategray", "\x07708090"); - g_hColors.SetString("slategrey", "\x07708090"); - g_hColors.SetString("snow", "\x07FFFAFA"); - g_hColors.SetString("springgreen", "\x0700FF7F"); - g_hColors.SetString("steelblue", "\x074682B4"); - g_hColors.SetString("strange", "\x07CF6A32"); - g_hColors.SetString("tan", "\x07D2B48C"); - g_hColors.SetString("teal", "\x07008080"); - g_hColors.SetString("thistle", "\x07D8BFD8"); - g_hColors.SetString("tomato", "\x07FF6347"); - g_hColors.SetString("turquoise", "\x0740E0D0"); - g_hColors.SetString("uncommon", "\x07B0C3D9"); - g_hColors.SetString("unique", "\x07FFD700"); - g_hColors.SetString("unusual", "\x078650AC"); - g_hColors.SetString("valve", "\x07A50F79"); - g_hColors.SetString("vintage", "\x07476291"); - g_hColors.SetString("violet", "\x07EE82EE"); - g_hColors.SetString("wheat", "\x07F5DEB3"); - g_hColors.SetString("white", "\x07FFFFFF"); - g_hColors.SetString("whitesmoke", "\x07F5F5F5"); - g_hColors.SetString("yellow", "\x07FFFF00"); - g_hColors.SetString("yellowgreen", "\x079ACD32"); - } - else - { - g_hColors.SetString("red", "\x07"); - g_hColors.SetString("lightred", "\x0F"); - g_hColors.SetString("darkred", "\x02"); - g_hColors.SetString("bluegrey", "\x0A"); - g_hColors.SetString("blue", "\x0B"); - g_hColors.SetString("darkblue", "\x0C"); - g_hColors.SetString("purple", "\x03"); - g_hColors.SetString("orchid", "\x0E"); - g_hColors.SetString("yellow", "\x09"); - g_hColors.SetString("gold", "\x10"); - g_hColors.SetString("lightgreen", "\x05"); - g_hColors.SetString("green", "\x04"); - g_hColors.SetString("lime", "\x06"); - g_hColors.SetString("grey", "\x08"); - g_hColors.SetString("grey2", "\x0D"); - } - - g_hColors.SetString("engine 1", "\x01"); - g_hColors.SetString("engine 2", "\x02"); - g_hColors.SetString("engine 3", "\x03"); - g_hColors.SetString("engine 4", "\x04"); - g_hColors.SetString("engine 5", "\x05"); - g_hColors.SetString("engine 6", "\x06"); - g_hColors.SetString("engine 7", "\x07"); - g_hColors.SetString("engine 8", "\x08"); - g_hColors.SetString("engine 9", "\x09"); - g_hColors.SetString("engine 10", "\x0A"); - g_hColors.SetString("engine 11", "\x0B"); - g_hColors.SetString("engine 12", "\x0C"); - g_hColors.SetString("engine 13", "\x0D"); - g_hColors.SetString("engine 14", "\x0E"); - g_hColors.SetString("engine 15", "\x0F"); - g_hColors.SetString("engine 16", "\x10"); -} - -stock bool HasBrackets(const char[] sSource) -{ - return (sSource[0] == '{' && sSource[strlen(sSource) - 1] == '}'); -} - -stock void StringToLower(char[] sSource) -{ - for (int i = 0; i < strlen(sSource); i++) - { - if (sSource[i] == '\0') - break; - - sSource[i] = CharToLower(sSource[i]); - } -} - -stock bool IsSource2009() -{ - EngineVersion iEngineVersion = GetEngineVersion(); - return (iEngineVersion == Engine_CSS || iEngineVersion == Engine_TF2 || iEngineVersion == Engine_HL2DM || iEngineVersion == Engine_DODS); -} - -stock void AddPrefixAndDefaultColor(char[] message, int size, char[] sDefaultColor = "engine 1", char[] sPrefixColor = "engine 2") -{ - if (g_sChatPrefix[0] != '\0' && !g_bIgnorePrefix) - Format(message, size, "{%s}[%s]{%s} %s", sPrefixColor, g_sChatPrefix, sDefaultColor, message); - else - Format(message, size, "{%s}%s", sDefaultColor, message); -} - -stock void SendPlayerMessage(int client, char[] message, int author = 0) -{ - if (author > 0 && author <= MaxClients && IsClientInGame(author)) - CSayText2(client, message, author); - else - PrintToChat(client, message); -}
\ No newline at end of file |
