Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
  • Need help?

    Create a topic in the appropriate section
    Don't write everything in the chat!
  • Take a look at the marketplace

    There you can buy
    everything related to game servers
  • Don't want a ban?

    Please read our rules
    Don't disturb the order!
  • Sell or buy?

    Use services of the guarantor
    We will make your deal safe
dimquea

[ГАЙД] Настраиваемые информационные диалоги

Recommended Posts

Маленький мод, позволяющий создавать настраиваемые информационные диалоги.

 

1) Качаем и распаковываем архив

 

2) Папку help кидаем в папку с миссией

 

3) Содержимое description.ext из папки, нужно добавить в конец своего description.ext, после этого файл можно удалить

 

Теперь нужно настроить вызов диалога в игре. Вариантов масса, я рассмотрю лишь вариант с хоткеем.

 

1) Открываем dayz_spaceInterrupt.sqf

Если его нет:

 

 

1) идём в @Dayz_Epoch\addons\dayz_code.pbo\actions и копируем файл dayz_spaceInterrupt.sqf в папку custom в вашей миссии

2) открываем compiles.sqf и ищем:

dayz_spaceInterrupt = compile preprocessFileLineNumbers "\z\addons\dayz_code\actions\dayz_spaceInterrupt.sqf";

и заменяем на:

dayz_spaceInterrupt = compile preprocessFileLineNumbers "custom\dayz_spaceInterrupt.sqf";

 

 

 

над последним _handled добавляем:

if (_dikCode == скан_код) then {
	_hndl = createdialog "HELP_DIALOG";
};

где скан_код заменяем нужным значением. Скан коды можно посмотреть здесь.

А HELP_DIALOG идентификатор диалога. Об этом дальше.

 

Если в инфистаре включена блокировка диалогов:

2) Открываем hlp_dialog.hpp в папке help

 

3) Ищем idd = 1; и заменяем еденицу на рандомное значение.

 

4) Открываем AHconfig.sqf и в блок _ALLOWED_Dialogs добавляем наше значение.

 

Готово. Теперь тестовый диалог открывается в игре нажатием выбранной клавиши.

 

Теперь переходим к кастомизации.

 

Мод использует обычные HTML страницы, про верстку рассказывать не буду, это тема для другой статьи, да и из стандартного файла всё понятно.

 

Разберём файл hlp_dialog.hpp:

 

 

class HELP_DIALOG // Идентификатор диалога, используется для вызова. Должен быть уникальным для каждого диалога.
{
idd = 1; // Меняем на своё значение, добавляем в разрешённые диалоги инфистара. Все диалоги могут иметь одинаковый idd.
movingenable = true;
   
class Controls
{
class help_box: Box_help
{
	idc = -1;
	x = 0.14777 * safezoneW + safezoneX;
	y = 0.0789474 * safezoneH + safezoneY;
	w = 0.707986 * safezoneW;
	h = 0.844211 * safezoneH;
};
class hlp_frame: RscFrame_help
{
	idc = 1800;
	text = "Help and Information";  // Заголовок диалога. Меняем текст в ковычках на свой.
	x = 0.14777 * safezoneW + safezoneX;
	y = 0.0789474 * safezoneH + safezoneY;
	w = 0.707986 * safezoneW;
	h = 0.844211 * safezoneH;
};
class hlp_picture: RscPicture_help // Картинка справа сверху. Удаляем класс целиком, если картинка не нужна.
{
	idc = 1200;
	text = "help\dayz-tr.paa"; // Путь до изображения.
	x = 0.489511 * safezoneW + safezoneX;
	y = 0.102632 * safezoneH + safezoneY;
	w = 0.353134 * safezoneW;
	h = 0.192894 * safezoneH;
	
};
class hlp_text: RscHTML_Help // Маленький блок информации в шапке. Может быть одинаковым во всех диалогах.
{
	idc = 1000;
	filename = "help\help_txt.html"; // Путь до файла.
  	text = "";	x = 0.167872 * safezoneW + safezoneX;
	y = 0.122369 * safezoneH + safezoneY;
	w = 0.308559 * safezoneW;
	h = 0.21 * safezoneH;
};
class hlp_html: RscHTML_Help // Содержимое диалога.
{
	idc = 1100;
	filename = "help\help.html"; // Путь до файла.
  	text = "";
	x = 0.164376 * safezoneW + safezoneX;
	y = 0.348684 * safezoneH + safezoneY;
	w = 0.677395 * safezoneW;
	h = 0.478422 * safezoneH;
};
class hlp_button: RscButton_help // Кнопка выхода.
{
	idc = 1600;
	text = "Close"; // Текст на кнопке.
	x = 0.699277 * safezoneW + safezoneX;
	y = 0.85 * safezoneH + safezoneY;
	w = 0.0987937 * safezoneW;
	h = 0.0521053 * safezoneH;
	action = closedialog 0;
};
};
};

 

 

 

