amx_bannick gibi bir konsol komutuyla belirli nicki banlamak için bir plugin yazılabilirmi ? amx_unbannick amx_bannick kodları olacak mümkünse teşekkür ederim şimdiden-Not : isimler editlenebilir bir belgeye kaydolursa güzel olur
amx_bannick gibi bir konsol komutuyla belirli nicki banlamak için bir plugin yazılabilirmi ? amx_unbannick amx_bannick kodları olacak mümkünse teşekkür ederim şimdiden-Not : isimler editlenebilir bir belgeye kaydolursa güzel olur
Konu hurracuran tarafından (02-02-13 Saat 15:34 ) değiştirilmiştir.
amx_bannick <nick> <sure> // Suresiz banlamak için sure kısmına 0 yazınız.PHP- Kodu:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#define PLUGIN "Nick Ban"
#define VERSION "1.0"
#define AUTHOR "akcaliberkk"
new const ban_file[] = "addons/amxmodx/configs/nickbanlist.ini";
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_concmd("amx_bannick","cmdNickBan",ADMIN_BAN,"<nick> <sure>")
register_concmd("amx_unbannick","cmdNickUnban",ADMIN_BAN,"<nick>")
if(!file_exists(ban_file)) {
new f = fopen(ban_file,"wt");
fclose(f)
}
set_task(60.0,"CheckBans",_,_,_,"b")
}
public client_infochanged(id) {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new UserName[32];
new maxlines = file_size(ban_file,1);
get_user_name(id,UserName,31)
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(UserName,LineName)) {
server_cmd("kick #%d ^"Bu Servera Girisiniz Yasaklanmistir^"",get_user_userid(id))
return PLUGIN_HANDLED
}
}
return PLUGIN_CONTINUE
}
public client_connect(id) {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new UserName[32];
new maxlines = file_size(ban_file,1);
get_user_name(id,UserName,31)
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(UserName,LineName)) {
server_cmd("kick #%d ^"Bu Servera Girisiniz Yasaklanmistir^"",get_user_userid(id))
return PLUGIN_HANDLED
}
}
return PLUGIN_CONTINUE
}
public cmdNickBan(id,level,cid) {
if(!cmd_access(id,level,cid,3)) return PLUGIN_HANDLED
new AdminName[32],AdminIP[32];
new UserName[32],UserIP[32];
get_user_name(id,AdminName,31)
get_user_ip(id,AdminIP,31,0)
new arg1[32],arg2[32];
read_argv(1,arg1,31)
read_argv(2,arg2,31)
new sure = str_to_num(arg2);
new Uid = cmd_target(id,arg1,7);
if(!Uid) return PLUGIN_HANDLED
get_user_name(Uid,UserName,31)
get_user_ip(Uid,UserIP,31,0)
if(!sure) {
server_cmd("kick #%d ^"Bu Serverdan Suresiz Olarak Banlandiniz^"")
client_print(0,print_chat,"Admin %s: %s Adli Oyuncunun Nickini Suresiz Banladi !",AdminName,UserName)
log_amx("Admin %s<%s> Nick Ban Player %s<%s> - Sure: Sinirsiz",AdminName,AdminIP,UserName,UserIP)
}
else {
server_cmd("kick #%d ^"Bu Serverdan %d Dakika Banlandiniz^"",sure)
client_print(0,print_chat,"Admin %s: %s Adli Oyuncunun Nickini %d Dakika Banladi !",AdminName,UserName,sure)
log_amx("Admin %s<%s> Nick Ban Player %s<%s> - Sure: %d",AdminName,AdminIP,UserName,UserIP,sure)
}
console_print(id,"Oyuncu Banlandi")
nickban_user(UserName,sure)
return PLUGIN_HANDLED
}
public cmdNickUnban(id,level,cid) {
if(!cmd_access(id,level,cid,2)) return PLUGIN_HANDLED
new TargetName[32],AdminName[32],AdminIP[32];
read_argv(1,TargetName,31)
if(!user_exist(TargetName)) {
console_print(id,"Bu Isimde Banli Oyuncu Bulunamadi !")
return PLUGIN_HANDLED
}
delete_user(TargetName);
get_user_name(id,AdminName,31)
get_user_ip(id,AdminIP,31,0)
client_print(0,print_chat,"Admin %s: %s Adli Oyuncunun NickBan'ını Kaldirdi.",AdminName,TargetName)
log_amx("Admin %s<%s> Nick Unban Player %s",AdminName,AdminIP,TargetName)
console_print(id,"Oyuncunun Bani Kalkti")
return PLUGIN_HANDLED
}
public CheckBans() {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new maxlines = file_size(ban_file,1);
new usertime;
new maxtime = get_systime();
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(LineExpiration,"Suresiz")) {
continue
}
usertime = str_to_num(LineExpiration);
if(usertime < maxtime) {
write_file(ban_file,"",line)
continue
}
}
delete_empty_lines(ban_file)
}
nickban_user(const name[],sure) {
new szBitis[32];
if(!sure) {
copy(szBitis,31,"Suresiz")
}
else {
sure *= 60;
num_to_str(sure+get_systime(),szBitis,31);
}
new szLineText[148];
formatex(szLineText,147,"^"%s^" ^"%s^"",name,szBitis)
write_file(ban_file,szLineText)
delete_empty_lines(ban_file)
return PLUGIN_HANDLED
}
delete_user(const name[]) {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new maxlines = file_size(ban_file,1);
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(name,LineName)) {
write_file(ban_file,"",line)
break;
}
}
delete_empty_lines(ban_file)
return PLUGIN_HANDLED
}
stock user_exist(const name[]) {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new maxlines = file_size(ban_file,1);
new checknum;
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(name,LineName)) {
checknum++;
}
}
if(checknum) return true;
return false;
}
delete_empty_lines(const filename[]) {
static const temp_filename[] = "deleting_lines.txt";
new f = fopen(filename, "rt");
if( !f ) return -1;
new lines = 0;
new t = fopen(temp_filename, "wt");
static data[512];
while( !feof(f) ) {
fgets(f, data, sizeof(data) - 1);
if( data[0] && data[0] != '^n' ) {
fputs(t, data);
}
else {
lines++;
}
}
fclose(f);
fclose(t);
delete_file(filename);
rename_file(temp_filename, filename, 1);
return lines;
}
amx_unbannick <tam nick>
To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
CS:GO ve CS 1.6 için ücretli eklenti yapılır.
Plugin yazmak isteyenlere yardımcı olabilirim.
Skype adresimden ulaşabilirsiniz: destek_596
Steam: http://steamcommunity.com/id/ca-nemesis/
amx_bannick nick 0 veya herhangi bir sayı şeklinde uyguluyorum hiç birşey olmuyor ? :S
Edit : düzeltiyorum amx_bannick yazınca nick süre filan çıkıyor fakat nick yerine nicki ve süre yerinede süreyi yazınca unknown command diyor .
Bende sorunsuz çalışıyor ? Hata falan varmı kontrol edin ?
To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
CS:GO ve CS 1.6 için ücretli eklenti yapılır.
Plugin yazmak isteyenlere yardımcı olabilirim.
Skype adresimden ulaşabilirsiniz: destek_596
Steam: http://steamcommunity.com/id/ca-nemesis/
amx mod un compile programıyla çevirdim direk kopyalayıp amx_bannick yazınca kullanım şekli çıkıyor ama nick ve süre yerine gerekeni yazınca unknown command :S Birdaha çevireyim bi sn
EDIT : webcompilerdanda cevirdim programdanda çevirdim aynı sorun
Konu hurracuran tarafından (02-02-13 Saat 18:33 ) değiştirilmiştir.
Son anda yaptığım bir değişikliği buraya eklediğim pluginde değiştirmeyi unutmuşum.
PHP- Kodu:
#include <amxmodx>
#include <amxmisc>
#define PLUGIN "Nick Ban"
#define VERSION "1.0"
#define AUTHOR "akcaliberkk"
new const ban_file[] = "addons/amxmodx/configs/nickbanlist.ini";
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_concmd("amx_bannick","cmdNickBan",ADMIN_BAN,"<nick> <sure>")
register_concmd("amx_unbannick","cmdNickUnban",ADMIN_BAN,"<nick>")
if(!file_exists(ban_file)) {
new f = fopen(ban_file,"wt");
fclose(f)
}
set_task(60.0,"CheckBans",_,_,_,"b")
}
public client_connect(id) {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new UserName[32];
new maxlines = file_size(ban_file,1);
get_user_name(id,UserName,31)
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(UserName,LineName)) {
server_cmd("kick #%d ^"Bu Servera Girisiniz Yasaklanmistir^"",get_user_userid(id))
return PLUGIN_HANDLED
}
}
return PLUGIN_CONTINUE
}
public cmdNickBan(id,level,cid) {
if(!cmd_access(id,level,cid,3)) return PLUGIN_HANDLED
new AdminName[32],AdminIP[32];
new UserName[32],UserIP[32];
get_user_name(id,AdminName,31)
get_user_ip(id,AdminIP,31,0)
new arg1[32],arg2[32];
read_argv(1,arg1,31)
read_argv(2,arg2,31)
new sure = str_to_num(arg2);
new Uid = cmd_target(id,arg1,7);
if(!Uid) return PLUGIN_HANDLED
get_user_name(Uid,UserName,31)
get_user_ip(Uid,UserIP,31,0)
if(!sure) {
server_cmd("kick #%d ^"Bu Serverdan Suresiz Olarak Banlandiniz^"",get_user_userid(Uid))
client_print(0,print_chat,"Admin %s: %s Adli Oyuncunun Nickini Suresiz Banladi !",AdminName,UserName)
log_amx("Admin %s<%s> Nick Ban Player %s<%s> - Sure: Sinirsiz",AdminName,AdminIP,UserName,UserIP)
}
else {
server_cmd("kick #%d ^"Bu Serverdan %d Dakika Banlandiniz^"",get_user_userid(Uid),sure)
client_print(0,print_chat,"Admin %s: %s Adli Oyuncunun Nickini %d Dakika Banladi !",AdminName,UserName,sure)
log_amx("Admin %s<%s> Nick Ban Player %s<%s> - Sure: %d",AdminName,AdminIP,UserName,UserIP,sure)
}
console_print(id,"Oyuncu Banlandi")
nickban_user(UserName,sure)
return PLUGIN_HANDLED
}
public cmdNickUnban(id,level,cid) {
if(!cmd_access(id,level,cid,2)) return PLUGIN_HANDLED
new TargetName[32],AdminName[32],AdminIP[32];
read_argv(1,TargetName,31)
if(!user_exist(TargetName)) {
console_print(id,"Bu Isimde Banli Oyuncu Bulunamadi !")
return PLUGIN_HANDLED
}
delete_user(TargetName);
get_user_name(id,AdminName,31)
get_user_ip(id,AdminIP,31,0)
client_print(0,print_chat,"Admin %s: %s Adli Oyuncunun NickBan'ını Kaldirdi.",AdminName,TargetName)
log_amx("Admin %s<%s> Nick Unban Player %s",AdminName,AdminIP,TargetName)
console_print(id,"Oyuncunun Bani Kalkti")
return PLUGIN_HANDLED
}
public CheckBans() {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new maxlines = file_size(ban_file,1);
new usertime;
new maxtime = get_systime();
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(LineExpiration,"Suresiz")) {
continue
}
usertime = str_to_num(LineExpiration);
if(usertime < maxtime) {
write_file(ban_file,"",line)
continue
}
}
delete_empty_lines(ban_file)
}
nickban_user(const name[],sure) {
new szBitis[32];
if(!sure) {
copy(szBitis,31,"Suresiz")
}
else {
sure *= 60;
num_to_str(sure+get_systime(),szBitis,31);
}
new szLineText[148];
formatex(szLineText,147,"^"%s^" ^"%s^"",name,szBitis)
write_file(ban_file,szLineText)
delete_empty_lines(ban_file)
return PLUGIN_HANDLED
}
delete_user(const name[]) {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new maxlines = file_size(ban_file,1);
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(name,LineName)) {
write_file(ban_file,"",line)
break;
}
}
delete_empty_lines(ban_file)
return PLUGIN_HANDLED
}
stock user_exist(const name[]) {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new maxlines = file_size(ban_file,1);
new checknum;
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(name,LineName)) {
checknum++;
}
}
if(checknum) return true;
return false;
}
delete_empty_lines(const filename[]) {
static const temp_filename[] = "deleting_lines.txt";
new f = fopen(filename, "rt");
if( !f ) return -1;
new lines = 0;
new t = fopen(temp_filename, "wt");
static data[512];
while( !feof(f) ) {
fgets(f, data, sizeof(data) - 1);
if( data[0] && data[0] != '^n' ) {
fputs(t, data);
}
else {
lines++;
}
}
fclose(f);
fclose(t);
delete_file(filename);
rename_file(temp_filename, filename, 1);
return lines;
}
---------- Alttaki Mesaj Zamani 18:20 ---------- Önceki Mesaj Zamani 18:10 ----------
İsim değiştiğinde yeni isim yasaklıysa yine oyundan atma özelliğini şimdi ekledim. Son hali bu, bunu kullan
PHP- Kodu:
#include <amxmodx>
#include <amxmisc>
#define PLUGIN "Nick Ban"
#define VERSION "1.0"
#define AUTHOR "akcaliberkk"
new const ban_file[] = "addons/amxmodx/configs/nickbanlist.ini";
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_concmd("amx_bannick","cmdNickBan",ADMIN_BAN,"<nick> <sure>")
register_concmd("amx_unbannick","cmdNickUnban",ADMIN_BAN,"<nick>")
if(!file_exists(ban_file)) {
new f = fopen(ban_file,"wt");
fclose(f)
}
set_task(60.0,"CheckBans",_,_,_,"b")
}
public client_infochanged(id) {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new UserName[32];
new maxlines = file_size(ban_file,1);
get_user_info(id,"name",UserName,31)
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(UserName,LineName)) {
server_cmd("kick #%d ^"Bu Servera Girisiniz Yasaklanmistir^"",get_user_userid(id))
return PLUGIN_HANDLED
}
}
return PLUGIN_CONTINUE
}
public client_connect(id) {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new UserName[32];
new maxlines = file_size(ban_file,1);
get_user_name(id,UserName,31)
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(UserName,LineName)) {
server_cmd("kick #%d ^"Bu Servera Girisiniz Yasaklanmistir^"",get_user_userid(id))
return PLUGIN_HANDLED
}
}
return PLUGIN_CONTINUE
}
public cmdNickBan(id,level,cid) {
if(!cmd_access(id,level,cid,3)) return PLUGIN_HANDLED
new AdminName[32],AdminIP[32];
new UserName[32],UserIP[32];
get_user_name(id,AdminName,31)
get_user_ip(id,AdminIP,31,0)
new arg1[32],arg2[32];
read_argv(1,arg1,31)
read_argv(2,arg2,31)
new sure = str_to_num(arg2);
new Uid = cmd_target(id,arg1,7);
if(!Uid) return PLUGIN_HANDLED
get_user_name(Uid,UserName,31)
get_user_ip(Uid,UserIP,31,0)
if(!sure) {
server_cmd("kick #%d ^"Bu Serverdan Suresiz Olarak Banlandiniz^"",get_user_userid(Uid))
client_print(0,print_chat,"Admin %s: %s Adli Oyuncunun Nickini Suresiz Banladi !",AdminName,UserName)
log_amx("Admin %s<%s> Nick Ban Player %s<%s> - Sure: Sinirsiz",AdminName,AdminIP,UserName,UserIP)
}
else {
server_cmd("kick #%d ^"Bu Serverdan %d Dakika Banlandiniz^"",get_user_userid(Uid),sure)
client_print(0,print_chat,"Admin %s: %s Adli Oyuncunun Nickini %d Dakika Banladi !",AdminName,UserName,sure)
log_amx("Admin %s<%s> Nick Ban Player %s<%s> - Sure: %d",AdminName,AdminIP,UserName,UserIP,sure)
}
console_print(id,"Oyuncu Banlandi")
nickban_user(UserName,sure)
return PLUGIN_HANDLED
}
public cmdNickUnban(id,level,cid) {
if(!cmd_access(id,level,cid,2)) return PLUGIN_HANDLED
new TargetName[32],AdminName[32],AdminIP[32];
read_argv(1,TargetName,31)
if(!user_exist(TargetName)) {
console_print(id,"Bu Isimde Banli Oyuncu Bulunamadi !")
return PLUGIN_HANDLED
}
delete_user(TargetName);
get_user_name(id,AdminName,31)
get_user_ip(id,AdminIP,31,0)
client_print(0,print_chat,"Admin %s: %s Adli Oyuncunun NickBan'ını Kaldirdi.",AdminName,TargetName)
log_amx("Admin %s<%s> Nick Unban Player %s",AdminName,AdminIP,TargetName)
console_print(id,"Oyuncunun Bani Kalkti")
return PLUGIN_HANDLED
}
public CheckBans() {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new maxlines = file_size(ban_file,1);
new usertime;
new maxtime = get_systime();
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(LineExpiration,"Suresiz")) {
continue
}
usertime = str_to_num(LineExpiration);
if(usertime < maxtime) {
write_file(ban_file,"",line)
continue
}
}
delete_empty_lines(ban_file)
}
nickban_user(const name[],sure) {
new szBitis[32];
if(!sure) {
copy(szBitis,31,"Suresiz")
}
else {
sure *= 60;
num_to_str(sure+get_systime(),szBitis,31);
}
new szLineText[148];
formatex(szLineText,147,"^"%s^" ^"%s^"",name,szBitis)
write_file(ban_file,szLineText)
delete_empty_lines(ban_file)
return PLUGIN_HANDLED
}
delete_user(const name[]) {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new maxlines = file_size(ban_file,1);
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(name,LineName)) {
write_file(ban_file,"",line)
break;
}
}
delete_empty_lines(ban_file)
return PLUGIN_HANDLED
}
stock user_exist(const name[]) {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new maxlines = file_size(ban_file,1);
new checknum;
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(name,LineName)) {
checknum++;
}
}
if(checknum) return true;
return false;
}
delete_empty_lines(const filename[]) {
static const temp_filename[] = "deleting_lines.txt";
new f = fopen(filename, "rt");
if( !f ) return -1;
new lines = 0;
new t = fopen(temp_filename, "wt");
static data[512];
while( !feof(f) ) {
fgets(f, data, sizeof(data) - 1);
if( data[0] && data[0] != '^n' ) {
fputs(t, data);
}
else {
lines++;
}
}
fclose(f);
fclose(t);
delete_file(filename);
rename_file(temp_filename, filename, 1);
return lines;
}
Konu akcaliberkk tarafından (02-02-13 Saat 20:13 ) değiştirilmiştir.
To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
CS:GO ve CS 1.6 için ücretli eklenti yapılır.
Plugin yazmak isteyenlere yardımcı olabilirim.
Skype adresimden ulaşabilirsiniz: destek_596
Steam: http://steamcommunity.com/id/ca-nemesis/
Ölüleri banlayamıyorum onu düzeltmek mümkün mü ?
akcaliberkk ; Plugin bana lazım değil de counterstrike benim bildiğim konsolda boşluk bıraktığında boşluktan sonrasını algılamıyor mesela "name scarty ;music" yazdım sadece "scarty" algılar adamın isminden sonra boşluk varsa sorun olmazmı veya ona karşı önlem aldın mı bu dediğim örnek amx_nick içinde geçerli adamın ismini değiştirdiğinde boşluktan sonrası algılanmıyor menüyle düzgün olabilir heralde.
YouTube.com/enesscarty
Boşluklarda sorun yok sadece adamın nickinde boşluk yerine % koyarsın olur biter
Ölüleri banlamaya çalıştığında ne diyor ?
---------- Alttaki Mesaj Zamani 21:43 ---------- Önceki Mesaj Zamani 21:36 ----------
Düzeldi sanırım.PHP- Kodu:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#define PLUGIN "Nick Ban"
#define VERSION "1.0"
#define AUTHOR "akcaliberkk"
new const ban_file[] = "addons/amxmodx/configs/nickbanlist.ini";
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_concmd("amx_bannick","cmdNickBan",ADMIN_BAN,"<nick> <sure>")
register_concmd("amx_unbannick","cmdNickUnban",ADMIN_BAN,"<nick>")
if(!file_exists(ban_file)) {
new f = fopen(ban_file,"wt");
fclose(f)
}
set_task(60.0,"CheckBans",_,_,_,"b")
}
public client_infochanged(id) {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new UserName[32];
new maxlines = file_size(ban_file,1);
get_user_info(id,"name",UserName,31)
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(UserName,LineName)) {
server_cmd("kick #%d ^"Bu Servera Girisiniz Yasaklanmistir^"",get_user_userid(id))
return PLUGIN_HANDLED
}
}
return PLUGIN_CONTINUE
}
public client_connect(id) {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new UserName[32];
new maxlines = file_size(ban_file,1);
get_user_name(id,UserName,31)
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(UserName,LineName)) {
server_cmd("kick #%d ^"Bu Servera Girisiniz Yasaklanmistir^"",get_user_userid(id))
return PLUGIN_HANDLED
}
}
return PLUGIN_CONTINUE
}
public cmdNickBan(id,level,cid) {
if(!cmd_access(id,level,cid,3)) return PLUGIN_HANDLED
new AdminName[32],AdminIP[32];
new UserName[32],UserIP[32];
get_user_name(id,AdminName,31)
get_user_ip(id,AdminIP,31,0)
new arg1[32],arg2[32];
read_argv(1,arg1,31)
read_argv(2,arg2,31)
new sure = str_to_num(arg2);
new Uid = cmd_target(id,arg1,CMDTARGET_OBEY_IMMUNITY | CMDTARGET_NO_BOTS | CMDTARGET_ALLOW_SELF);
if(!Uid) return PLUGIN_HANDLED
get_user_name(Uid,UserName,31)
get_user_ip(Uid,UserIP,31,0)
if(!sure) {
server_cmd("kick #%d ^"Bu Serverdan Suresiz Olarak Banlandiniz^"",get_user_userid(Uid))
client_print(0,print_chat,"Admin %s: %s Adli Oyuncunun Nickini Suresiz Banladi !",AdminName,UserName)
log_amx("Admin %s<%s> Nick Ban Player %s<%s> - Sure: Sinirsiz",AdminName,AdminIP,UserName,UserIP)
}
else {
server_cmd("kick #%d ^"Bu Serverdan %d Dakika Banlandiniz^"",get_user_userid(Uid),sure)
client_print(0,print_chat,"Admin %s: %s Adli Oyuncunun Nickini %d Dakika Banladi !",AdminName,UserName,sure)
log_amx("Admin %s<%s> Nick Ban Player %s<%s> - Sure: %d",AdminName,AdminIP,UserName,UserIP,sure)
}
console_print(id,"Oyuncu Banlandi")
nickban_user(UserName,sure)
return PLUGIN_HANDLED
}
public cmdNickUnban(id,level,cid) {
if(!cmd_access(id,level,cid,2)) return PLUGIN_HANDLED
new TargetName[32],AdminName[32],AdminIP[32];
read_argv(1,TargetName,31)
if(!user_exist(TargetName)) {
console_print(id,"Bu Isimde Banli Oyuncu Bulunamadi !")
return PLUGIN_HANDLED
}
delete_user(TargetName);
get_user_name(id,AdminName,31)
get_user_ip(id,AdminIP,31,0)
client_print(0,print_chat,"Admin %s: %s Adli Oyuncunun NickBan'ını Kaldirdi.",AdminName,TargetName)
log_amx("Admin %s<%s> Nick Unban Player %s",AdminName,AdminIP,TargetName)
console_print(id,"Oyuncunun Bani Kalkti")
return PLUGIN_HANDLED
}
public CheckBans() {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new maxlines = file_size(ban_file,1);
new usertime;
new maxtime = get_systime();
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(LineExpiration,"Suresiz")) {
continue
}
usertime = str_to_num(LineExpiration);
if(usertime < maxtime) {
write_file(ban_file,"",line)
continue
}
}
delete_empty_lines(ban_file)
}
nickban_user(const name[],sure) {
new szBitis[32];
if(!sure) {
copy(szBitis,31,"Suresiz")
}
else {
sure *= 60;
num_to_str(sure+get_systime(),szBitis,31);
}
new szLineText[148];
formatex(szLineText,147,"^"%s^" ^"%s^"",name,szBitis)
write_file(ban_file,szLineText)
delete_empty_lines(ban_file)
return PLUGIN_HANDLED
}
delete_user(const name[]) {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new maxlines = file_size(ban_file,1);
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(name,LineName)) {
write_file(ban_file,"",line)
break;
}
}
delete_empty_lines(ban_file)
return PLUGIN_HANDLED
}
stock user_exist(const name[]) {
new szLineText[148],LineName[34],LineExpiration[34],txtlen;
new maxlines = file_size(ban_file,1);
new checknum;
for(new line; line < maxlines; line++) {
read_file(ban_file,line,szLineText,147,txtlen)
parse(szLineText,LineName,33,LineExpiration,33)
if(equali(name,LineName)) {
checknum++;
}
}
if(checknum) return true;
return false;
}
delete_empty_lines(const filename[]) {
static const temp_filename[] = "deleting_lines.txt";
new f = fopen(filename, "rt");
if( !f ) return -1;
new lines = 0;
new t = fopen(temp_filename, "wt");
static data[512];
while( !feof(f) ) {
fgets(f, data, sizeof(data) - 1);
if( data[0] && data[0] != '^n' ) {
fputs(t, data);
}
else {
lines++;
}
}
fclose(f);
fclose(t);
delete_file(filename);
rename_file(temp_filename, filename, 1);
return lines;
}
To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
To view links or images in signatures your post count must be 10 or greater. You currently have 0 posts.
CS:GO ve CS 1.6 için ücretli eklenti yapılır.
Plugin yazmak isteyenlere yardımcı olabilirim.
Skype adresimden ulaşabilirsiniz: destek_596
Steam: http://steamcommunity.com/id/ca-nemesis/