Приветствую!)
Мне нужно помочь с цветами префиксов)
У меня стоят только два цвета зеленый и синий.
Я хочу добавить еще пару цветов к примеру: Красный, черный.
Помогите пожалуйста)
Код:
#pragma semicolon 1 #pragma ctrlchar '\' new MaxClients; new NULL_STRING[1]; new Float:NULL_VECTOR[3]; new Array:g_aData; new g_aDataSize; new g_szPrefix[33][64]; new Array:g_aDataBlockMess; new g_aDataBlockMessSize; new g_iMaxPlayers; new g_iUserTranslit[33]; new Float:g_iUserTimeMes[33]; new Float:g_iTimeFlood[33]; new g_chConvert[94] = { 553701549, 587255990, 620773120, -779278336, 687876608, 721473713, 755028366, 771764224, 822096384, 855651328, 889206272, 922761216, 956354710, -793325423, 1023463598, 738206208, -794505064, -794701678, -794570608, -794832736, -794242914, -795094892, -793980766, -794177385, -795225958, -794046315, -795619172, -794373977, -794963793, -779789312, -779470336, 1593889169, -779824968, -780021582, -779890512, -792735360, -779562818, -792997708, -779300478, -779497289, -793128774, -779366219, -793521988, -779693689, -792866417, -794480896, -794111871, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } bool:operator>(Float:,Float:)(Float:oper1, Float:oper2) { return floatcmp(oper1, oper2) > 0; } public plugin_init() { register_plugin("[FS] Chat", "1.1", "Docaner"); register_clcmd("say /rus", "Chat_Russian", -1, "", -1, MaxClients); register_clcmd("say /eng", "Chat_English", -1, "", -1, MaxClients); register_clcmd("say", "Chat_Say", -1, "", -1, MaxClients); register_clcmd("say_team", "Chat_SayTeam", -1, "", -1, MaxClients); g_iMaxPlayers = get_maxplayers(); return 0; } public client_disconnect(id) { g_iUserTranslit[id] = 0; g_iUserTimeMes[id] = 0; g_iTimeFlood[id] = 0; new var1 = g_szPrefix[id][0][0]; var1[0] = 9800; return 0; } public plugin_cfg() { !!! Removed Phi new szCfgDir[64]; new szCfgFile[128]; get_localinfo("amxx_configsdir", szCfgDir, 63); formatex(szCfgFile, 127, "%s/xman2030_chat.ini", szCfgDir); if (file_exists(szCfgFile, MaxClients)) { new aData[98]; new aDataBlocked[190]; new szBuffer[128]; new iLine = 0; new iLen = 0; new section = 0; g_aData = ArrayCreate(98, 32); g_aDataBlockMess = ArrayCreate(190, 1); iLine++; while (read_file(szCfgFile, iLine, szBuffer, 127, iLen)) { if (!iLen || szBuffer[0] == 59) { } } g_aDataSize = ArraySize(g_aData); g_aDataBlockMessSize = ArraySize(g_aDataBlockMess); } return 0; } public Chat_Russian(id) { new var2 = g_iUserTranslit; new var1; if (!var2[id][0][0]) { UTIL_SayText(id, "!y|!gFS CHAT!y| Ваш язык уже был переключен на !gрусский!y."); var1 = var2; } else { new var3 = g_iUserTranslit[id]; var3 = 0; UTIL_SayText(id, "!y|!gFS CHAT!y| Вы успешно переключили язык на !gрусский!y."); client_cmd(id, "spk buttons/blip1.wav"); var1 = var3; } return 0; } public Chat_English(id) { new var2 = g_iUserTranslit; new var1; if (var2[id][0][0]) { UTIL_SayText(id, "!y|!gFS CHAT!y| Ваш язык уже был переключен на !gанглийский!y."); var1 = var2; } else { new var3 = g_iUserTranslit[id]; var3 = 1; UTIL_SayText(id, "!y|!gFS CHAT!y| Вы успешно переключили язык на !gанглийский!y."); client_cmd(id, "spk buttons/blip1.wav"); var1 = var3; } return 0; } public Chat_Say(id) { return Chat_Think(id, 0); } public Chat_SayTeam(id) { return Chat_Think(id, 1); } / * ERROR! Unrecognized opcode: align_pri * / function "Chat_Think" Chat_Think(id, iTeam) SAY_GetPrefix(id) { new aData[98]; new i = 0; while (i < g_aDataSize) { ArrayGetArray(g_aData, i, aData, -1); switch (aData[0]) { case 101: { static sName[33]; get_user_name(id, sName, 32); if (!strcmp(aData[2], "", 0)) { return copy(g_szPrefix[id][0][0], 63, aData[34]); } i++; } case 102: { if (read_flags(aData[2]) & get_user_flags(id, 0)) { return copy(g_szPrefix[id][0][0], 63, aData[34]); } i++; } case 105: { static sIP[16]; get_user_ip(id, sIP, 15, 1); if (!strcmp(aData[2], "", 0)) { return copy(g_szPrefix[id][0][0], 63, aData[34]); } i++; } case 115: { static sAuthid[25]; get_user_authid(id, sAuthid, 24); if (!strcmp(aData[2], "", 0)) { return copy(g_szPrefix[id][0][0], 63, aData[34]); } i++; } default: { i++; } } i++; } new var1 = g_szPrefix[id][0][0]; var1[0] = 13540; return 13540; } SAY_ChatPrint(pPlayer, String:szTags[], String:szMessage[], String:szTeamColor[]) { new szBuffer[190]; new iPlayerTeamColor[10]; if (2 < numargs()) { vformat(szBuffer, 189, szTags, 3); do { } while (replace(szBuffer, 189, "!y", 13556)); do { } while (replace(szBuffer, 189, "!t", 13576)); do { } while (replace(szBuffer, 189, "!g", 13596)); add(szBuffer, 189, szMessage, 0); switch (pPlayer) { case 0: { new iPlayer = 1; while (iPlayer <= g_iMaxPlayers) { if (is_user_connected(iPlayer)) { get_user_team(iPlayer, iPlayerTeamColor, 9); UTIL_MsgTeamInfo(iPlayer, szTeamColor); UTIL_MsgSayText(iPlayer, szBuffer, 1); UTIL_MsgTeamInfo(iPlayer, iPlayerTeamColor); } iPlayer++; } } default: { get_user_team(pPlayer, iPlayerTeamColor, 9); UTIL_MsgTeamInfo(pPlayer, szTeamColor); UTIL_MsgSayText(pPlayer, szBuffer, 1); UTIL_MsgTeamInfo(pPlayer, iPlayerTeamColor); } } return 0; } else { copy(szBuffer, 189, szTags); do { } while (replace(szBuffer, 189, "!y", 13556)); do { } while (replace(szBuffer, 189, "!t", 13576)); do { } while (replace(szBuffer, 189, "!g", 13596)); add(szBuffer, 189, szMessage, 0); switch (pPlayer) { case 0: { new iPlayer = 1; while (iPlayer <= g_iMaxPlayers) { if (is_user_connected(iPlayer)) { get_user_team(iPlayer, iPlayerTeamColor, 9); UTIL_MsgTeamInfo(iPlayer, szTeamColor); UTIL_MsgSayText(iPlayer, szBuffer, 1); UTIL_MsgTeamInfo(iPlayer, iPlayerTeamColor); } iPlayer++; } } default: { get_user_team(pPlayer, iPlayerTeamColor, 9); UTIL_MsgTeamInfo(pPlayer, szTeamColor); UTIL_MsgSayText(pPlayer, szBuffer, 1); UTIL_MsgTeamInfo(pPlayer, iPlayerTeamColor); } } return 0; } do { } while (replace(szBuffer, 189, "!y", 13556)); do { } while (replace(szBuffer, 189, "!t", 13576)); do { } while (replace(szBuffer, 189, "!g", 13596)); add(szBuffer, 189, szMessage, 0); switch (pPlayer) { case 0: { new iPlayer = 1; while (iPlayer <= g_iMaxPlayers) { if (is_user_connected(iPlayer)) { get_user_team(iPlayer, iPlayerTeamColor, 9); UTIL_MsgTeamInfo(iPlayer, szTeamColor); UTIL_MsgSayText(iPlayer, szBuffer, 1); UTIL_MsgTeamInfo(iPlayer, iPlayerTeamColor); } iPlayer++; } } default: { get_user_team(pPlayer, iPlayerTeamColor, 9); UTIL_MsgTeamInfo(pPlayer, szTeamColor); UTIL_MsgSayText(pPlayer, szBuffer, 1); UTIL_MsgTeamInfo(pPlayer, iPlayerTeamColor); } } return 0; } UTIL_SayText(pPlayer, String:szMessage[]) { new szBuffer[190]; if (2 < numargs()) { vformat(szBuffer, 189, szMessage, 3); do { } while (replace(szBuffer, 189, "!y", 13616)); do { } while (replace(szBuffer, 189, "!t", 13636)); do { } while (replace(szBuffer, 189, "!g", 13656)); switch (pPlayer) { case 0: { new iPlayer = 1; while (iPlayer <= g_iMaxPlayers) { if (is_user_connected(iPlayer)) { UTIL_MsgSayText(iPlayer, szBuffer, 0); } iPlayer++; } } default: { UTIL_MsgSayText(pPlayer, szBuffer, 0); } } return 0; } else { copy(szBuffer, 189, szMessage); do { } while (replace(szBuffer, 189, "!y", 13616)); do { } while (replace(szBuffer, 189, "!t", 13636)); do { } while (replace(szBuffer, 189, "!g", 13656)); switch (pPlayer) { case 0: { new iPlayer = 1; while (iPlayer <= g_iMaxPlayers) { if (is_user_connected(iPlayer)) { UTIL_MsgSayText(iPlayer, szBuffer, 0); } iPlayer++; } } default: { UTIL_MsgSayText(pPlayer, szBuffer, 0); } } return 0; } do { } while (replace(szBuffer, 189, "!y", 13616)); do { } while (replace(szBuffer, 189, "!t", 13636)); do { } while (replace(szBuffer, 189, "!g", 13656)); switch (pPlayer) { case 0: { new iPlayer = 1; while (iPlayer <= g_iMaxPlayers) { if (is_user_connected(iPlayer)) { UTIL_MsgSayText(iPlayer, szBuffer, 0); } iPlayer++; } } default: { UTIL_MsgSayText(pPlayer, szBuffer, 0); } } return 0; } UTIL_MsgSayText(iPlayer, String:szMessage[], iReliable) { new var1; if (iReliable) { var1 = 1; } else { var1 = 8; } / * ERROR! Не удалось привести тип объекта "Lysis.DSentinel" к типу "Lysis.DReturn". * / function "UTIL_MsgSayText" UTIL_MsgSayText(iPlayer, String:szMessage[], iReliable) UTIL_MsgTeamInfo(iPlayer, String:iTeam[]) { engfunc(EngFunc_MessageBegin, 1, 86, "", iPlayer); write_byte(iPlayer); write_string(iTeam); message_end(); return 0; }