Tag için yardım acil ?
Gönderilme zamanı: Cmt Haz 03, 2017 9:58 am
arkadaşlar şu şekilde ayarlamak istiyorumbide şu şekilde olsa
dokusu olan yönetiici
racon olan kurucu
ban olan admin
cvar olan vipadmin
slot olan yeşil
dokusu olan yönetiici
racon olan kurucu
ban olan admin
cvar olan vipadmin
slot olan yeşil
Kod: Tümünü seç
#include <amxmodx>
#include <amxmisc>
#define PLUGIN "Admin Yesil Yazi & Adminlerde Tag"
#define VERSION "2.2"
#define AUTHOR "EDITLEYEN: qurteisa"
#define ACCESS_LEVEL ADMIN_IMMUNITY
#define ADMIN_LISTEN ADMIN_LEVEL_C
new message[192]
new sayText
new teamInfo
new maxPlayers
new g_MessageColor
new g_NameColor
new g_AdminListen
new strName[191]
new strText[191]
new alive[11]
new const g_szTag[][] = {
"Svsahibi",
"Yonetici",
"Vip-Admin",
"Admin",
"Slot~"
}
new const g_iTagFlag[sizeof(g_szTag)] = {
ADMIN_IMMUNITY,
ADMIN_RCON,
ADMIN_CVAR,
ADMIN_BAN,
ADMIN_RESERVATION
}
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
g_MessageColor = register_cvar("amx_color", "2")
g_NameColor = register_cvar("amx_namecolor", "6")
g_AdminListen = register_cvar("amx_listen", "1")
sayText = get_user_msgid("SayText")
teamInfo = get_user_msgid("TeamInfo")
maxPlayers = get_maxplayers()
register_message(sayText, "avoid_duplicated")
register_concmd("amx_color", "set_color", ACCESS_LEVEL, "<color>")
register_concmd("amx_namecolor", "set_name_color", ACCESS_LEVEL, "<color>")
register_concmd("amx_listen", "set_listen", ACCESS_LEVEL, "<1 | 0>")
register_clcmd("say", "hook_say")
register_clcmd("say_team", "hook_teamsay")
}
public avoid_duplicated(msgId, msgDest, receiver)
{
return PLUGIN_HANDLED
}
get_tag_index(id)
{
new flags = get_user_flags(id)
for(new i = 1; i < sizeof(g_iTagFlag); i++)
{
if(check_admin_flag(flags, g_iTagFlag[i]))
{
return i
}
}
return 0
}
check_admin_flag(flags, flag)
{
if(flag == ADMIN_ADMIN)
{
return ((flags & ~ADMIN_USER) > 0)
}
else if(flag == ADMIN_ALL)
{
return 1
}
return (flags & flag)
}
public hook_say(id)
{
read_args(message, 191)
remove_quotes(message)
if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, ""))
return PLUGIN_CONTINUE
new name[32]
get_user_name(id, name, 31)
new admin = get_tag_index(id)
new isAlive
if(is_user_alive(id))
{
isAlive = 1
alive = "^x01"
}
else
{
isAlive = 0
alive = "^x01*DEAD* "
}
static color[10]
if(admin)
{
// İsim
switch(get_pcvar_num(g_NameColor))
{
case 1:
format(strName, 191, "^x04%s %s%s", g_szTag[admin], alive, name)
case 2:
format(strName, 191, "^x04%s %s^x04%s ", g_szTag[admin], alive, name)
case 3:
{
color = "SPECTATOR"
format(strName, 191, "^x04%s %s^x03%s ", g_szTag[admin], alive, name)
}
case 4:
{
color = "CT"
format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
}
case 5:
{
color = "TERRORIST"
format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
}
case 6:
{
get_user_team(id, color, 9)
format(strName, 191, "^x04%s %s^x03%s", g_szTag[admin], alive, name)
}
}
// Mesaj
switch(get_pcvar_num(g_MessageColor))
{
case 1: // Sari
format(strText, 191, "%s", message)
case 2: // Yesil
format(strText, 191, "^x04%s", message)
case 3: // Beyaz
{
copy(color, 9, "SPECTATOR")
format(strText, 191, "^x03%s", message)
}
case 4: // Mavi
{
copy(color, 9, "CT")
format(strText, 191, "^x03%s", message)
}
case 5: // Kirmizi
{
copy(color, 9, "TERRORIST")
format(strText, 191, "^x03%s", message)
}
}
}
else
{
get_user_team(id, color, 9)
format(strName, 191, "%s^x03%s", alive, name)
format(strText, 191, "%s", message)
}
format(message, 191, "%s^x01 : %s", strName, strText)
sendMessage(color, isAlive)
return PLUGIN_CONTINUE
}
public hook_teamsay(id)
{
new playerTeam = get_user_team(id)
new playerTeamName[19]
switch(playerTeam)
{
case 1:
copy(playerTeamName, 11, "Terrorists")
case 2:
copy(playerTeamName, 18, "Counter-Terrorists")
default:
copy(playerTeamName, 9, "Spectator")
}
read_args(message, 191)
remove_quotes(message)
if(message[0] == '@' || message[0] == '/' || message[0] == '!' || equal(message, ""))
return PLUGIN_CONTINUE
new name[32]
get_user_name(id, name, 31)
new admin = get_tag_index(id)
new isAlive
if(is_user_alive(id))
{
isAlive = 1
alive = "^x01"
}
else
{
isAlive = 0
alive = "^x01*DEAD* "
}
static color[10]
if(admin)
{
// İsim
switch(get_pcvar_num(g_NameColor))
{
case 1:
format(strName, 191, "%s(%s)^x04%s %s", alive, playerTeamName, g_szTag[admin], name)
case 2:
format(strName, 191, "%s(%s)^x04%s ^x04%s", alive, playerTeamName, g_szTag[admin], name)
case 3:
{
color = "SPECTATOR"
format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
}
case 4:
{
color = "CT"
format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
}
case 5:
{
color = "TERRORIST"
format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
}
case 6:
{
get_user_team(id, color, 9)
format(strName, 191, "%s(%s)^x04%s ^x03%s", alive, playerTeamName, g_szTag[admin], name)
}
}
// Message
switch(get_pcvar_num(g_MessageColor))
{
case 1: // Sari
format(strText, 191, "%s", message)
case 2: // Yesil
format(strText, 191, "^x04%s", message)
case 3: // Beyaz
{
copy(color, 9, "SPECTATOR")
format(strText, 191, "^x03%s", message)
}
case 4: // Mavi
{
copy(color, 9, "CT")
format(strText, 191, "^x03%s", message)
}
case 5: // Kirmizi
{
copy(color, 9, "TERRORIST")
format(strText, 191, "^x03%s", message)
}
}
}
else
{
get_user_team(id, color, 9)
format(strName, 191, "%s(%s) ^x03%s", alive, playerTeamName, name)
format(strText, 191, "%s", message)
}
format(message, 191, "%s ^x01: %s", strName, strText)
sendTeamMessage(color, isAlive, playerTeam)
return PLUGIN_CONTINUE
}
public set_color(id, level, cid)
{
if(!cmd_access(id, level, cid, 2))
return PLUGIN_HANDLED
new arg[1], newColor
read_argv(1, arg, 1)
newColor = str_to_num(arg)
if(newColor >= 1 && newColor <= 5)
{
set_pcvar_num(g_MessageColor, newColor)
if(get_pcvar_num(g_NameColor) != 1 &&
((newColor == 3 && get_pcvar_num(g_NameColor) != 3)
||(newColor == 4 && get_pcvar_num(g_NameColor) != 4)
||(newColor == 5 && get_pcvar_num(g_NameColor) != 5)))
{
set_pcvar_num(g_NameColor, 2)
}
}
return PLUGIN_HANDLED
}
public set_name_color(id, level, cid)
{
if(!cmd_access(id, level, cid, 2))
return PLUGIN_HANDLED
new arg[1], newColor
read_argv(1, arg, 1)
newColor = str_to_num(arg)
if(newColor >= 1 && newColor <= 6)
{
set_pcvar_num(g_NameColor, newColor)
if((get_pcvar_num(g_MessageColor) != 1
&&((newColor == 3 && get_pcvar_num(g_MessageColor) != 3)
||(newColor == 4 && get_pcvar_num(g_MessageColor) != 4)
||(newColor == 5 && get_pcvar_num(g_MessageColor) != 5)))
|| get_pcvar_num(g_NameColor) == 6)
{
set_pcvar_num(g_MessageColor, 2)
}
}
return PLUGIN_HANDLED
}
public set_listen(id, level, cid)
{
if(!cmd_access(id, level, cid, 2))
return PLUGIN_HANDLED
new arg[1], newListen
read_argv(1, arg, 1)
newListen = str_to_num(arg)
set_pcvar_num(g_AdminListen, newListen)
return PLUGIN_HANDLED
}
public sendMessage(color[], alive)
{
new teamName[10]
for(new player = 1; player < maxPlayers; player++)
{
if(!is_user_connected(player))
continue
if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
{
get_user_team(player, teamName, 9)
changeTeamInfo(player, color)
writeMessage(player, message)
changeTeamInfo(player, teamName)
}
}
}
public sendTeamMessage(color[], alive, playerTeam)
{
new teamName[10]
for(new player = 1; player < maxPlayers; player++)
{
if(!is_user_connected(player))
continue
if(get_user_team(player) == playerTeam || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
{
if(alive && is_user_alive(player) || !alive && !is_user_alive(player) || get_pcvar_num(g_AdminListen) && get_user_flags(player) & ADMIN_LISTEN)
{
get_user_team(player, teamName, 9)
changeTeamInfo(player, color)
writeMessage(player, message)
changeTeamInfo(player, teamName)
}
}
}
}
public changeTeamInfo(player, team[])
{
message_begin(MSG_ONE, teamInfo, _, player)
write_byte(player)
write_string(team)
message_end()
}
public writeMessage(player, message[])
{
message_begin(MSG_ONE, sayText, {0, 0, 0}, player)
write_byte(player)
write_string(message)
message_end()
}