rutbe plugin istek
Moderatör: Moderatörler
-
Konu Sahibi - Mesajlar: 524
- Kayıt: Cmt Kas 04, 2017 10:56 pm
- Konum: Ankara
- Server Ip/DNS: 213.238.173.xx
- Clan İsmi: xx
rutbe plugin istek
selam değerli forum sakinleri hayırlı sahurlar başlıkta belirttiğim gibi bir rütbe plugini arıyorum fakat admin tag ile çakışmayan serverimde var olan rutbe eklentisi admin tag ile çakışıyor elinde olan paylasabilirmi şimdiden teşekkürler https://i.hizliresim.com/4zg9jL.jpg
Bu mesaja eklenen dosyaları görüntülemek için gerekli izinlere sahip değilsiniz.
Link: | |
Linklerini gizle |
-
Konu Sahibi - Mesajlar: 524
- Kayıt: Cmt Kas 04, 2017 10:56 pm
- Konum: Ankara
- Server Ip/DNS: 213.238.173.xx
- Clan İsmi: xx
-
Konu Sahibi - Mesajlar: 524
- Kayıt: Cmt Kas 04, 2017 10:56 pm
- Konum: Ankara
- Server Ip/DNS: 213.238.173.xx
- Clan İsmi: xx
-
- Mesajlar: 2574
- Kayıt: Çrş Ağu 23, 2017 9:17 pm
-
Konu Sahibi - Mesajlar: 524
- Kayıt: Cmt Kas 04, 2017 10:56 pm
- Konum: Ankara
- Server Ip/DNS: 213.238.173.xx
- Clan İsmi: xx
rutbe plugin istek
@Colditz
Kod: Tümünü seç
#include <amxmodx>
#include <amxmisc>
#include <csstats>
#define PLUGIN "Admin Chat Colors"
#define VERSION "2.0"
#define AUTHOR "Arion"
#define ACCESS_LEVEL ADMIN_RESERVATION
#define ADMIN_LISTEN ADMIN_ALL
#define RANK_NOTHING 0
#define RANK_PRIVATE 1
#define RANK_PRIVATE_FIRST_CLASS 2
#define RANK_CORPORAL 3
#define RANK_SERGEANT 4
#define RANK_STAFF_SERGEANT 5
#define RANK_GUNNERY_SERGEANT 6
#define RANK_MASTER_SERGEANT 7
#define RANK_COMMAND_SERGEANT 8
#define RANK_SECOND_LIEUTENANT 9
#define RANK_FIRST_LIEUTENANT 10
#define RANK_COLONEL 11
#define RANK_BRIGADIER_GENERAL 12
#define RANK_MAJOR_GENERAL 13
#define RANK_LIEUTENANT_GENERAL 14
#define RANK_GENERAL 15
#define RANK_GENERAL_OF_THE_ARMY 16
#define MAXRANKS 17
new PlayerRank[33]
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 rankNames[MAXRANKS][] =
{
"[Onbasi]",
"[Cavus]",
"[Uzman]",
"[Astsubay]",
"[Astegmen]",
"[Tegmen]",
"[Ustegmen]",
"[Yuzbasi]",
"[Binbasi]",
"[Yarbay]",
"[Albay]",
"[Tuggeneral]",
"[Tumgeneral]",
"[Korgeneral]",
"[GenelKurmay Baskani]",
"[Maresal]",
"[EFSANE LIDER]",
}
new const rankXP[MAXRANKS] =
{
0, 10, 25, 50, 100, 200, 350, 500, 750, 1000, 1250, 1500, 1750, 2000, 2500, 3000, 5000
}
public plugin_init()
{
register_plugin (PLUGIN, VERSION, AUTHOR)
g_MessageColor = register_cvar ("amx_color", "2") // Message colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red
g_NameColor = register_cvar ("amx_namecolor", "6") // Name colors: [1] Default Yellow, [2] Green, [3] White, [4] Blue, [5] Red, [6] Team-color
g_AdminListen = register_cvar ("amx_listen", "1") // Set whether admins see or not all messages (Alive, dead and team-only)
sayText = get_user_msgid ("SayText")
teamInfo = get_user_msgid ("TeamInfo")
maxPlayers = get_maxplayers()
register_message (sayText, "avoid_duplicated")
register_clcmd ("amx_color", "set_color", ACCESS_LEVEL, "<color>")
register_clcmd ("amx_namecolor", "set_name_color", ACCESS_LEVEL, "<color>")
register_clcmd ("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
}
public hook_say(id)
{
read_args (message, 191)
remove_quotes (message)
if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
// Gungame commands and empty messages
return PLUGIN_CONTINUE
new name[32]
get_user_name (id, name, 31)
new bool:admin = false
if (get_user_flags(id) & ACCESS_LEVEL)
admin = true
new isAlive
if (is_user_alive (id))
{
isAlive = 1
alive = "^x01"
}
else
{
isAlive = 0
alive = "^x01*OLU* "
}
static color[10]
static stats[8], hits[8]
get_user_stats(id, stats, hits)
new currentPlayerRank = 0;
while(currentPlayerRank < (MAXRANKS - 1))
{
if(stats[0] >= rankXP[currentPlayerRank + 1])
++currentPlayerRank;
else
break;
}
PlayerRank[id] = currentPlayerRank;
if (admin)
{
// Name
switch (get_pcvar_num (g_NameColor))
{
case 1:
format (strName, 191, "^x04%s %s%s", rankNames[currentPlayerRank], alive, name)
case 2:
format (strName, 191, "^x04%s %s^x04%s", rankNames[currentPlayerRank], alive, name)
case 3:
{
color = "SPECTATOR"
format (strName, 191, "^x04%s %s^x03%s", rankNames[currentPlayerRank], alive, name)
}
case 4:
{
color = "CT"
format (strName, 191, "^x04%s %s^x03%s", rankNames[currentPlayerRank], alive, name)
}
case 5:
{
color = "TERRORIST"
format (strName, 191, "^x04%s %s^x03%s", rankNames[currentPlayerRank], alive, name)
}
case 6:
{
get_user_team (id, color, 9)
format (strName, 191, "^x04%s %s^x03%s", rankNames[currentPlayerRank], alive, name)
}
}
// Message
switch (get_pcvar_num (g_MessageColor))
{
case 1: // Yellow
format (strText, 191, "%s", message)
case 2: // Green
format (strText, 191, "^x04%s", message)
case 3: // White
{
copy (color, 9, "SPECTATOR")
format (strText, 191, "^x03%s", message)
}
case 4: // Blue
{
copy (color, 9, "CT")
format (strText, 191, "^x03%s", message)
}
case 5: // Red
{
copy (color, 9, "TERRORIST")
format (strText, 191, "^x03%s", message)
}
}
}
else // Player is not admin. Team-color name : Yellow message
{
get_user_team (id, color, 9)
format (strName, 191, "^x04%s %s^x03%s", rankNames[currentPlayerRank], alive, name)
format (strText, 191, "%s", message)
}
format (message, 191, "%s^x01 : %s", strName, strText)
sendMessage (color, isAlive) // Sends the colored message
return PLUGIN_CONTINUE
}
public hook_teamsay(id)
{
new playerTeam = get_user_team(id)
new playerTeamName[19]
switch (playerTeam) // Team names which appear on team-only messages
{
case 1:
copy (playerTeamName, 11, "TEROR")
case 2:
copy (playerTeamName, 18, "POLIS")
default:
copy (playerTeamName, 9, "IZLEYICI")
}
read_args (message, 191)
remove_quotes (message)
if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, "")) // Ignores Admin Hud Messages, Admin Slash commands,
// Gungame commands and empty messages
return PLUGIN_CONTINUE
new name[32]
get_user_name (id, name, 31)
new bool:admin = false
if (get_user_flags(id) & ACCESS_LEVEL)
admin = true
new isAlive
if (is_user_alive (id))
{
isAlive = 1
alive = "^x01"
}
else
{
isAlive = 0
alive = "^x01*OLU* "
}
static color[10]
static stats[8], hits[8]
get_user_stats(id, stats, hits)
new currentPlayerRank = 0;
while(currentPlayerRank < (MAXRANKS - 1))
{
if(stats[0] >= rankXP[currentPlayerRank + 1])
++currentPlayerRank;
else
break;
}
PlayerRank[id] = currentPlayerRank;
if (admin)
{
// Name
switch (get_pcvar_num (g_NameColor))
{
case 1:
format (strName, 191, "^x04%s %s(%s) %s", rankNames[currentPlayerRank], alive, playerTeamName, name)
case 2:
format (strName, 191, "^x04%s %s(%s) ^x04%s", rankNames[currentPlayerRank], alive, playerTeamName, name)
case 3:
{
color = "SPECTATOR"
format (strName, 191, "^x04%s %s(%s) ^x03%s", rankNames[currentPlayerRank], alive, playerTeamName, name)
}
case 4:
{
color = "CT"
format (strName, 191, "^x04%s %s(%s) ^x03%s", rankNames[currentPlayerRank], alive, playerTeamName, name)
}
case 5:
{
color = "TERRORIST"
format (strName, 191, "^x04%s %s(%s) ^x03%s", rankNames[currentPlayerRank], alive, playerTeamName, name)
}
case 6:
{
get_user_team (id, color, 9)
format (strName, 191, "^x04%s %s(%s) ^x03%s", rankNames[currentPlayerRank], alive, playerTeamName, name)
}
}
// Message
switch (get_pcvar_num (g_MessageColor))
{
case 1: // Yellow
format (strText, 191, "%s", message)
case 2: // Green
format (strText, 191, "^x04%s", message)
case 3: // White
{
copy (color, 9, "SPECTATOR")
format (strText, 191, "^x03%s", message)
}
case 4: // Blue
{
copy (color, 9, "CT")
format (strText, 191, "^x03%s", message)
}
case 5: // Red
{
copy (color, 9, "TERRORIST")
format (strText, 191, "^x03%s", message)
}
}
}
else // Player is not admin. Team-color name : Yellow message
{
get_user_team (id, color, 9)
format (strName, 191, "^x04%s %s(%s) ^x03%s", rankNames[currentPlayerRank], alive, playerTeamName, name)
format (strText, 191, "%s", message)
}
format (message, 191, "%s ^x01: %s", strName, strText)
sendTeamMessage (color, isAlive, playerTeam) // Sends the colored message
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_cvar_num ("amx_color", newColor)
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_cvar_num ("amx_namecolor", 2)
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_cvar_num ("amx_namecolor", newColor)
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_cvar_num ("amx_color", 2)
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_cvar_num ("amx_listen", newListen)
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(is_user_alive(player))
{
get_user_team (player, teamName, 9) // Stores user's team name to change back after sending the message
changeTeamInfo (player, color) // Changes user's team according to color choosen
writeMessage (player, message) // Writes the message on player's chat
changeTeamInfo (player, teamName) // Changes user's team back to original
}
else
{
get_user_team (player, teamName, 9) // Stores user's team name to change back after sending the message
changeTeamInfo (player, color) // Changes user's team according to color choosen
writeMessage (player, message) // Writes the message on player's chat
changeTeamInfo (player, teamName) // Changes user's team back to original
}
}
}
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)
{
if (is_user_alive(player))
{
get_user_team (player, teamName, 9) // Stores user's team name to change back after sending the message
changeTeamInfo (player, color) // Changes user's team according to color choosen
writeMessage (player, message) // Writes the message on player's chat
changeTeamInfo (player, teamName) // Changes user's team back to original
}
else
{
get_user_team (player, teamName, 9) // Stores user's team name to change back after sending the message
changeTeamInfo (player, color) // Changes user's team according to color choosen
writeMessage (player, message) // Writes the message on player's chat
changeTeamInfo (player, teamName) // Changes user's team back to original
}
}
}
}
public changeTeamInfo (player, team[])
{
message_begin (MSG_ONE, teamInfo, _, player) // Tells to to modify teamInfo (Which is responsable for which time player is)
write_byte (player) // Write byte needed
write_string (team) // Changes player's team
message_end() // Also Needed
}
public writeMessage (player, message[])
{
message_begin (MSG_ONE, sayText, {0, 0, 0}, player) // Tells to modify sayText (Which is responsable for writing colored messages)
write_byte (player) // Write byte needed
write_string (message) // Effectively write the message, finally, afterall
message_end () // Needed as always
}
Link: | |
Linklerini gizle |
-
- Mesajlar: 2574
- Kayıt: Çrş Ağu 23, 2017 9:17 pm
rutbe plugin istek
Mesajınızı [ code ] komutu ile yeniler misiniz? Başına ve sonuna bu komutu ekleyin. Daha kolay yardımcı olabilirim.
[ code ] (Başına)
[ /code] (Sonuna)
[ code ] (Başına)
[ /code] (Sonuna)
Link: | |
Linklerini gizle |
-
Konu Sahibi - Mesajlar: 524
- Kayıt: Cmt Kas 04, 2017 10:56 pm
- Konum: Ankara
- Server Ip/DNS: 213.238.173.xx
- Clan İsmi: xx
rutbe plugin istek
@Colditz kullandıgım plugin bu konuda var yardımcı olurmusun eklenti-istekleri/rutbe-t27275.html
Link: | |
Linklerini gizle |
-
- Mesajlar: 2574
- Kayıt: Çrş Ağu 23, 2017 9:17 pm
rutbe plugin istek
@WolfsBey
Şu an sahur vakti geldi. Sabah sağlam kafayla yaparım eğer kimse yapmazsa
Şu an sahur vakti geldi. Sabah sağlam kafayla yaparım eğer kimse yapmazsa
Link: | |
Linklerini gizle |
-
Konu Sahibi - Mesajlar: 524
- Kayıt: Cmt Kas 04, 2017 10:56 pm
- Konum: Ankara
- Server Ip/DNS: 213.238.173.xx
- Clan İsmi: xx
rutbe plugin istek
@Colditz tamam kardeşim ama çok acil lazım inan serveri mafediyo cift yazı olayı kurucu tagı ve astegmen tagı cakısıyor
Link: | |
Linklerini gizle |
-
- Mesajlar: 2574
- Kayıt: Çrş Ağu 23, 2017 9:17 pm
rutbe plugin istek
Çakışmayı engellemek için admin tag eklentisinin içine rütbe eklenmesi gerek. Aksi takdirde çakışma yapacaktır.
Link: | |
Linklerini gizle |