Сообщение в определенное время

Тема в разделе "Counter-Strike: Global Offensive", создана пользователем MIV, 27 июн 2015.

  1. MIV

    MIV

    Сообщения:
    633
    Симпатии:
    26
    Возможно ли вывести сообщения через sm_say в определенное время к примеру в 8.30 ч. сообщение предупреждающее о рестарте сервера.
     
  2. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.505
    Симпатии:
    1.961
    [Любая игра] Единоразовый показ сообщения в определенное время

    Хотя бы так:
    PHP:
    #define HOUR_TIME        8
    #define MIN_TIME        30
    #define SEC_TIME        00


    #define MESSAGE_TIME HOUR_TIME*3600+MIN_TIME*60+SEC_TIME
    public OnPluginStart()
    {
        
    decl String:time[7], resultString:mins[3], String:seconds[3];
        
    FormatTime(time7"%H%M%S");
        
    strcopy(seconds3time[4]);
        
    time[4] = '\0';
        
    strcopy(mins3time[2]);
        
    time[2] = '\0';
        
    CreateTimer(>(result=MESSAGE_TIME-(StringToInt(time)*3600+StringToInt(mins)*60+StringToInt(seconds))) ? float(86399+result):float(result-1), Message);
    }

    public 
    Action:Message(Handle:timer
    {
        
    ServerCommand("sm_say Скоро перезагрузка сервера!");
        return 
    Plugin_Stop
    }
    Указание времени:
    HOUR_TIME - час для сообщения;
    MIN_TIME - минута для сообщения;
    SEC_TIME - секунда времени сообщения.
    У кода относительно малая точность времени. Сработка - 1 раз (нужна перезагрузка сервера/плагина).
     
    Последнее редактирование: 30 июн 2015
    TWRP, Leckter Hannibal, MIV и 2 другим нравится это.
  3. MIV

    MIV

    Сообщения:
    633
    Симпатии:
    26
    Спасибо!):friends:

    Но сообщение не выводит(
     
    Последнее редактирование: 29 июн 2015
  4. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.971
    Симпатии:
    2.977
    MIV, твое время может не совпадать с серверным если сервер не на твоем компе, учти это.
     
  5. Саша Шеин

    Саша Шеин

    Сообщения:
    1.258
    Симпатии:
    191
    Раз тут идут разговоры про время:
    1) Как перевести GetTime() в такой формат: 03.06.2010 21:18:32 (В FormatTime это %G
     
  6. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.971
    Симпатии:
    2.977
    Саша Шеин, в шопе посмотри. Я оттуда в вип брал. А так, в гугле есть много инфы.
     
  7. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.505
    Симпатии:
    1.961
    У меня выводит. Сам попробуй задать пару минут и посидеть на сервере.
    Другое дело, выводит не вовремя, ибо разброс от таймера (неточность) всё же большой. Оффтоп

    P.S. Переделал. Заполнять всё отдельно - у тебя уже установлено на 8:30:00.
     
  8. MIV

    MIV

    Сообщения:
    633
    Симпатии:
    26
    Проверяю по thetime на серве, по нему точно должно?
     
  9. TWRP

    TWRP Read Only

    Сообщения:
    317
    Симпатии:
    45
    Re: [Любая игра] Единоразовый показ сообщения в определенное время

    смена карты будет достаточно ?
     
  10. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.505
    Симпатии:
    1.961
    Приблизительно. Секунда в секунду не получится при длительном ожидании до сообщения.
    Чтобы плагин сработал, достаточно загрузить его любым известным способом.
     
    MIV нравится это.