Работи, но сега не се показва другия префикс [Super Player]...Alexandrow написа: ↑14 Дек 2018, 01:17 Опитай така
Код за потвърждение: Избери целия код
#include <amxmodx> #include <colorchat> #define PLUGIN_VERSION "2.2" //#define USE_JAILBREAK #if defined USE_JAILBREAK #define PREFIX_SIMON 5 native is_user_simon(id) #endif enum { INFO_PREFIX = 1, INFO_CLRNAME, INFO_CLRCHAT, INFO_CLRSCND } #define ADMIN_LISTEN "m" new const g_szAdminPrefixes[][] = { /* -------------- Флаг Префикс Цвят (ник) Цвят (чат) Цвят (second) */ "", "", "second", "normal", "team", "m", "^4[Server Owner]", "second", "green", "team", "n", "^4[Global Admin]", "second", "green", "team", "p", "^4[Server Admin]", "second", "green", "team", "o", "^4[Test Admin]", "second", "green", "team", "r", "^4[Super Player]", "second", "green", "team", "z", "^4[Player]", "second", "normal", "team" } new const g_szSeparator[] = " ^1:" new const g_szDeathPrefix[][] = { "*DEAD* ", "" } new const g_szColors[][] = { "^1", "^3", "^4" } new g_szAdminPrefix[33][32] new const g_szTeamPrefix[][] = { "", "^1(Terrorist)", "^1(Counter-Terrorist)", "^1(Spectator)" } public plugin_init() { register_plugin("iPlay: Chat Manager", PLUGIN_VERSION, "iPlay.bg (OciXCrom)") register_cvar("CRXChatManager", PLUGIN_VERSION, FCVAR_SERVER|FCVAR_SPONLY|FCVAR_UNLOGGED) register_clcmd("say", "hookSay") register_clcmd("say_team", "hookSay") } public plugin_natives() register_native("GetPlayerPrefix", "_GetPlayerPrefix") public _GetPlayerPrefix(iPlugin, iParams) { new id = get_param(1) set_string(2, g_szAdminPrefix[id], get_param(3)) return 1 } public client_putinserver(id) g_szAdminPrefix[id][0] = EOS public hookSay(id) { new szArgs[192] read_args(szArgs, charsmax(szArgs)) remove_quotes(szArgs) switch(szArgs[0]) { case EOS, '@': return PLUGIN_HANDLED } new szMessage[192], szName[32], szDeathPrefix[32], szTeamPrefix[32], szAdminPrefix[32], szCommand[5], szNameColor[3], szChatColor[3] new iAlive = is_user_alive(id) ? 1 : 0, iPrefix = get_prefixnum(id), iColor = get_secondcolor(g_szAdminPrefixes[iPrefix + INFO_CLRSCND]), iTeam = get_user_team(id) copy(szDeathPrefix, charsmax(szDeathPrefix), g_szDeathPrefix[iAlive]) copy(szAdminPrefix, charsmax(szAdminPrefix), g_szAdminPrefixes[iPrefix + INFO_PREFIX]) if(!is_blank(szAdminPrefix)) add(szAdminPrefix, charsmax(szAdminPrefix), " ") copy(g_szAdminPrefix[id], charsmax(g_szAdminPrefix[]), szAdminPrefix) get_color(g_szAdminPrefixes[iPrefix + INFO_CLRNAME], szNameColor) get_color(g_szAdminPrefixes[iPrefix + INFO_CLRCHAT], szChatColor) read_argv(0, szCommand, charsmax(szCommand)) get_user_name(id, szName, charsmax(szName)) new bool:blTeam = szCommand[3] == '_' ? true : false if(blTeam) formatex(szTeamPrefix, charsmax(szTeamPrefix), "%s ", g_szTeamPrefix[iTeam]) formatex(szMessage, charsmax(szMessage), "%s%s%s%s%s%s %s%s", szDeathPrefix, szTeamPrefix, szAdminPrefix, szNameColor, szName, g_szSeparator, szChatColor, szArgs) new iPlayers[32], iPlayer, iPlayerAlive, iPnum get_players(iPlayers, iPnum) for(new i; i < iPnum; i++) { iPlayer = iPlayers[i] iPlayerAlive = is_user_alive(iPlayer) ? 1 : 0 if(iAlive == iPlayerAlive || (blTeam && iTeam == get_user_team(iPlayer)) || has_user_listen(iPlayer)) { switch(iColor) { case 0: { switch(iTeam) { case 1: ColorChat(iPlayer, RED, szMessage) case 2: ColorChat(iPlayer, BLUE, szMessage) case 3: ColorChat(iPlayer, GREY, szMessage) } } case 1: ColorChat(iPlayer, RED, szMessage) case 2: ColorChat(iPlayer, BLUE, szMessage) case 3: ColorChat(iPlayer, GREY, szMessage) } } } logChatMessage(szMessage) return PLUGIN_HANDLED } logChatMessage(szMessage[192]) { for(new i; i < sizeof(g_szColors); i++) replace_all(szMessage, charsmax(szMessage), g_szColors[i], "") log_amx(szMessage) } get_prefixnum(id) { #if defined USE_JAILBREAK if(is_user_simon(id)) return PREFIX_SIMON #endif new iPrefix static iFlags iFlags = get_user_flags(id) for(new i; i < sizeof(g_szAdminPrefixes) - 4; i += 5) { if(iFlags & read_flags(g_szAdminPrefixes[i])) { iPrefix = i break } } return iPrefix } get_color(szString[], szColor[3]) { new iColor switch(szString[0]) { case 't', 's': iColor = 1 case 'g': iColor = 2 } copy(szColor, charsmax(szColor), g_szColors[iColor]) } get_secondcolor(szString[]) { new iColor switch(szString[0]) { case 'r': iColor = 1 case 'b': iColor = 2 case 'g': iColor = 3 } return iColor } bool:is_blank(szString[]) return szString[0] == EOS ? true : false bool:has_user_listen(id) return get_user_flags(id) & read_flags(ADMIN_LISTEN) ? true : false /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE *{\\ rtf1\\ ansi\\ ansicpg1251\\ deff0\\ deflang1026{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ f0\\ fs16 \n\\ par } */
Заявка за плъгин - Player
Модератори: Extreme, Extreme, Extreme, Extreme, Extreme, Extreme, Extreme
Заявка за плъгин - Player
-
OciXCrom
Извън линия - Администратор
- Мнения: 7206
- Регистриран на: 06 Окт 2016, 19:20
- Местоположение: /resetscore
- Се отблагодари: 117 пъти
- Получена благодарност: 1295 пъти
- Обратна връзка:
Заявка за плъгин - Player
Защо ползваш стара версия на същия плъгин който ти предложиха в първото мнение?! Какъв е проблемът с новата версия, че не я ползваш?!
-
- Подобни теми
- Отговори
- Преглеждания
- Последно мнение
-
- 2 Отговори
- 414 Преглеждания
-
Последно мнение от Midnight1337
-
- 3 Отговори
- 688 Преглеждания
-
Последно мнение от mesentbygod
-
- 9 Отговори
- 3198 Преглеждания
-
Последно мнение от OciXCrom
-
- 6 Отговори
- 1362 Преглеждания
-
Последно мнение от tom1k
-
- 2 Отговори
- 1465 Преглеждания
-
Последно мнение от HarveyWNvm
-
- 2 Отговори
- 1533 Преглеждания
-
Последно мнение от jumby1990
-
- 1 Отговори
- 409 Преглеждания
-
Последно мнение от JonasM
Кой е на линия
Потребители разглеждащи този форум: 0 регистрирани и 58 госта