Можно копировать этот код сколько угодно раз, главное менять пути и идентификатор диалога на свой.

 

Источник.

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

Edited by dimquea (see edit history)

Share this post


Link to post
Share on other sites



Скрины бы скинул. А то половина людей не поймёт что это вообще. :)

Share this post


Link to post
Share on other sites

 

Скрины бы скинул. А то половина людей не поймёт что это вообще. :)

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

Share this post


Link to post
Share on other sites

содержимое 2го html файла не показывает

Share this post


Link to post
Share on other sites

содержимое 2го html файла не показывает

а как то конкретнее можно?

Share this post


Link to post
Share on other sites

Интересно, надо себе такое с правилами замутить, только как сделать так чтобы оно автоматом после титров открылось...

Share this post


Link to post
Share on other sites

а как то конкретнее можно?

из файла help_txt показывает, а из help нет

Share this post


Link to post
Share on other sites

Спасибо, давно искал, + заслужил. Сейчас попробую поставить!

Share this post


Link to post
Share on other sites

из файла help_txt показывает, а из help нет

пути в dialog.hpp правильные?

Share this post


Link to post
Share on other sites

да всё правильно 

а help.html редактировал?

Share this post


Link to post
Share on other sites

Ты лучше расскажи как сам диалог написать. Мне очень интересно, в инете не очень много инфы. Как написать defines.hpp и тд, я был бы очень рад. Ну или хотя бы поверхностно.

Share this post


Link to post
Share on other sites

А как сделать чтоб можно было еще и закрывать через кнопку?Например через F10.

Edited by Nyborezik (see edit history)

Share this post


Link to post
Share on other sites

Народ так всё таки, подскажите как заставить диалог открываться автоматом , после появления игрока

Edited by all88 (see edit history)

Share this post


Link to post
Share on other sites

Народ так всё таки, подскажите как заставить диалог открываться автоматом , после появления игрока

Попробуй вставить это в init.sqf:

_hndl = createdialog "HELP_DIALOG";

После:

if (!isDedicated) then 
	{

Я не уверен, что это сработает, но в теории должно :)

Edited by SpiritWolf (see edit history)

Share this post


Link to post
Share on other sites

А как сделать чтоб можно было еще и закрывать через кнопку?Например через F10.

а чем кнопка "закрыть" не устраивает? ескейп тоже закрывает.

 

Ты лучше расскажи как сам диалог написать. Мне очень интересно, в инете не очень много инфы. Как написать defines.hpp и тд, я был бы очень рад. Ну или хотя бы поверхностно.

тебе нужен диалог для чего то другого? на вики богемии полно инфы по диалогам. если ты про содержимое этих диалогов, то тебе нужно править html файлы.

Share this post


Link to post
Share on other sites

Попробуй вставить это в init.sqf:

_hndl = createdialog "HELP_DIALOG";

После:

if (!isDedicated) then 
	{

Я не уверен, что это сработает, но в теории должно :)

попробую сенкью)

Share this post


Link to post
Share on other sites

