Poprawienie kodu
emblaze
27.09.2009
Witam.
Pisze taki krótki plugin i oczywiście mam problem...
SMA:
Pisze taki krótki plugin i oczywiście mam problem...
SMA:
#include <amxmodx> #include <amxmisc> #define PLUGIN "Admin Nicks" #define VERSION "1.0" #define AUTHOR "emblaze" #define check get_user_flags(id) #define HA ADMIN_IMMUNITY #define A ADMIN_KICK #define S ADMIN_RESERVATION public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) } public client_authorized (id) { new name[32] get_user_name(id, name, 31) if(check & HA) { client_cmd(id, "name ^"[HeadAdmin] %s^"", name) } else if(check & A ) { client_cmd(id, "name ^"[Admin] %s^"", name) } else if(check & S) { client_cmd(id, "name ^"[Slot] %s^"", name) } return PLUGIN_CONTINUE }Plugin ma dodawać adminom, Headadminom, i tym co mają slota dodać przed nick taką jakby range, tylko problem w tym, że po zmianie mapy znowu dodaje to przed nick i wtedy np. jest [Admin] [Admin] emblaze Dałby ktoś rade poprawić, tak aby jak nick bedzie juz zmieniony, to żeby nie zmieniało
wizu
27.09.2009
Możesz użyć funkcji contain i sprawdzać, czy dany ciąg znaków jest już w nicku.
mgr inż. Pavulon
27.09.2009
A jak ci sie podoba cos takiego:
#include <amxmodx> #define PLUGIN "Admin Nicks" #define VERSION "1.0" #define AUTHOR "emblaze" new flagi[] = { ADMIN_IMMUNITY, ADMIN_KICK, ADMIN_RESERVATION } new tagi[][] = { "[HeadAdmin]", "[Admin]", "[Slot]" } public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) } public client_authorized (id) { new username[32] get_user_name(id, username, 31) new user_flags = get_user_flags(id) for (new i; i<sizeof(flagi); i++) if (user_flags & flagi[i]) { if (contain(username, tagi[i])==-1) client_cmd(id, "name ^"%s %s^"", tagi[i], username) break } }
emblaze
27.09.2009
wizu, mógłbyś pokazać w praktyce ?
@edit: Pravulon, sprawdze jak bedę w domu
Dobra, dzięki, działa ;D Lecą pomógł
@edit: Pravulon, sprawdze jak bedę w domu
Dobra, dzięki, działa ;D Lecą pomógł