Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

amx_unbanmenu

, Возможно ли переделать ?
Статус пользователя Kamikadze312
сообщение 17.5.2012, 16:16
Сообщение #1
Стаж: 14 лет

Сообщений: 37
Благодарностей: 3
Полезность: 63

Есть ли такой плагин или возможно ли переделать этот плагин по разбану ???
/* 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[2][] = {"banned.cfg","listen.cfg"}
new g_coloredMenus



public plugin_init() {
register_plugin("UnBanmenu", "1", "AMX Team")

register_clcmd("amx_unbanmenu","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
}
]


Разбан к плагину advanced_bans.amxx
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
noskill
сообщение 17.5.2012, 16:42
Сообщение #2
Стаж: 14 лет

Сообщений: 3086
Благодарностей: 1493
Полезность: 0

зачем, он там и так есть вроде ж
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: