Перейти к публикации
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...
  • Нужна помощь?

    Создайте тему в соответствующем разделе
    Не нужно писать всё в чат!
  • Загляните на торговую площадку

    Там вы можете купить
    всё что касается игровых серверов
  • Не хотите бан?

    Пожалуйста, ознакомьтесь с нашими правилами
    Не нарушайте порядок!
  • Продаёте или покупаете?

    Пользуйтесь услугами гаранта
    Мы сделаем вашу сделку безопасной

Как сделать что бы онлайн писался с новой строки . И можно ли как то поменять цвет сообщений ?

Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Рекомендованные сообщения

  • 0
52 минуты назад, 123new сказал:

Time_InfoPlayers_Repeat и есть оно, если я правильно понял вопрос

 

вот сам код

Цитата

 

int TIME_Information_Repeat = 60000; //in ms (60 seconds = 60000)

ref TStringArray Messages = {"смс #1",
           "смс #2",
           "смс #3"};

void CustomInformation()
{
    //GetGame().GetWorld().GetPlayerList(m_Players);
    array<Man> players = new array<Man>;
    GetGame().GetPlayers( players );
    private int numbOfplayers = players.Count();
    
    if( numbOfplayers > 0 )
    {
       GetGame().ChatPlayer(3,Messages.GetRandomElement());
   }
}

 

 

вот между смс # нужен интервал, скажем 5-10 мин.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах





  • 0
2 часа назад, inQ4 сказал:

 

вот сам код

 

вот между смс # нужен интервал, скажем 5-10 мин.

1000 - это 1 секунда.

60 секунд - 1 минута

Итого, 5 минут это 5*60*1000 = 300000

Т.е. в Time_InfoPlayers_Repeat устанавливаете 300000 и джолжно получиться именно так как вы решили, т.е. раз в 5 минут одно из этих смс будет написано.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
8 часов назад, 123new сказал:

1000 - это 1 секунда.

60 секунд - 1 минута

Итого, 5 минут это 5*60*1000 = 300000

Т.е. в Time_InfoPlayers_Repeat устанавливаете 300000 и джолжно получиться именно так как вы решили, т.е. раз в 5 минут одно из этих смс будет написано.

 

мне надо что бы смс #1 покзало каждые 5 минут

смс #2 через 10 минут

смс #3 через 15 минут

 

т.е интервал между сообщениями, а этот параметр как я понимаю выводит все три сообщения в заданный промежуток.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
2 часа назад, inQ4 сказал:

 

мне надо что бы смс #1 покзало каждые 5 минут

смс #2 через 10 минут

смс #3 через 15 минут

 

т.е интервал между сообщениями, а этот параметр как я понимаю выводит все три сообщения в заданный промежуток.

этот параметр выводит рандомное сообщение из списка через заданный промежуток времени. Если вы хотите через каждые n-е количество минут показывать конкретные сообщения, вам тогда скрипт надо переписывать серьезно так. Проще сразу BEC поставить и настроить, проще будет, там это имеется в функционале, и как раз период для каждого сообщения настраивается.

Изменено пользователем 123new (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
5 минут назад, 123new сказал:

этот параметр выводит рандомное сообщение из списка через заданный промежуток времени. Если вы хотите через каждые n-е количество минут показывать конкретные сообщения, вам тогда скрипт надо переписывать серьезно так. Проще сразу BEC поставить и настроить, проще будет, там это имеется в функционале, и как раз период для каждого сообщения настраивается.

 

в BEC он пишет от battleye красным цветом, что не совсем удобно. проще без имени от кого: и белым, как выставил я. возможно есть другие варианты?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
  • 0
1 час назад, inQ4 сказал:

 

в BEC он пишет от battleye красным цветом, что не совсем удобно. проще без имени от кого: и белым, как выставил я. возможно есть другие варианты?

ну тогда делаем так. Скрипт, который вы правите, делаете всего для одного сообщения, и выставляете частоту его отправки.

Далее этот скрипт копируете, вставляете в тот же файл, но ниже, и все переменные в том коде, что вставили, изменяете. чтобы они не совпадали. Например, цифарку дописываете. На всех переменных, включая сами функции.
Ну и аналогичным вызовом, как для 1 сообщения, добавляете вызова в ините.
Вроде не очень сложно объяснил.

Изменено пользователем 123new (история изменений)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Похожие публикации

    • Автор: thessend
      Собственно..за несколько минут у меня кикает с сервера, но вот сообщения в меню не выдается никакое, объясните, как выводить его что сервер рестартится? И последующие при повторном подключении?
    • Автор: BorizzK
      Автор я
      На основе наработок комьюнити, на основе идей DaOne
       
      Мучайте
      P.S. Так же там есть доп функционал - для вызовов из класса миссии
      P.S.2. Инструкция (на англ) внутрях
       
       

      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
    • Автор: Alex39
      Прописал скрипт, серверные сообщение, вроде как работают, но есть косяки, может кто подскажет в чем проблема,
      override void OnInit() { GetGame().GetCallQueue(CALL_CATEGORY_GAMEPLAY).CallLater(NumPlayersOnServer, 30000, true); // 30 seconds } void NumPlayersOnServer() { ref array<Man> players = new array<Man>; GetGame().GetPlayers( players ); int numPlayers = players.Count(); for( int i=0; i < players.Count(); ++i ) { Man player = players.Get(i); if( player ) { string messPlayers = "Players on the server: " + numPlayers.ToString(); Param1<string> m_MessageParam = new Param1<string>(messPlayers); GetGame().RPCSingleParam(player, ERPCs.RPC_USER_ACTION_MESSAGE, m_MessageParam, true, player.GetIdentity()); } } }
       
      Проблема пропадание трейдера, админ тулз из за этого скрипта
       
      override void OnInit() { GetGame().GetCallQueue(CALL_CATEGORY_GAMEPLAY).CallLater(NumPlayersOnServer, 30000, true); // 30 seconds }  
    • Автор: 123new
      В данной теме мы с вами научимся создавать простой скрипт, который позволит выводить в чат объявления о количестве игроков.
       
      Нам понадобится:
      1. Сервер DayZ 1.0, сделанный по одному из гайдов:
      2. Notepad++
      3. Немножечко трезвого ума
       
      Приступим:
      1. Открываем Mpmissions - dayzOffline.chernarusplus - init.c
      2. В самом начале файла добавляем:
      #include "$CurrentDir:\\mpmissions\\dayzOffline.chernarusplus\\PlayersMessagesCount.c" Находим функцию
      void main() и перед ее закрывающей скобкой "}"добавляем:
      GetGame().GetCallQueue(CALL_CATEGORY_GAMEPLAY).CallLater(SendPlayersCount, CountPlayers_TIME_InfoPlayers_Repeat, true); 3. Помещаем в папку файл
      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
      Либо создаем вручную этот файл с именем "PlayersMessagesCount.c" и заполняем его следующим текстом:
      int CountPlayers_TIME_InfoPlayers_Repeat = 120000; //in ms (120 seconds = 120000) string Message_Chat = "Online Players: "; void SendPlayersCount() { array<Man> players = new array<Man>; GetGame().GetPlayers( players ); int numbOfplayers = players.Count(); if( numbOfplayers > 0 ) { foreach(Man player: players) { CountPlayers_SendPersonalMessage(Message_Chat + numbOfplayers.ToString(), player); } // GetGame().ChatPlayer(0,Message_Chat + numbOfplayers.ToString()); } } void CountPlayers_SendPersonalMessage(string message, Man player) { if(( player ) && (message != "")) { Param1<string> m_GlobalMessage = new Param1<string>(message); GetGame().RPCSingleParam(player, ERPCs.RPC_USER_ACTION_MESSAGE, m_GlobalMessage, true, player.GetIdentity()); } } 4. Настраиваем файл как нам нужно. Т.е. в строке
      int CountPlayers_TIME_InfoPlayers_Repeat = 120000; //in ms (120 seconds = 120000) указываем время повтора вывода сообщений в чат (поумолчанию стоит 2 минуты)
      и текст сообщений в переменной
      string Message_Chat = "Online Players: ";  
      P.S. Если сообщения вам не видны, включите их видимость в настройках вашего клиента игры для себя!
       
  • Наш выбор

×
×
  • Создать...

Важная информация

Используя этот сайт, вы автоматически обязуетесь соблюдать наши Правила и Политика конфиденциальности.
Чтобы сделать этот веб-сайт лучше, мы разместили cookies на вашем устройстве. Вы можете изменить свои настройки cookies, в противном случае мы будем считать, что вы согласны с этим.