sxe local ban menüsü istiyorum
sxe local ban attıktan sonra banları temizlemek icin server sahibi cfg yi temizlemesi gerekiyor. fakat ben bunu adminlerin de yapmasını istiyorum bu yüzden amx_unbanmenu gibi bir menu olmasını istiyorum oradan sxe local banları temizleyebilelim istiyorum ben unbanmenu uzerınden denedim beceremedim yardım bekliyorum.
Cevap: sxe local ban menüsü istiyorum
@losteps ve @schwertle halis yardımlarınızı bekliyorum lütfen.
Cevap: sxe local ban menüsü istiyorum
bu zaten mygamearea oyunyöneticisi counter merkezi sen oyna gibi sunucularda bulunuyor senin serverin hangi portal üzerinde yazarmısın yardımcı olabilirim
Cevap: sxe local ban menüsü istiyorum
serverım herhangi bir portal üzrinde degil. kendim bir eklenti oluşturuyorum bu csplague forumda paylaşıcam içersiinde 30 tane eklenti var tek bir sma da fakat sxe banları temizlemek icin bi menü istiyorum tek eksigim bu kaldı. sxe_ban_menu yaptım fakat sxe banlarını kaldırmak icin yapamadım.
Cevap: sxe local ban menüsü istiyorum
yapıyorum sabret..
---------- Alttaki Mesaj Zamani 16:40 ---------- Önceki Mesaj Zamani 16:24 ----------
PHP- Kodu:
/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
new g_menuPosition[33]
new g_menuSelect[33][64]
new g_menuUnBanType[33]
new g_menuUnBanLine[33][2]
new g_menuUnBanText[33][8][32]
new g_bannedCfgFile[1][] = {"sxelocal.cfg"}
new g_coloredMenus
public plugin_init() {
register_plugin("UnBanmenu", "1", "AMX Team")
register_clcmd("amx_sxeunbanmenu","cmdUnBanMenu", ADMIN_BAN, "- displays unban menu")
register_menucmd(register_menuid("UnBan STEAMID or IP?"),(1<<0|1<<1|1<<9),"actionUnBanMenuType")
register_menucmd(register_menuid("UnBan Menu"),1023,"actionUnBanMenu")
g_coloredMenus = colored_menus()
}
public actionUnBanMenu(id,key) {
switch(key) {
case 8: {
displayUnBanMenu(id, ++g_menuPosition[id])
}
case 9: {
g_menuUnBanLine[id][0] = g_menuUnBanLine[id][0] - (8 + g_menuUnBanLine[id][1])
if(g_menuUnBanLine[id][0] < 0) g_menuUnBanLine[id][0] = 0
displayUnBanMenu(id, --g_menuPosition[id])
}
default: {
new name[32], authid[32], ipaddress[24]
get_user_authid(id, authid, 31)
get_user_name(id, name, 31)
get_user_ip(id, ipaddress, 23, 1)
log_amx("UnBan: ^"%s<%d><%s><%s>^" unban ^"%s^"", name,get_user_userid(id),authid,ipaddress,g_menuUnBanText[id][key])
switch (get_cvar_num("amx_show_activity"))
{
case 2: client_print(0, print_chat, "ADMIN %s: unban %s", name, g_menuUnBanText[id][key])
case 1: client_print(0, print_chat, "ADMIN: unban %s", g_menuUnBanText[id][key])
}
if(g_menuUnBanType[id] == 1) {
server_cmd("removeip ^"%s^"; writeip", g_menuUnBanText[id][key])
server_exec()
console_print(id, "IP ^"%s^" removed from ban list", g_menuUnBanText[id][key])
}
else {
server_cmd("removeid %s; writeid", g_menuUnBanText[id][key])
console_print(id, "Authid ^"%s^" removed from ban list", g_menuUnBanText[id][key])
}
g_menuUnBanLine[id][0] = g_menuUnBanLine[id][1] = 0
displayUnBanMenu(id, g_menuPosition[id] = 0)
}
}
return PLUGIN_HANDLED
}
checkSTEAMID(steamid[]) {
new len = strlen(steamid)
if(len > 10 && equali(steamid, "STEAM_", 6) && steamid[7] == ':' && steamid[9] == ':' && str_to_num(steamid[10])) {
return 1
}
return 0
}
checkIP(ip[]) {
new len = strlen(ip)
new dots = 0, i = 0
while(isdigit(ip[i]) || ip[i]=='.')
if(ip[i++] == '.')
++dots
if(i == len && dots == 3) {
return 1
}
return 0
}
displayUnBanMenu(id,pos) {
if(pos < 0)
return
new menuBody[512]
new b = 0
new len = format(menuBody, 511, g_coloredMenus ? "\yUnBan Menu\R%d^n\w^n" : "UnBan Menu %d^n^n", id, "UNBAN_MENU", pos + 1)
new keys = (1<<9)
new textlen, line
new type = g_menuUnBanType[id]
new temp[32], banTime[32], disable
if(file_exists(g_bannedCfgFile[type])) {
line = g_menuUnBanLine[id][0]
while((line = read_file(g_bannedCfgFile[type], line, g_menuSelect[id], 63, textlen))) {
temp[0] = '^0'
banTime[0] = '^0'
g_menuUnBanText[id][b][0] = '^0'
disable = 0
if(textlen < 9)
disable = 1
else if(parse(g_menuSelect[id], temp, 31, banTime, 31, g_menuUnBanText[id][b], 31) != 3)
disable = 1
else if((type == 1 && !checkIP(g_menuUnBanText[id][b])) || (type == 0 && !checkSTEAMID(g_menuUnBanText[id][b])))
disable = 1
if(disable == 0) {
keys |= (1<<b)
if(g_coloredMenus)
len += format(menuBody[len], 511-len, "%d. %s\R\r%s^n\w", b, g_menuUnBanText[id][b++], banTime)
else
len += format(menuBody[len], 511-len, "%d. %s ( %s )^n", b, g_menuUnBanText[id][b++], banTime)
}
else {
if(g_coloredMenus)
len += format(menuBody[len], 511-len, "\d%d. %s^n\w", b, g_menuUnBanText[id][b++])
else
len += format(menuBody[len], 511-len, "#. %s^n", b, g_menuUnBanText[id][b++])
}
if(b == 8) break
}
if(b == 8 && read_file(g_bannedCfgFile[type], line, g_menuSelect[id], 63, textlen) > 0) {
format(menuBody[len], 511-len, "^n9. More...^n0. %s",id, pos ? "Back" : "Exit",id)
keys |= (1<<8)
}
else
format(menuBody[len], 511-len, "^n0. %s", pos ? "Back" : "Exit",id)
g_menuUnBanLine[id][1] = line - g_menuUnBanLine[id][0]
g_menuUnBanLine[id][0] = line
show_menu(id, keys, menuBody, -1, "UnBan Menu")
}
return
}
public actionUnBanMenuType(id,key) {
switch(key) {
case 9: return PLUGIN_HANDLED
default: {
g_menuUnBanType[id] = key // 0 = STEAMID, 1 = IP
g_menuUnBanLine[id][0] = g_menuUnBanLine[id][1] = 0
displayUnBanMenu(id, g_menuPosition[id] = 0)
}
}
return PLUGIN_HANDLED
}
displayUnBanMenuType(id) {
new menuBody[512]
new len = format(menuBody, 511, g_coloredMenus ? "\yUnBan STEAMID or IP?^n\w^n" :"UnBan STEAMID or IP?^n^n",id)
new keys = (1<<0)|(1<<1)|(1<<9)
len += format(menuBody[len], 511-len, "1. STEAMID^n",id)
len += format(menuBody[len], 511-len, "2. IP^n",id)
format(menuBody[len], 511-len, "^n0. Exit",id)
show_menu(id, keys, menuBody, -1, "UnBan STEAMID or IP?")
}
public cmdUnBanMenu(id,level,cid) {
if(!cmd_access(id,level,cid,1))
return PLUGIN_HANDLED
g_menuUnBanType[id] = -1
displayUnBanMenuType(id)
return PLUGIN_HANDLED
}
a o o o o oo
Cevap: sxe local ban menüsü istiyorum
eyw saolasın losteps =))
---------- Alttaki Mesaj Zamani 19:37 ---------- Önceki Mesaj Zamani 19:28 ----------
çalışmıyo losteps =) bende böyle sxe_local_ban.cfg dosyasını gösterdim fakat unban yapmıyo. bir arkadaşa sordum sxe_local_ban.cfg deki satırları read_file ile okut dedi. ama onu nasıl yapılcagını bılmıyorum bilgin varsa bakarmısın. sonuç olarak bu şekilde çalışmıyo =))
Cevap: sxe local ban menüsü istiyorum
kardeş sxe ban plugini buglu dosyadan isim silerken yani ban kalıdırken server çökebiliyo ve panelden açılmıyo. Başıma geldi şahsen. O yüzden her önüne gelen adminin sxe banlarla uğraşması zararlı bişey.