Witamy w Nieoficjalnym polskim support'cie AMX Mod X
Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
|
/vip i /admin
#1
Napisano 15.09.2009 15:56
Chodzi o plugin działający na takiej samej zasadzie, najlepiej prawie identyczny, tylko że zamiast adminów pokazuje po wpisaniu słowa "/vip" wszystkich graczy którzy mają flagę "i" ( czyli czat ) , i tekst "Dostępne VIPY" jest w kolorze żółtym. I też jakby po wpisaniu słowa /vip pokazywały się osoby z tą flagą "i" ale tylko wtedy, gdy nie mają flagi "h" ( czyli komend amx_cfg ) .. Czy istnieje może taki plugin? Chciałbym zrobić listę adminów i vipów na serwerze dodając oryginalny admin check pokazujący adminów no i ten drugi pokazujący tylko vipów..
Widzieliście kiedyś coś takiego? Może da się jakoś to zrobic?
#2
Napisano 15.09.2009 16:36
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "Home"
static const COLOR[] = "^x04" //green
new maxplayers
new gmsgSayText
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
gmsgSayText = get_user_msgid("SayText")
}
public handle_say(id) {
new said[192]
read_args(said,192)
if( ( containi(said, "who") != -1 && containi(said, "admin") != -1 ) || contain(said, "/vips") != -1 )
set_task(0.1,"print_adminlist",id)
return PLUGIN_CONTINUE
}
public print_adminlist(user)
{
new adminnames[33][32]
new message[256]
new id, count, x, len
for(id = 1 ; id <= maxplayers ; id++)
if(is_user_connected(id))
if(get_user_flags(id) & ADMIN_LEVEL_H)
get_user_name(id, adminnames[count++], 31)
len = format(message, 255, "%s VIP ONLINE: ",COLOR)
if(count > 0) {
for(x = 0 ; x < count ; x++) {
len += format(message[len], 255-len, "%s%s ", adminnames[x], x < (count-1) ? ", ":"")
if(len > 96 ) {
print_message(user, message)
len = format(message, 255, "%s ",COLOR)
}
}
print_message(user, message)
}
else {
len += format(message[len], 255-len, "No VIP online.")
print_message(user, message)
}
}
print_message(id, msg[]) {
message_begin(MSG_ONE, gmsgSayText, {0,0,0}, id)
write_byte(id)
write_string(msg)
message_end()
}
#3
Napisano 15.09.2009 17:11
Nie znaleziono klienta z tym nickiem lub ID
Jeszcze jakieś pomysły
#4
Napisano 15.09.2009 19:18
1 dajesz jak jest chyba na flage c?
a 2 dajesz na taka flage na jaka jest vip.
#5
Napisano 15.09.2009 19:35
Może mi ktoś w tym pomóc? .. aa, i ponawiam pytanie: czy da się zrobić aby w haśle /vip pokazywało napis żółty a nie zielony?
#6
Napisano 15.09.2009 19:45
#7
Napisano 15.09.2009 19:56
#8
Napisano 15.09.2009 20:34
#9
Napisano 15.09.2009 20:50
#10
Napisano 15.09.2009 20:50
#include <amxmodx>
/*---------------EDIT ME------------------*/
#define ADMIN_CHECK ADMIN_KICK
static const COLOR[] = "^x04" //green
static const CONTACT[] = ""
/*----------------------------------------*/
new maxplayers
new gmsgSayText
public plugin_init() {
register_plugin("Admin Check", "1.51", "OneEyed")
maxplayers = get_maxplayers()
gmsgSayText = get_user_msgid("SayText")
register_clcmd("say", "handle_say")
register_cvar("amx_contactinfo", CONTACT, FCVAR_SERVER)
}
public handle_say(id) {
new said[192]
read_args(said,192)
if( ( containi(said, "who") != -1 && containi(said, "vip") != -1 ) || contain(said, "/vip") != -1 )
set_task(0.1,"print_adminlist",id)
return PLUGIN_CONTINUE
}
public print_adminlist(user)
{
new adminnames[33][32]
new message[256]
new contactinfo[256], contact[112]
new id, count, x, len
for(id = 1 ; id <= maxplayers ; id++)
if(is_user_connected(id))
if(get_user_flags(id) & ADMIN_LEVEL_H)
get_user_name(id, adminnames[count++], 31)
len = format(message, 255, "%s ADMINS ONLINE: ",COLOR)
if(count > 0) {
for(x = 0 ; x < count ; x++) {
len += format(message[len], 255-len, "%s%s ", adminnames[x], x < (count-1) ? ", ":"")
if(len > 96 ) {
print_message(user, message)
len = format(message, 255, "%s ",COLOR)
}
}
print_message(user, message)
}
else {
len += format(message[len], 255-len, "No admins online.")
print_message(user, message)
}
get_cvar_string("amx_contactinfo", contact, 63)
if(contact[0]) {
format(contactinfo, 111, "%s Contact Server Admin -- %s", COLOR, contact)
print_message(user, contactinfo)
}
}
print_message(id, msg[]) {
message_begin(MSG_ONE, gmsgSayText, {0,0,0}, id)
write_byte(id)
write_string(msg)
message_end()
}
#11
Napisano 15.09.2009 21:00
#12
Napisano 15.09.2009 21:01
#13
Napisano 15.09.2009 21:03
ADMIN_ALL - którakolwiek
ADMIN_IMMUNITY - flaga "a"
ADMIN_RESERVATION - flaga "b"
ADMIN_KICK - flaga "c"
ADMIN_BAN - flaga "d"
ADMIN_SLAY - flaga "e"
ADMIN_MAP - flaga "f"
ADMIN_CVAR - flaga "g"
ADMIN_CFG - flaga "h"
ADMIN_CHAT - flaga "i" *
ADMIN_VOTE - flaga "j"
ADMIN_PASSWORD - flaga "k"
ADMIN_RCON - flaga "l"
ADMIN_LEVEL_A - flaga "m"
ADMIN_LEVEL_B - flaga "n"
ADMIN_LEVEL_C - flaga "o"
ADMIN_LEVEL_D - flaga "p"
ADMIN_LEVEL_E - flaga "q"
ADMIN_LEVEL_F - flaga "r"
ADMIN_LEVEL_G - flaga "s"
ADMIN_LEVEL_H - flaga "t"
ADMIN_MENU - flaga "u"
ADMIN_ADMIN - flaga "y"
ADMIN_USER - flaga "z"
for(id = 1 ; id <= maxplayers ; id++)
if(is_user_connected(id))
if(get_user_flags(id) & ADMIN_LEVEL_H)
get_user_name(id, adminnames[count++], 31)
UP za pozno
#14
Napisano 15.09.2009 21:06
- jeżeli się nie da to czy da się zrobić aby listę adminów ( tym razem przez słowo /admin ) pokazywało na czerwono?
Oczywiście już bym sobie to zmienił sam jeżeli chodzi o czerwoną wersję admin_checka tylko podałbyś mi gdzie dokładnie to znaleźć
// edit
- i żeby oryginalny admin check reagował na flagę "h"
- rozumiesz, żeby każdy z adminów miał flagę "h" na którą będzie reagowało słowo /admin, a vip flagę "t" przez co będą się pokazywać vipy po wpisaniu /vip. W ten sposób gdy admin nie będzie miał flagi "t" to nie pokaże sie jego nick w vipach online
// edit2
Poradziłem sobie ze wszystkim oprócz kolorami.. da się je zmienić na takie jakie mówiłem?
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych


Dodatki SourceMod



Temat jest zamknięty









