RU
RU
UA
EN
PL
ГЛАВНАЯ
УСЛУГИ
ПЛАГИНЫ
КАРТЫ
REBUY
SCANMON
CASSA
SALE
ФОРУМ
МОНИТОР
HELP
КОНТАКТ
Главная
/
Plugins
/
ServerOFF
ServerOFF
Теги:
Скачать плагины cs
Админские
Плагин для AMX Mod X, который выключает сервер через определенное время. Удаленное отключение сервера.
Компилятор: 1.8.2
789
Команды:
say /serveroff — меню выключения сервера.
amx_serveroff — выключение через консоль сервера.
1 — выключает сервер через определенное время
2 — выключает сервер в конце карты
3 — выключает сервер сразу
Необходимо только для мода 1. Время задается в часах.
w — белый
r — красный
g — зеленый
b — синий
y — желтый
amx_serveroff 0 — выключить таймер.
.sma / .sp
/* ServerOFF v1.6 */ /* Руссифицировано */ #include
#include
new motd[501],configini[81],text[64],line,num new main_menu,colour_menu,reason_menu,timeoff new menuitem[5][64],addmenu[5][67],addmotd[211] new menuRed,menuGreen,menuBlue,reasontext[65] new menuHours,menuMinutes,menuSeconds,off new hours,minutes,seconds,red,green,blue new bool:options,bool:reason,number public plugin_init() { register_plugin("ServerOFF","1.6","ZETA [M|E|N]") register_concmd("amx_serveroff","func_console_serveroff",ADMIN_CVAR,"") register_clcmd("say /serveroff","func_say_serveroff",ADMIN_CVAR,"") register_cvar("so_red","") register_cvar("so_green","") register_cvar("so_blue","") register_cvar("so_hours","") register_cvar("so_minutes","") } public plugin_cfg() { get_configsdir(configini,81) format(configini,80,"%s/ServerOFF.ini",configini) if(file_exists(configini)) reason=true if(get_cvar_num("so_minutes")!=0 || get_cvar_num("so_hours")!=0) { seconds=59 minutes=get_cvar_num("so_minutes") hours=get_cvar_num("so_hours") red=get_cvar_num("so_red") green=get_cvar_num("so_green") blue=get_cvar_num("so_blue") set_task (1.0, "timer",9876543,_,_,"b") } } public func_console_serveroff(id,level,cid) { if(!cmd_access(id,level,cid,0)) return PLUGIN_HANDLED new colour[1],mode[1],str_timeoff[2],timeoff read_argv(1,mode[0],1) switch(mode[0]) { case '0':{ remove_task(9876543);off=0 server_print("[ServerOFF] The timer is switched off!") return PLUGIN_HANDLED } case '1':{ hours=0;minutes=59;seconds=59 read_argv(2,str_timeoff,sizeof(str_timeoff)) timeoff=str_to_num(str_timeoff) if(timeoff>0) hours=timeoff-1 if(hours==0) server_print("[ServerOFF] The server will be switched off through 1 hours!") else server_print("[ServerOFF] The server will be switched off through %d hours!",timeoff) read_argv(3,colour,sizeof(colour)) } case '2':{ timeoff=get_timeleft() if(timeoff!=0) { hours=timeoff/3600;minutes=timeoff/60;seconds=timeoff%60;off=1 server_print("[ServerOFF] The server will be switched off in the end of a map!") } else { server_print("[ServerOFF] Error! Timeleft is equal 0!") return PLUGIN_HANDLED } read_argv(2,colour,sizeof(colour)) } case '3':{ hours=0;minutes=0;seconds=10 server_print("[ServerOFF] The server will be switched off now!") read_argv(2,colour,sizeof(colour)) } default: return PLUGIN_HANDLED } switch(colour[0]) { case 'w':{ red=250;green=250;blue=250 } case 'r':{ red=250;green=0;blue=0 } case 'g':{ red=0;green=250;blue=0 } case 'b':{ red=0;green=0;blue=250 } case 'y':{ red=250;green=180;blue=30 } default:{ red=250;green=250;blue=250 } } set_task (1.0,"timer",9876543,_,_,"b") return PLUGIN_HANDLED } public func_say_serveroff(id,level,cid) { if(!cmd_access(id,level,cid,0)) return PLUGIN_HANDLED menuHours=0;menuMinutes=0;menuSeconds=0 menuRed=250;menuGreen=250;menuBlue=250 number=0;options=false format(menuitem[1],63,"Выключить через час") format(addmenu[1],66,"\w%s",menuitem[1]) format(menuitem[2],63,"Выключить в конце карты") format(addmenu[2],66,"\w%s",menuitem[2]) format(menuitem[3],63,"Выключить сейчас") format(addmenu[3],66,"\w%s",menuitem[3]) format(menuitem[4],63,"Настройки") format(addmenu[4],66,"\w%s",menuitem[4]) func_menu_serveroff(id) return PLUGIN_HANDLED } public func_menu_serveroff(id) { main_menu=menu_create("\rServerOFF","main_menu_handler") menu_additem(main_menu,addmenu[1]) menu_additem(main_menu,addmenu[2]) menu_additem(main_menu,addmenu[3]) menu_addblank(main_menu,-1) menu_addblank(main_menu,-1) menu_additem(main_menu,addmenu[4]) menu_addblank(main_menu,-1) menu_additem(main_menu,"Применить") menu_additem(main_menu,"Остановить таймер") menu_setprop(main_menu,MPROP_EXITNAME,"Выход") menu_display(id,main_menu,0) return PLUGIN_HANDLED } public main_menu_handler(id,main_menu,item) { item++ switch(item) { case 1: { number++ if(number!=1 && number!=21) { format(menuitem[1],63,"Выключить через %d час%s",number,number<5 ? "а":"ов") format(addmenu[1],66,"\y%s",menuitem[1]) } else { number=1 format(menuitem[1],63,"Выключить через час") format(addmenu[1],66,"\y%s",menuitem[1]) } menuHours=number-1;menuMinutes=59;menuSeconds=59;off=0 format(addmenu[2],66,"\w%s",menuitem[2]) format(addmenu[3],66,"\w%s",menuitem[3]) func_menu_serveroff(id) return PLUGIN_HANDLED } case 2:{ timeoff=get_timeleft() if(timeoff!=0) { menuHours=timeoff/3600;menuMinutes=timeoff/60;menuSeconds=timeoff%60;off=1 format(addmenu[2],66,"\y%s",menuitem[2]) } else { set_hudmessage(255, 255, 255, -1.0, 0.03, 0, 6.0, 7.0,_,_,3) show_hudmessage(id, "Ошибка: mp_timelimit равно 0") format(addmenu[2],66,"\w%s",menuitem[2]) } format(addmenu[1],66,"\w%s",menuitem[1]) format(addmenu[3],66,"\w%s",menuitem[3]) func_menu_serveroff(id) return PLUGIN_HANDLED } case 3:{ menuHours=0;menuMinutes=0;menuSeconds=10;off=1 format(addmenu[3],66,"\y%s",menuitem[3]) format(addmenu[1],66,"\w%s",menuitem[1]) format(addmenu[2],66,"\w%s",menuitem[2]) func_menu_serveroff(id) return PLUGIN_HANDLED } case 4:{ if(options) { format(addmenu[4],66,"\w%s",menuitem[4]) options=false } else { format(addmenu[4],66,"\y%s",menuitem[4]) options=true } func_menu_serveroff(id) return PLUGIN_HANDLED } case 5:{ remove_task(9876543) hours=menuHours;minutes=menuMinutes;seconds=menuSeconds red=menuRed;green=menuGreen;blue=menuBlue if(hours!=0||minutes!=0) { if(options) func_menu_colour(id) else set_task (1.0,"timer",9876543,_,_,"b") } return PLUGIN_HANDLED } case 6: { remove_task(9876543);off=0 return PLUGIN_HANDLED } } return PLUGIN_HANDLED } public func_menu_colour(id) { colour_menu=menu_create("Цвет сообщений","colour_menu_handler") menu_additem(colour_menu,"Белый") menu_additem(colour_menu,"Красный") menu_additem(colour_menu,"Зеленый") menu_additem(colour_menu,"Синий") menu_additem(colour_menu,"Желтый") menu_setprop(colour_menu,MPROP_PERPAGE,0) menu_display(id,colour_menu,0) return PLUGIN_HANDLED } public colour_menu_handler(id,colour_menu,item) { item++ switch(item) { case 1:{ red=250;green=250;blue=250 } case 2:{ red=250;green=0;blue=0 } case 3:{ red=0;green=250;blue=0 } case 4:{ red=0;green=0;blue=250 } case 5:{ red=250;green=180;blue=30 } } if(reason) func_menu_reason(id) else set_task(1.0,"timer",9876543,_,_,"b") return PLUGIN_HANDLED } public func_menu_reason(id) { reason_menu=menu_create("Причина","reason_menu_handler") for(line=0;read_file(configini,line,text,41,num);line++) { if(num>0 && text[0]!=';') { format(reasontext,64,"%s...",text) menu_additem(reason_menu,reasontext) } } menu_setprop(reason_menu,MPROP_PERPAGE,0) menu_display(id,reason_menu,0) return PLUGIN_HANDLED } public reason_menu_handler(id,reason_menu,item) { read_file(configini,item,text,64,num) reasontext=text set_task(1.0,"timer",9876543,_,_,"b") return PLUGIN_HANDLED } public timer() { seconds-- if(minutes>0 && seconds==0) { minutes--;seconds=59 } else if(minutes==0 && seconds==0) { if(hours!=0) { hours--;minutes=59;seconds=59 } else serveroff() } if(hours==0 && minutes==0 && seconds==10) { format(motd,500,"
") format(addmotd,210,"
Сервер будет выключен через 10 секунд
") add(motd,500,addmotd) show_motd(0,motd,"ServerOFF") } set_hudmessage(red,green,blue,-1.0,0.01,0,6.0,1.0,_,_,3) show_hudmessage(0,"Время до выключения сервера: %s%d:%s%d:%s%d^n%s",hours<10 ? "0":"",hours,minutes<10 ? "0":"",minutes,seconds<10 ? "0":"",seconds,reason ? reasontext:"") } public serveroff() { new players[32],num,i get_players(players,num) for(i=0;i
Отправить
Загрузил
dvoenkin23gfg
2019-01-08 15:58:34
0
2
Установить на сервер
Скачать
Нет оплаченых серверов
Купить сервер CS 1.6
Купить сервер CS:GO
Купить сервер CSS v34
Подключить свой VDS к панели
Данная иконка означает, что плагин был проверен администрацией хостинга на тестовом сервере, и проблем с ним не было выявлено. Рекомендуем ставить исключительно проверенные плагины.
Плагин загружен на сервер, но проверка еще не была проведена.
CSHOST.COM.UA 2012-2025 Хостинг игровых серверов