No to dodajesz warunek:
new authid[32]
get_user_authid(id, authid, 31)
if(equal(authid, "VALVE_ID", 8))
{
Sprawdza on, czy pierwsze 8 znaków to VALVE_ID
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.
|
Napisano 11.04.2015 18:00
No to dodajesz warunek:
new authid[32]
get_user_authid(id, authid, 31)
if(equal(authid, "VALVE_ID", 8))
{
Sprawdza on, czy pierwsze 8 znaków to VALVE_ID
Napisano 11.04.2015 18:25
#include <amxmodx>
#include <amxmisc>
#define PLUGIN "G_block_ns_range"
#define VERSION "0.1"
#define AUTHOR "grankee"
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
}
public client_authorized(id)
{
new authid[32]
get_user_authid(id,authid,31)
if(containi(authid,"STEAM_ID")==-1 && containi(authid,"VALVE")==-1)
return PLUGIN_CONTINUE
new file[84]
get_configsdir(file,83)
format(file,63,"%s/ip_range_block.ini",file)
if(!file_exists(file))
{
server_cmd("echo ^"Plik %s nie istnieje, nie ma blokady rang ip^"",file)
return PLUGIN_CONTINUE
}
new ip[16]
get_user_ip(id,ip,15,1)
new line=0,text[16],txtlen
while(read_file(file,line,text,15,txtlen))
{
if(containi(ip,text)==0)//ip gracza zawiera podane w pliku od pierwszego znaku
{
kickplr(id)
break
}
line++
}
return PLUGIN_CONTINUE
}
kickplr(id)
{
console_print(id, "*********************************");
console_print(id, "** ");
console_print(id, "** Twoje IP jest zablokowane !!! ");
console_print(id, "** Zakup oryginalne konto Steam ");
console_print(id, "** lub sciagnij patch v32 ");
console_print(id, "** ");
console_print(id, "*********************************");
set_task(1.0,"do_kick",id)
}
public do_kick(id)
{
if(is_user_connected(id))
{
server_cmd("kick #%d ^"Sprawdz konsole^"",get_user_userid(id))
}
}
Spróbuj tego, do piku dodajesz tylko tą część ip, która ma być sprawdzona. Plik ma być : addons/amxmodx/configs/ip_range_block.ini
Przykładowo dla zakresu 83.10 w pliku ma być tylko 83.10 i nic więcej, żadnego 83.10.0.0 albo 83.10.*.* po prostu 83.10 albo jak chcesz mniejszy zakres to 83.10.87 itd, mam nadzieje, że to rozumiałe ![]()
Użytkownik grankee edytował ten post 19.04.2015 15:47
Napisano 13.04.2015 14:16
L 04/13/2015 - 15:14:07: String formatted incorrectly - parameter 4 (total 3) L 04/13/2015 - 15:14:07: [AMXX] Displaying debug trace (plugin "ip_range_block.amxx") L 04/13/2015 - 15:14:07: [AMXX] Run time error 25: parameter error L 04/13/2015 - 15:14:07: [AMXX] [0] ip_range_block::client_authorized (line 21)
Napisano 14.04.2015 01:16
o boże ale głupi błąd zrobiłem, już zedytowałem posta, skompiluj sobie jeszcze raz
Napisano 19.04.2015 11:19
Zrobiłem wszystko według twojej instrukcji lecz nadal jestem wpuszczany na serwer. Plugin pojawia się na liście włączonych lecz nie powoduje błędów
Napisano 19.04.2015 12:39
Moim zdaniem ten warunek
if(!containi(authid,"STEAM_ID") && !containi(authid,"VALVE")) return PLUGIN_CONTINUE
powinien wyglądać tak
if(containi(authid,"STEAM_ID") == -1 && containi(authid,"VALVE") == -1) return PLUGIN_CONTINUE
Napisano 19.04.2015 15:48
Tak to jest jak sie na szybko pisze, poprawione. Teraz już musi działać.
0 użytkowników, 0 gości, 0 anonimowych