Spoiler
#include <amxmodx>
new HIGHPING_MAX = 150 // Maksymalny dopuszczalny ping u gracza.
new HIGHPING_TIME = 6 // Czas po którym osoba z wysokim pingiem jest wyrzucana.
new HIGHPING_TESTS = 3 // Ilosc sprawdzen zanim cos zrobi.
new HIGHPING_BANTIME = 5 // Czas Bana
new iNumTests[33]
public plugin_init() {
register_plugin("High Ping Baned PL","1.1","Mis")
if (HIGHPING_TIME < 2) HIGHPING_TIME = 1
if (HIGHPING_TESTS < 2) HIGHPING_TESTS = 1
return PLUGIN_CONTINUE
}
public client_disconnect(id) {
remove_task(id)
return PLUGIN_CONTINUE
}
public client_putinserver(id) {
iNumTests[id] = 0
if (!is_user_bot(id)) {
new param[1]
param[0] = id
set_task(30.0, "showWarn", id, param, 1)
}
return PLUGIN_CONTINUE
}
kickPlayer(id) {
new name[32]
get_user_name(id, name, 31)
new uID = get_user_userid(id)
server_cmd("amx_ban %d #%d Lagujesz", HIGHPING_BANTIME, uID)
client_cmd(id, "echo ^"[Ping] Przykro mi, masz zbyt wysoki ping. Sprobuj pozniej...^"; disconnect")
client_print(0, print_chat, "[Ping] %s zostal zbanowany za wysoki ping! Czas bana: 5 minut", name)
return PLUGIN_CONTINUE
}
public checkPing(param[]) {
new id = param[0]
if ((get_user_flags(id) & ADMIN_IMMUNITY) || (get_user_flags(id) & ADMIN_RESERVATION)) {
remove_task(id)
client_print(id, print_chat, "[Ping] Masz Immunited. Sprawdanie pingu Cie nie obowiazuje.")
return PLUGIN_CONTINUE
}
new p, l
get_user_ping(id, p, l)
if (p > HIGHPING_MAX)
++iNumTests[id]
else
if (iNumTests[id] > 0) --iNumTests[id]
if (iNumTests[id] > HIGHPING_TESTS)
kickPlayer(id)
return PLUGIN_CONTINUE
}
public showWarn(param[]) {
client_print(param[0], print_chat, "[HPB] Gracze z pingiem wiekszym niz %dms zostana zbanowani! Czas bana aktualnie wynosi: 5 minut", HIGHPING_MAX)
set_task(float(HIGHPING_TIME), "checkPing", param[0], param, 1, "b")
return PLUGIN_CONTINUE
}
new HIGHPING_MAX = 150 // Maksymalny dopuszczalny ping u gracza.
new HIGHPING_TIME = 6 // Czas po którym osoba z wysokim pingiem jest wyrzucana.
new HIGHPING_TESTS = 3 // Ilosc sprawdzen zanim cos zrobi.
new HIGHPING_BANTIME = 5 // Czas Bana
new iNumTests[33]
public plugin_init() {
register_plugin("High Ping Baned PL","1.1","Mis")
if (HIGHPING_TIME < 2) HIGHPING_TIME = 1
if (HIGHPING_TESTS < 2) HIGHPING_TESTS = 1
return PLUGIN_CONTINUE
}
public client_disconnect(id) {
remove_task(id)
return PLUGIN_CONTINUE
}
public client_putinserver(id) {
iNumTests[id] = 0
if (!is_user_bot(id)) {
new param[1]
param[0] = id
set_task(30.0, "showWarn", id, param, 1)
}
return PLUGIN_CONTINUE
}
kickPlayer(id) {
new name[32]
get_user_name(id, name, 31)
new uID = get_user_userid(id)
server_cmd("amx_ban %d #%d Lagujesz", HIGHPING_BANTIME, uID)
client_cmd(id, "echo ^"[Ping] Przykro mi, masz zbyt wysoki ping. Sprobuj pozniej...^"; disconnect")
client_print(0, print_chat, "[Ping] %s zostal zbanowany za wysoki ping! Czas bana: 5 minut", name)
return PLUGIN_CONTINUE
}
public checkPing(param[]) {
new id = param[0]
if ((get_user_flags(id) & ADMIN_IMMUNITY) || (get_user_flags(id) & ADMIN_RESERVATION)) {
remove_task(id)
client_print(id, print_chat, "[Ping] Masz Immunited. Sprawdanie pingu Cie nie obowiazuje.")
return PLUGIN_CONTINUE
}
new p, l
get_user_ping(id, p, l)
if (p > HIGHPING_MAX)
++iNumTests[id]
else
if (iNumTests[id] > 0) --iNumTests[id]
if (iNumTests[id] > HIGHPING_TESTS)
kickPlayer(id)
return PLUGIN_CONTINUE
}
public showWarn(param[]) {
client_print(param[0], print_chat, "[HPB] Gracze z pingiem wiekszym niz %dms zostana zbanowani! Czas bana aktualnie wynosi: 5 minut", HIGHPING_MAX)
set_task(float(HIGHPING_TIME), "checkPing", param[0], param, 1, "b")
return PLUGIN_CONTINUE
}
W amxbans jako nick admina wyświetla mi nazwe serwera a jest ona długa i rozwala mi troche wygląd i mi to nie pasuje
Da się zrobić tak, że będzie banowało ludzi i będzie wyświetlało nick admina w amxbans jako "Serwer"?