Поиск Включение плагинов в заданное время

Статус
В этой теме нельзя размещать новые ответы.

REVO

Пользователь
Регистрация
9 Июн 2017
Сообщения
271
Симпатии
78
Пол
Мужской
ВКонтакте
isss67wtf
Всем привет!
Хочу узнать существует ли такой плагин который в определенное время ставит заданные плагины на паузу, или вовсе их отключает до определенного времени, и наоборот включает необходимые плагины, на определенное время.
 
Последнее редактирование:

Le$hiy

Пользователь
Регистрация
10 Июн 2017
Сообщения
215
Симпатии
87
Пол
Мужской
REVO, как-то Неугомон скидывал код, сохранил его себе.
PHP:
#include <amxmodx>

public plugin_init()
{
    new hour;
    time(hour);
    if(hour >= 13 && hour < 22) // список плагинов ниже поставится на паузу с 13 до 22 часов
        pause("dc", "nenuzhnij_plugin.amxx");
}
 
  • Мне нравится
Симпатии: REVO

REVO

Пользователь
Регистрация
9 Июн 2017
Сообщения
271
Симпатии
78
Пол
Мужской
ВКонтакте
isss67wtf
Le$hiy, То что ты дал на паузу ставит, а как быть с включением плагинов по времени?
 
Последнее редактирование:

StockX

Скриптер
Регистрация
8 Июн 2017
Сообщения
168
Симпатии
132
Пол
Мужской
REVO,
PHP:
#include <amxmodx>

public plugin_init()
{
    new hour;
    time(hour);
    if(hour >= 13 && hour < 22) // список плагинов ниже уйдёт с паузы с 13 до 22 часов
        unpause("c", "nuzhnij_plugin.amxx");
}
 
  • Мне нравится
Симпатии: REVO

REVO

Пользователь
Регистрация
9 Июн 2017
Сообщения
271
Симпатии
78
Пол
Мужской
ВКонтакте
isss67wtf
StockX, включение отключение, будет происходить в реальном времени?
 

пазлик~

Скриптер
Скриптер
Регистрация
8 Июн 2017
Сообщения
235
Симпатии
134
Пол
Мужской
REVO, Во время смены или рестарта карты
 

xopoIIIuu

Пользователь
Регистрация
17 Июл 2017
Сообщения
23
Симпатии
1
Пол
Мужской
Кому-то ранее кидал это по просьбе, тот человек сказал что не работает. Проверять и исправлять не стал, ибо данный плагин мне не к чему. Тот человек нашел другую альтернативу на аленях.

Код:
#include <amxmodx>

#define PLUGIN "NightMode"
#define VERSION "0.1 BETA"
#define AUTHOR "amxmodx"


/*    ########## -> Укажите время, для начала режима <- ##########    */
#define PB_MODE_START  "16:00"

/*    ########## -> Укажите карту для начала режима (Требуется для загрузки кваров) <- ##########    */
#define PB_MAPNAME_START "de_dust2"

/*    ########## -> Укажите время, для конца режима <- ##########    */
#define PB_MODE_END    "22:00"

/*    ########## -> Укажите карту для конца режима (Требуется для загрузки кваров) <- ##########    */
#define PB_MAPNAME_END "de_dust2"

new g_ExecStartCmds[][] =
{
    "amxx unpause mapchooser.amxx",
    "exec server.cfg"
}

new g_ExecPauseCmds[][] =
{
    "amxx pause mapchooser.amxx",
    "mp_timelimit 0"
}


#define MODE_DAY    0
#define MODE_NIGHT  1

#define TIME_UNIT_LENGTH   2
#define TIMESTRING_LENGTH  TIME_UNIT_LENGTH * 2 + 1

enum _:IntervalTypes
{
    NIGHT_START,
    NIGHT_END
}

enum _:TimeUnits
{
    TIME_HOUR,
    TIME_MINUTE
}

#define MINUTES_IN_DAY 1440

new giNightModeBorder[IntervalTypes], giMode, giNextChangeDelay, iLastProcessingTime

