Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*=========================================
- [Owner] Nick : Red/Blue/White (Team Chat)
- [s.ADMIN] Nick : Green
- [ADMIN] Nick : Green
- [VIP] Nick : Green
- [Privileges System]
- [CHAT]
- =========================================*/
- #include <amxmodx>
- #include <amxmisc>
- #define VERSION "2.0"
- #define MAX_PREFIXES 10
- // Owner Prefix
- #define FLAGOWNER ADMIN_IMMUNITY
- #define PREFIXOWNER "Owner"
- // S.Admin Prefix
- #define FLAGSADMIN ADMIN_RESERVATION
- #define PREFIXSADMIN "S.ADMIN"
- // Admin Prefix
- #define FLAGADMIN ADMIN_BAN
- #define PREFIXADMIN "ADMIN"
- // VIP Prefix
- #define FLAGVIP ADMIN_KICK
- #define PREFIXVIP "VIP"
- new Owner, SAdmin, Admin,Vip;
- new SzMaxPlayers, SzSayText;
- new SzGTeam[3][] = {
- "Spectator",
- "Terrorist",
- "Counter-Terrorist"
- }
- public plugin_init()
- {
- register_plugin("Privileges Flags System", VERSION, "AM | Edit By CheezPuff");
- // Cvars Plugins
- Owner = register_cvar("Owner", "1");
- SAdmin = register_cvar("Sadmin", "1");
- Admin = register_cvar("Admin", "1");
- Vip = register_cvar("Vip", "1");
- register_cvar("admin_prefix_version", VERSION, FCVAR_SERVER|FCVAR_SPONLY);
- set_cvar_string("admin_prefix_version", VERSION);
- register_clcmd("say", "hook_say");
- register_clcmd("say_team", "hook_say_team");
- SzSayText = get_user_msgid ("SayText");
- SzMaxPlayers = get_maxplayers();
- register_message(SzSayText, "MsgDuplicate");
- }
- public MsgDuplicate(id){ return PLUGIN_HANDLED; }
- public hook_say(id)
- {
- new SzMessages[192], SzName[32];
- new SzAlive = is_user_alive(id);
- new SzGetFlag = get_user_flags(id);
- read_args(SzMessages, 191);
- remove_quotes(SzMessages);
- get_user_name(id, SzName, 31);
- if(!is_valid_msg(SzMessages))
- return PLUGIN_CONTINUE;
- if(get_pcvar_num(Owner) && SzGetFlag & FLAGOWNER)(SzAlive ? format(SzMessages, 191, "^4[%s] ^3%s : ^3%s", PREFIXOWNER, SzName, SzMessages) : format(SzMessages, 191, "^1*DEAD* ^4[%s] ^3%s : ^3%s", PREFIXOWNER, SzName, SzMessages));
- else if(get_pcvar_num(SAdmin) && SzGetFlag & FLAGSADMIN)(SzAlive ? format(SzMessages, 191, "^4[%s] ^3%s: ^4%s", PREFIXSADMIN, SzName, SzMessages) : format(SzMessages, 191, "^1*DEAD* ^4[%s] ^3%s : ^4%s", PREFIXSADMIN, SzName, SzMessages));
- else if(get_pcvar_num(Admin) && SzGetFlag & FLAGADMIN)(SzAlive ? format(SzMessages, 191, "^4[%s] ^3%s: ^4%s", PREFIXADMIN, SzName, SzMessages) : format(SzMessages, 191, "^1*DEAD* ^4[%s] ^3%s : ^4%s", PREFIXADMIN, SzName, SzMessages));
- else if(get_pcvar_num(Vip) && SzGetFlag & FLAGVIP)(SzAlive ? format(SzMessages, 191, "^4[%s] ^3%s: ^4%s", PREFIXVIP, SzName, SzMessages) : format(SzMessages, 191, "^1*DEAD* ^4[%s] ^3%s : ^4%s", PREFIXVIP, SzName, SzMessages));
- else if(get_pcvar_num(Owner) && !(SzGetFlag & FLAGOWNER))(SzAlive ? format(SzMessages, 191, "^3%s: ^1%s", SzName, SzMessages) : format(SzMessages, 191, "^1*DEAD* ^3%s : ^1%s", SzName, SzMessages));
- else if(get_pcvar_num(SAdmin) && !(SzGetFlag & FLAGSADMIN))(SzAlive ? format(SzMessages, 191, "^3%s: ^1%s", SzName, SzMessages) : format(SzMessages, 191, "^1*DEAD* ^3%s : ^1%s", SzName, SzMessages));
- else if(get_pcvar_num(Admin) && !(SzGetFlag & FLAGADMIN))(SzAlive ? format(SzMessages, 191, "^3%s: ^1%s", SzName, SzMessages) : format(SzMessages, 191, "^1*DEAD* ^3%s : ^1%s", SzName, SzMessages));
- else if(get_pcvar_num(Vip) && !(SzGetFlag & FLAGVIP))(SzAlive ? format(SzMessages, 191, "^3%s: ^1%s", SzName, SzMessages) : format(SzMessages, 191, "^1*DEAD* ^3%s : ^1%s", SzName, SzMessages));
- for(new i = 1; i <= SzMaxPlayers; i++)
- {
- if(!is_user_connected(i))
- continue;
- if(SzAlive && is_user_alive(i) || !SzAlive && !is_user_alive(i))
- {
- message_begin(MSG_ONE, get_user_msgid("SayText"), {0, 0, 0}, i);
- write_byte(id);
- write_string(SzMessages);
- message_end();
- }
- }
- return PLUGIN_CONTINUE;
- }
- public hook_say_team(id){
- new SzMessages[192], SzName[32];
- new SzAlive = is_user_alive(id);
- new SzGetFlag = get_user_flags(id);
- new SzGetTeam = get_user_team(id);
- read_args(SzMessages, 191);
- remove_quotes(SzMessages);
- get_user_name(id, SzName, 31);
- if(!is_valid_msg(SzMessages))
- return PLUGIN_CONTINUE;
- if(get_pcvar_num(Owner) && SzGetFlag & FLAGOWNER)(SzAlive ? format(SzMessages, 191, "^1(%s) ^4[%s] ^3%s: ^3%s", SzGTeam[SzGetTeam], PREFIXOWNER, SzName, SzMessages) : format(SzMessages, 191, "^1*DEAD* ^1(%s) ^4[%s] ^3%s : ^3%s", SzGTeam[SzGetTeam], PREFIXOWNER, SzName, SzMessages));
- else if(get_pcvar_num(SAdmin) && SzGetFlag & FLAGSADMIN)(SzAlive ? format(SzMessages, 191, "^1(%s) ^4[%s] ^3%s: ^4%s", SzGTeam[SzGetTeam], PREFIXSADMIN, SzName, SzMessages) : format(SzMessages, 191, "^1*DEAD* ^1(%s) ^4[%s] ^3%s : ^4%s", SzGTeam[SzGetTeam], PREFIXSADMIN, SzName, SzMessages));
- else if(get_pcvar_num(Admin) && SzGetFlag & FLAGADMIN)(SzAlive ? format(SzMessages, 191, "^1(%s) ^4[%s] ^3%s: ^4%s", SzGTeam[SzGetTeam], PREFIXADMIN, SzName, SzMessages) : format(SzMessages, 191, "^1*DEAD* ^1(%s) ^4[%s] ^3%s : ^4%s", SzGTeam[SzGetTeam], PREFIXADMIN, SzName, SzMessages));
- else if(get_pcvar_num(Vip) && SzGetFlag & FLAGVIP)(SzAlive ? format(SzMessages, 191, "^1(%s) ^4[%s] ^3%s: ^4%s", SzGTeam[SzGetTeam], PREFIXVIP, SzName, SzMessages) : format(SzMessages, 191, "^1*DEAD* ^1(%s) ^4[%s] ^3%s : ^4%s", SzGTeam[SzGetTeam], PREFIXVIP, SzName, SzMessages));
- else if(get_pcvar_num(Owner) && !(SzGetFlag & FLAGOWNER))(SzAlive ? format(SzMessages, 191, "^1(%s) ^3%s: ^1%s", SzGTeam[SzGetTeam], SzName, SzMessages) : format(SzMessages, 191, "^1*DEAD* ^1(%s) ^3%s : ^1%s", SzGTeam[SzGetTeam], SzName, SzMessages));
- else if(get_pcvar_num(SAdmin) && !(SzGetFlag & FLAGSADMIN))(SzAlive ? format(SzMessages, 191, "^1(%s) ^3%s: ^1%s", SzGTeam[SzGetTeam], SzName, SzMessages) : format(SzMessages, 191, "^1*DEAD* ^1(%s) ^3%s : ^1%s", SzGTeam[SzGetTeam], SzName, SzMessages));
- else if(get_pcvar_num(Admin) && !(SzGetFlag & FLAGADMIN))(SzAlive ? format(SzMessages, 191, "^1(%s) ^3%s: ^1%s", SzGTeam[SzGetTeam], SzName, SzMessages) : format(SzMessages, 191, "^1*DEAD* ^1(%s) ^3%s : ^1%s", SzGTeam[SzGetTeam], SzName, SzMessages));
- else if(get_pcvar_num(Vip) && !(SzGetFlag & FLAGVIP))(SzAlive ? format(SzMessages, 191, "^1(%s) ^3%s: ^1%s", SzGTeam[SzGetTeam], SzName, SzMessages) : format(SzMessages, 191, "^1*DEAD* ^1(%s) ^3%s : ^1%s", SzGTeam[SzGetTeam], SzName, SzMessages));
- for(new i = 1; i <= SzMaxPlayers; i++)
- {
- if(!is_user_connected(i))
- continue;
- if(get_user_team(i) != SzGetTeam)
- continue;
- if(SzAlive && is_user_alive(i) || !SzAlive && !is_user_alive(i))
- {
- message_begin(MSG_ONE, get_user_msgid("SayText"), {0, 0, 0}, i);
- write_byte(id);
- write_string(SzMessages);
- message_end();
- }
- }
- return PLUGIN_CONTINUE;
- }
- bool:is_valid_msg(const SzMessages[]){
- if( SzMessages[0] == '@'
- || !strlen(SzMessages)){ return false; }
- return true;
- }
- /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
- *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1031\\ f0\\ fs16 \n\\ par }
- */
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement