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

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

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

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

Добавить функцию в AmxModMenu

Статус пользователя JustDie
сообщение 28.8.2017, 8:59
Сообщение #1


Стаж: 8 лет 8 месяцев
Город: Москва

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

Помогите пожалуйста добавить в amxmodmenu функцию,которая будет выводить остаток дней до окончания администраторских прав на сервере. Заранее благодарен! Прикрепленный файл  menufront.sma ( 4,4 килобайт ) Кол-во скачиваний: 10
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя unit
сообщение 28.8.2017, 10:35
Сообщение #2


Стаж: 10 лет

Сообщений: 821
Благодарностей: 280
Полезность: 300

Короче все за тебя нужно делать..а сам не пробовал, что-то сделать?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя daiman18
сообщение 28.8.2017, 11:15
Сообщение #3


Стаж: 9 лет

Сообщений: 344
Благодарности: выкл.

Цитата(unit @ 28.8.2017, 13:35) *
Короче все за тебя нужно делать..а сам не пробовал, что-то сделать?

человек новичеГ возможно еще не имеет опыта попросил помощи ты че го напал то.
я бы подсказал да не особо в этом разбираюсь как добавить.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя DimkaZst
сообщение 28.8.2017, 11:30
Сообщение #4


Стаж: 9 лет

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

у неугомона есть amxmodmenu с выводом остаткой админки !


https://www.bestchange.ru/?p=888336 Лучший обменик валюты =)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя JustDie
сообщение 28.8.2017, 16:54
Сообщение #5


Стаж: 8 лет 8 месяцев
Город: Москва

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

Цитата(DimkaZst @ 28.8.2017, 12:30) *
у неугомона есть amxmodmenu с выводом остаткой админки !

Мне нужен именно этот плагин.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Limbooc
сообщение 4.9.2017, 5:10
Сообщение #6
Стаж: 8 лет 8 месяцев

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

Код:
#include <amxmodx>
#include <amxmisc>
#include <dhudmessage>

new keys = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MEN
U_KEY_8|MENU_KEY_9|MENU_KEY_0
new day[32]

#define PLUGIN "AmxModMenu_New"
#define VERSION "1.0"
#define AUTHOR "CaNiBaL | Remake by Sn1kO"
#define ADMIN_LOADER // Выводить срок до конца админки с Admin Loader by Neugomon

public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR)
register_menu("Menu_2", keys, "func_menu2")
register_clcmd("amxmodmenu", "AmxMenu")

new text_s[256], m_date[12], line, len
read_file("/addons/amxmodx/configs/users.ini", line, text_s, charsmax(text_s), len)
trim(text_s)

get_time("%Y.%m.%d", m_date, charsmax(m_date))

if(equal(text_s,m_date))
return

else
write_file("/addons/amxmodx/configs/users.ini", m_date, line)

new admin[32], pass[32], flags[32], x_access[32], x_days[32],bufferd[128], days
new iFiled = fopen("/addons/amxmodx/configs/users.ini","r");

while(!feof(iFiled))
{
fgets(iFiled,bufferd,255)
trim(bufferd)

if(bufferd[0]=='"')
{
parse(bufferd, admin, 31, pass, 31, flags, 31, x_access, 31, x_days, 31)

days=str_to_num(x_days)-1

if(days)
formatex(text_s, charsmax(text_s), "^"%s^" ^"%s^" ^"%s^" ^"%s^" ^"%d^"", admin, pass, flags, x_access,days)
else
formatex(text_s, charsmax(text_s), ";^"%s^" ^"%s^" ^"%s^" ^"%s^" ^"%d^"", admin, pass, flags, x_access,days)

if(line)
write_file("/addons/amxmodx/configs/users.ini", text_s, line)
}
line++
}
fclose(iFiled)
server_cmd("amx_reloadadmins")
}

public plugin_precache()
{
precache_sound("misc/admin_restart.wav" )
}



public client_authorized(id)
{
if(is_user_admin(id))
{
new admin[32], pass[32], flags[32], x_access[32], x_days[32],bufferd[128],name[32], st[33]

new iFiled = fopen("/addons/amxmodx/configs/users.ini","r");


get_user_name(id, name, 31)
get_user_authid(id, st, 32)

while(!feof(iFiled))
{

fgets(iFiled,bufferd,255)
trim(bufferd)
if(bufferd[0]=='"')
{

parse(bufferd, admin, 31, pass, 31, flags, 31, x_access, 31, x_days, 31)

// Проверяем игрока через Name или Steam (проверку через IP сделаете сами если нужно)
if(equal(admin, name) || equal(admin, st))
{
day[id]=str_to_num(x_days)
return PLUGIN_HANDLED
}

}
}
fclose(iFiled)

}
return PLUGIN_HANDLED
}