new const giTimeLimit[TimeUnits] =
{
    24,
    60
}

public plugin_init()
{
    register_plugin( PLUGIN, VERSION, AUTHOR )

    #define TIME_UNIT_DELIMITER ':'

    new szNightModeIntervals[IntervalTypes][TimeUnits][TIME_UNIT_LENGTH + 1]
   
    strtok(PB_MODE_START, szNightModeIntervals[NIGHT_START][TIME_HOUR], TIME_UNIT_LENGTH,
        szNightModeIntervals[NIGHT_START][TIME_MINUTE], TIME_UNIT_LENGTH, TIME_UNIT_DELIMITER)
   
    strtok(PB_MODE_END, szNightModeIntervals[NIGHT_END][TIME_HOUR], TIME_UNIT_LENGTH,
        szNightModeIntervals[NIGHT_END][TIME_MINUTE], TIME_UNIT_LENGTH, TIME_UNIT_DELIMITER)

    for( new i = 0; i < IntervalTypes; i++ )
    {
        giNightModeBorder = ( str_to_num( szNightModeIntervals[TIME_HOUR] ) % giTimeLimit[TIME_HOUR] )
            * giTimeLimit[TIME_MINUTE] + str_to_num( szNightModeIntervals[TIME_MINUTE] ) % giTimeLimit[TIME_MINUTE]
    }

    new iHours, iMinutes
   
    time( iHours, iMinutes )
    iLastProcessingTime = iHours * giTimeLimit[TIME_MINUTE] + iMinutes

    new iDelay[IntervalTypes]
    iDelay[NIGHT_START] = GetModeChangeDelay(iLastProcessingTime, giNightModeBorder[NIGHT_START])
    iDelay[NIGHT_END] = GetModeChangeDelay(iLastProcessingTime, giNightModeBorder[NIGHT_END])

    if( iDelay[NIGHT_START] < iDelay[NIGHT_END] )
    {
        giMode = MODE_DAY
    }
    else giMode = MODE_NIGHT

    giNextChangeDelay = iDelay[giMode]
    ProcessCurrentMode()
}

GetModeChangeDelay( currenttime, nexttime )
{
    giNextChangeDelay = nexttime - currenttime
   
    if( giNextChangeDelay < 0 )
    {
        giNextChangeDelay += MINUTES_IN_DAY
    }
    return giNextChangeDelay
}

ProcessCurrentMode()
{
    switch( giMode )
    {
        case MODE_DAY :
        {
            for(new i; i < sizeof g_ExecStartCmds; i++)
            {
                server_cmd("%s", g_ExecStartCmds);
                server_cmd("changelevel %s", PB_MAPNAME_START);
            }
        }
        case MODE_NIGHT :
        {
            for(new i; i < sizeof g_ExecPauseCmds; i++)
            {
                server_cmd("%s", g_ExecPauseCmds);
                server_cmd("changelevel %s", PB_MAPNAME_END);
            }
        }
    }
}
 

REVO

Пользователь
Регистрация
9 Июн 2017
Сообщения
271
Симпатии
78
Пол
Мужской
ВКонтакте
isss67wtf
xopoIIIuu, мне не совсем понятно как правильно вписать вкл/откл
Код:
csdm_enable
csdm_disable
[doublepost=1504203540][/doublepost]xopoIIIuu, ошибки при компиляции. reamx
//AMXXPC compile.exe
// by the AMX Mod X Dev Team


//// NightMode.sma
//
// C:\rehlds_csdm\cstrike\addons\amxmodx\scripting\NightMode.sma(81) : error 048
: array dimensions do not match
//
// 1 Error.
// Could not locate output file C:\rehlds_csdm\cstrike\addons\amxmodx\scripting\
compiled\NightMode.amx (compile failed).
//
// Compilation Time: 0,12 sec
// ----------------------------------------

Press enter to exit ...
 

xopoIIIuu

Пользователь
Регистрация
17 Июл 2017
Сообщения
23
Симпатии
1
Пол
Мужской
REVO, забудь о reamx. Ставь 1.8.3 и проверяй
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу