В данной теме мы с вами научимся создавать простой скрипт, который позволит выводить в чат объявления, которые вы захотите сами.
Нам понадобится:
1. Сервер DayZ 1.0, сделанный по одному из гайдов:
2. Notepad++
3. Немножечко трезвого ума
Приступим:
1. Открываем Mpmissions - dayzOffline.chernarusplus - init.c
2. В самом начале файла добавляем:
#include "$CurrentDir:\\mpmissions\\dayzOffline.chernarusplus\\InfoMessages.c"
Находим функцию
void main()
и перед ее закрывающей скобкой "}"добавляем:
GetGame().GetCallQueue(CALL_CATEGORY_GAMEPLAY).CallLater(CustomInformation, TIME_Information_Repeat, true);
пример:
3. Помещаем в папку файл InfoMessages.c
Либо создаем вручную этот файл с именем "InfoMessages.c" и заполняем его следующим текстом:
int TIME_Information_Repeat = 60000; //in ms (60 seconds = 60000)
ref TStringArray Messages = {"Welcome to My Server!",
"This is server DayZ 1.0 Stable version!",
"Our ip adress: ....", "Our site: ....",
"Good day and big Loot for all!"};
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(0,Messages.GetRandomElement());
foreach(Man player: players)
{
InfoMessages_SendPersonalMessage(Messages.GetRandomElement(), player);
}
}
}
void InfoMessages_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 TIME_Information_Repeat = 60000; //in ms (60 seconds = 60000)
указываем время повтора вывода сообщений в чат (поумолчанию стоит минута)
и сами сообщения в переменной
ref TStringArray Messages = {"Welcome to My Server!",
"This is server DayZ 0.63 Experimental!",
"Our ip adress: ....", "Our site: ....",
"Good day and big Loot for all!"};
Важно: в конце последней строки обязательно должна быть скобка и точка с запятой, иначе сервер не запустится!
P.S. Если сообщения вам не видны, включите их видимость в настройках вашего клиента игры для себя!