public AmxMenu(id)
{
static menu[650], iLen
iLen = 0
if(get_user_flags(id) & ADMIN_LEVEL_A)
iLen = formatex(menu[iLen], charsmax(menu) - iLen, "\rАдминистраторские привилегии ^n\wИстекает через \r%d \wдней^n^n", day[id]);
else
iLen = formatex(menu[iLen], charsmax(menu) - iLen, "\rАдминистраторские привилегии ^n\dАдминка 150 Рублей ^n\d˙·٠●• •●٠·˙^n^n");

if(get_user_flags(id) & ADMIN_LEVEL_A)
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r1. \wКикнуть \yツ^n")
keys |= MENU_KEY_1
}
else
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r1. \dКикнуть^n")
keys &= ~MENU_KEY_1
}
if(get_user_flags(id) & ADMIN_LEVEL_A)
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r2. \wЗабанить \yツ^n")
keys |= MENU_KEY_2
}
else
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r2. \dЗабанить^n")
keys &= ~MENU_KEY_2
}
if(get_user_flags(id) & ADMIN_LEVEL_A)
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r3. \wСтукнуть \yツ^n")
keys |= MENU_KEY_3
}
else
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r3. \dСтукнуть^n")
keys &= ~MENU_KEY_3
}
if(get_user_flags(id) & ADMIN_LEVEL_A)
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r4. \wПеревести игрока за другую \rкоманду \yツ^n")
keys |= MENU_KEY_4
}
else
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r4. \dПеревести игрока за другую команду^n")
keys &= ~MENU_KEY_4
}
if(get_user_flags(id) & ADMIN_LEVEL_A)
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r5. \wСменить \rкарту \yツ^n")
keys |= MENU_KEY_5
}
else
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r5. \dСменить карту^n")
keys &= ~MENU_KEY_5
}
if(get_user_flags(id) & ADMIN_LEVEL_A)
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r6. \wГолосование за \rсмену карты \yツ^n")
keys |= MENU_KEY_6
}
else
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r6. \dГолосование за смену карты^n")
keys &= ~MENU_KEY_6
}
if(get_user_flags(id) & ADMIN_LEVEL_A)
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r7. \wСделать \rрестарт \yツ^n")
keys |= MENU_KEY_7
}
else
{
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r7. \dСделать рестарт^n")
keys &= ~MENU_KEY_7
}
iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r8. \wЗаткнуть \rИгрока \yツ^n")
keys |= MENU_KEY_8

iLen += formatex(menu[iLen], charsmax(menu) - iLen, "\r9. \wВип \rМеню \yツ^n")
keys |= MENU_KEY_9

iLen += formatex(menu[iLen], charsmax(menu) - iLen, "^n\r0. \wЗакрыть^n")
keys |= MENU_KEY_0

show_menu(id, keys, menu, -1, "Menu_2");
return PLUGIN_HANDLED
}
public func_menu2(id, key)
{
switch(key)
{
case 0: client_cmd(id, "amx_kickmenu")
case 1: client_cmd(id, "amx_banmenu")
case 2: client_cmd(id, "amx_slapmenu")
case 3: client_cmd(id, "amx_teammenu")
case 4: client_cmd(id, "amx_mapmenu")
case 5: client_cmd(id, "amx_votemapmenu")
case 6:
{
server_cmd("sv_restartround 3")
new name[32]
get_user_name(id, name, 31)
set_dhudmessage(random_num(0, 255), random_num(0, 255), random_num(0, 255), -1.0, 0.50, 1, 3.0, 4.0, 0.1, 0.2);
show_dhudmessage(id, "Администратор %s сделал рестарт", name)
emit_sound(id, CHAN_VOICE, "misc/admin_restart.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
}
case 7:client_cmd(id, "amx_gagmenu")
case 8:client_cmd(id, "vipmenu")

}
}


в users.ini следйющий шаблон


Код:
04.09.2017
"Dizzy." "aminjonbehruz" "abcdefghijklmnopqrsu" "a" "29"
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 2 раз
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: