Автор: wellasgood
Версия: 1.0.2
Краткое описание: Обновление услуг на сервере без ручного вмешательства.
История обновлений: Вы должны зарегистрироваться, чтобы видеть ссылки.
Внимание! Если у Вас на сервере есть плагины на выдачу временных услуг игрокам (допустим на карту или другое время), и сброс идет по команде 'amx_reloadadmins', то будет деактивация такой услуги!
Обновление добавляемых услуг на сервере, через заданный интервал времени (дабы не ждать окончания карты или не делать перезапуск самостоятельно).
С установкой данного творения на сервер, Вы позабудете о нервотрепках, например, со стороны тех кто купил услугу онлайн, так как, в большинстве случаев приходится ждать смены карты, или в ручную вводить команду по обновлению.
С установкой данного творения на сервер, Вы позабудете о нервотрепках, например, со стороны тех кто купил услугу онлайн, так как, в большинстве случаев приходится ждать смены карты, или в ручную вводить команду по обновлению.
Amx Mod X 1.8.2, Amx Mod X 1.9.0, Amx Mod X 1.10.0 dev
melfyk
- Скомпилируйте плагин.
- Скопируйте скомпилированный файл .amxx в директорию: amxmodx/plugins/
- Пропишите .amxx в файле amxmodx/configs/plugins.ini
- Смените карту или перезапустите сервер.
В .sma:
Внимание! Не ставьте слишком маленькое время для режима GLOBAL_TASK_SYSTEM (оптимальное предлагаемое время от знатоков: 180 сек)
- Код: Выделить всё
//Режимы работы плагина. Откомментируйте то, что хотите использовать. (возможно комбинировать режимы)
#define GLOBAL_TASK_SYSTEM //[Режим] Запуск задачи по обновлению услуг через временной интервал до конца карты.
//#define ROUND_START_SYSTEM //[Режим] Запуск задачи по обновлению услуг в новом раунде.
//#define ROUND_START_TIME_USE //Использовать ли время до запуска обновления услуг в режиме ROUND_START_SYSTEM.
//#define ROUND_END_SYSTEM //[Режим] Запуск задачи по обновлению услуг в конце раунда.
const Float:GLOBAL_TASK_TIME = 120.0; //Интервал времени выполнения задачи для режима GLOBAL_TASK_SYSTEM (в секундах, формат через точку 0.0)
const Float:ROUND_START_TIME = 5.0; //Время до выполнения задачи для режима ROUND_START_SYSTEM (в секундах, формат через точку 0.0)
Внимание! Не ставьте слишком маленькое время для режима GLOBAL_TASK_SYSTEM (оптимальное предлагаемое время от знатоков: 180 сек)
- Код: Выделить всё
#include <amxmodx>
//Режимы работы плагина. Откомментируйте то, что хотите использовать. (возможно комбинировать режимы)
#define GLOBAL_TASK_SYSTEM //[Режим] Запуск задачи по обновлению услуг через временной интервал до конца карты.
//#define ROUND_START_SYSTEM //[Режим] Запуск задачи по обновлению услуг в новом раунде.
//#define ROUND_START_TIME_USE //Использовать ли время до запуска обновления услуг в режиме ROUND_START_SYSTEM.
//#define ROUND_END_SYSTEM //[Режим] Запуск задачи по обновлению услуг в конце раунда.
#if defined GLOBAL_TASK_SYSTEM
const Float:GLOBAL_TASK_TIME = 120.0; //Интервал времени выполнения задачи для режима GLOBAL_TASK_SYSTEM (в секундах, формат через точку 0.0)
#endif
#if defined ROUND_START_TIME_USE
const Float:ROUND_START_TIME = 5.0; //Время до выполнения задачи для режима ROUND_START_SYSTEM (в секундах, формат через точку 0.0)
#endif
new const PLUGIN[] = "UpdateService_Lite";
new const VERSION[] = "1.0.2";
new const AUTHOR[] = "wellasgood";
public plugin_init()
{
register_plugin(PLUGIN, VERSION, AUTHOR);
#if defined ROUND_START_SYSTEM
register_logevent("RoundStart", 2, "1=Round_Start");
#endif
#if defined ROUND_END_SYSTEM
register_logevent("RoundEnd", 2, "1=Round_End");
#endif
#if defined GLOBAL_TASK_SYSTEM
set_task(GLOBAL_TASK_TIME, "UpdateServiceCmd", .flags = "b");
#endif
}
#if defined ROUND_START_SYSTEM
public RoundStart()
{
#if defined ROUND_START_TIME_USE
set_task(ROUND_START_TIME, "UpdateServiceCmd");
#else
UpdateServiceCmd();
#endif
}
#endif
#if defined ROUND_END_SYSTEM
public RoundEnd()
{
UpdateServiceCmd();
}
#endif
public UpdateServiceCmd()
{
server_cmd("amx_reloadadmins");
}