Добрый день, у меня к тебе такой вопрос: я поставил данный скрипт себе на серв, добавил в исключения цифры. Все прекрасно работает. Но есть маленькое НО: у меня стоит Snap Building Pro и когда устанавливаешь какую либо деталь и фиксируешь ее на букву F-она не фиксируется. Так вот, может ли функция фиксации отказать из-за этого скрипта?

Share this post


Link to post
Share on other sites

Добрый день, у меня к тебе такой вопрос: я поставил данный скрипт себе на серв, добавил в исключения цифры. Все прекрасно работает. Но есть маленькое НО: у меня стоит Snap Building Pro и когда устанавливаешь какую либо деталь и фиксируешь ее на букву F-она не фиксируется. Так вот, может ли функция фиксации отказать из-за этого скрипта?

у меня и то и то стоит и прекрасно работает. ищи ошибку в spaceInterrupt.

Share this post


Link to post
Share on other sites

Значение "HELP_DIALOG" менять надо? 

Сейчас у меня вот так вот:
if (_dikCode == 0x41) then {
    _hndl = createdialog "HELP_DIALOG";
};
 
_handled
Edited by niksolnshu (see edit history)

Share this post


Link to post
Share on other sites

 

Значение "HELP_DIALOG" менять надо?

да. если ты редактировал hlp_dialog.hpp.

вот так начинается код диалога:

class FAQ_DIALOG
{
idd = 1666;
movingenable = true;

FAQ_DIALOG это его идентификатор, который и надо вызывать.

Share this post


Link to post
Share on other sites

Кирилицу не воспринимает. Какой шрифт и куда нужно вписать, чтоб воспринимало?

Share this post


Link to post
Share on other sites

Да, я только подошел к этому варианту. Сейчас вот пробую



Кодировку может? UTF-8 без BOM

Как это "Без BOM"?  

Поставил charset=utf-8, все равно ????? отображает  :biggrin:

Share this post


Link to post
Share on other sites

Да, я только подошел к этому варианту. Сейчас вот пробую

 

Как это "Без BOM"?  

Поставил charset=utf-8, все равно ????? отображает  :biggrin:

это вот так

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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Makliion
      Всем добрый вечер..
      У меня такой вопрос где найти или заказать скрипт для обыска зомбей & игроков 
      что-бы каждую вещь снимать через действие а не тупо через таб
      Шлем отдельно
      Рюкзак отдельно
      ну и на все остальные слоты
      искал долго не нашёл ничего
      есть мод на обыск но он просто открывает  инвентарь и все 
       
    • By Troy1
      Всем привет. Подскжите ну или помогите пожалуйста решить вопрос.
      Вопрос звучит так. На сервере есть трейдер зоны и базы игроков. 
      Если в течение определённого времени, на пример 1 - 2 часа с машиной не кто не взаимодействует и машина не находится в зоне трейдера или на теретории базы, то машина отлетает в гараж или на штраф стоянку.
      На сервере используется TraderPlus.
       
      Есть такие решения у кого?
      За ранние благодарю.
    • By Troy1
      Всем привет. Подскжите ну или помогите пожалуйста решить вопрос.
      Вопрос звучит так. Нужно сделать так, что бы на всей карте был запрет на строительство. 
      Если нужно построить например базу с палатками, то нужно установить верстак или флаг, который установит зону для строительства с радиусом примерно 20-25 метров от центра и желательно что бы зона была квадратной.
      Есть такие решения у кого?
      За ранние благодарю.
    • By BR0wi
      Подскажите где найти людей, которые делаю моды на заказ. К кому вообще обращаться? Или что бы реализовать свои идеи нужно самому "год" сидеть и изучать все механики модинга?
    • By CubeIn
      Приветствую господа, хочу создать новый проект, уникальный, но для этого нужен маппер.
      Я оставлю здесь свой дискрод, напишите в лс, кто готов взяться за крупный проект.
      4me#4542
  • Our picks

×
×
  • Create New...

Important Information

By using this site, you automaticly agree to our Guidelines and Privacy Policy.
We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.