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

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

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

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

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

Проблема с Debug монитором.

Здравствуйте форумчане. Возникла проблема с корректным отображением дебаг монитора (скрин приложил).Проблема возникла после того, как я перевёл дебаг монитор (на английском отображалось корректно, но нужно чтобы отображалось на русском). Так же я добавил одну строчку "(Убито):"

 

<t size='1' font='Bitstream' align='left' color='#FF0000'>Убито: </t><br/>
 

 

Кусок с дебагом в AH.cqf:

 

 

hintSilent parseText format[""
                    <t size='1' font='Bitstream' align='Center' >[%1]</t><br/>
                    <t size='0.8' font='Bitstream' align='Center' >Игроков онлайн: %12</t><br/>
                    <img size='4.75' image='%4'/><br/>
                    <t size='1' font='Bitstream' align='left' color='#CC0000'>Кровь: </t><t size='1' font='Bitstream' align='right'>%2</t><br/>
                    <t size='1' font='Bitstream' align='left' color='#0066CC'>Человечность: </t><t size='1' font='Bitstream' align='right'>%3</t><br/>
                    <br/>
                    <t size='1' font='Bitstream' align='left' color='#FF0000'>Убито: </t><br/>
                    <t size='1' font='Bitstream' align='center' color='#FF9500'>Зомби: </t><t size='1' font='Bitstream' align='right'>%9</t><br/>
                    <t size='1' font='Bitstream' align='center' color='#FF9500'>Выживших: </t><t size='1' font='Bitstream' align='right'>%10</t><br/>
                    <t size='1' font='Bitstream' align='center' color='#FF9500'>Бандитов: </t><t size='1' font='Bitstream' align='right'>%11</t><br/>
                    <br/>
                    <t size='1' font='Bitstream' align='left' color='#FFBF00'>Сервер работает: </t><t size='1' font='Bitstream' align='right'>%5h %6min</t><br/>
                    <t size='1' font='Bitstream' align='left' color='#FFBF00'>FPS: </t><t size='1' font='Bitstream' align='right'>%8</t><br/>
                    <t size='1' font='Bitstream' align='Center' color='#CC0000'>%7</t>
                    "",
                    _txt,
                    (r_player_blood),
                    round (player getVariable['humanity', 0]),
                    _pic,
                    _hours,
                    _minutes2,
                    _BottomDebug,
                    (round diag_fps),
                    (player getVariable['zombieKills', 0]),
                    (player getVariable['humanKills', 0]),
                    (player getVariable['banditKills', 0]),
                    _pOn
                    ];
                    uiSleep 1;
                };
            };
            [] spawn fnc_debugX0;
 

 

 

 

Прошу помочь с данной проблемой.

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

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

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


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

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

MagicByte MagicByte MagicByte
  • 0

Смените кодировку файла на UTF-8 (без BOM)

Да, всё заработало, спасибо за помощь!

Только вот делема. При входе на сервер выскакивает такая ошибка (с сервера не выбрасывает). По какой причине она появляется? Вылазит эта ошибка непосредственно на сервере (не в лобби).

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

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

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


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

Да, всё заработало, спасибо за помощь!

Только вот делема. При входе на сервер выскакивает такая ошибка (с сервера не выбрасывает). По какой причине она появляется? Вылазит эта ошибка непосредственно на сервере (не в лобби).

в теме Помощь уже не раз обсуждался этот вопрос. Допишите то что нельзя редактировать в mission.sqm в addons

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


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

в теме Помощь уже не раз обсуждался этот вопрос. Допишите то что нельзя редактировать в mission.sqm в addons

Прошу прощения, но я не находил решение этого вопроса. А по подробнее можно? Что дописать в mission.sqm и куда?

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


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

Прошу прощения, но я не находил решение этого вопроса. А по подробнее можно? Что дописать в mission.sqm и куда?

то что на вашем скрине написано допишите в mission.sqm вот в этот блок:

addOns[]=
	{
		"chernarus",
		"ca_modules_animals",
		"dayz_anim",
		"dayz_code",
		"dayz_communityassets",
		"dayz_weapons",
		"dayz_equip",
		"dayz_epoch",
		"dayz_vehicles",
		"cacharacters_pmc",
		"ca_modules_functions",
		"glt_m300t",
		"pook_h13",
		"csj_gyroac",
		"map_eu",
		"jetskiyanahuiaddon",
		"warehouse",
		"mbg_buildings_3",
		"mbg_killhouses",
		"aif_arma1buildings",
		"mbg_african_buildings",
		"gms_k98",
		"RH_m14",
		"FHQ_Remington",
		"FHQ_Remington_ammo",
		"FHQ_Remington_msr",
		"FHQ_Remington_xm2010",
		"FHQ_Remington_acr",
		"FHQ_Remington_rsass",
		"VILAS_WWP",
		"VILAS_RW_Forces",
		"VILAS_WWP_CO",
		"VILAS_RW_Forces_CO",
		"ddopp_taserpack",
		"smk_anims_lite",
		"MicroAirVehicles",
		"oz_is_objects",
		"monaro",
		"gsc_units_stalker_patch",
		"american_law_enforcement",
		"CYBP_Camels_Config",
		"nissan_350z",
		"ussr_cheytac",
		"bb_mercenary",
		"sbh_paranoia",
		"goosuksf",
		"ussof_us_navy_seals",
		"kpfswaysigns",
                "oz_is_objects"
	};

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


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

то что на вашем скрине написано допишите в mission.sqm вот в этот блок:

addOns[]=
	{
		"chernarus",
		"ca_modules_animals",
		"dayz_anim",
		"dayz_code",
		"dayz_communityassets",
		"dayz_weapons",
		"dayz_equip",
		"dayz_epoch",
		"dayz_vehicles",
		"cacharacters_pmc",
		"ca_modules_functions",
		"glt_m300t",
		"pook_h13",
		"csj_gyroac",
		"map_eu",
		"jetskiyanahuiaddon",
		"warehouse",
		"mbg_buildings_3",
		"mbg_killhouses",
		"aif_arma1buildings",
		"mbg_african_buildings",
		"gms_k98",
		"RH_m14",
		"FHQ_Remington",
		"FHQ_Remington_ammo",
		"FHQ_Remington_msr",
		"FHQ_Remington_xm2010",
		"FHQ_Remington_acr",
		"FHQ_Remington_rsass",
		"VILAS_WWP",
		"VILAS_RW_Forces",
		"VILAS_WWP_CO",
		"VILAS_RW_Forces_CO",
		"ddopp_taserpack",
		"smk_anims_lite",
		"MicroAirVehicles",
		"oz_is_objects",
		"monaro",
		"gsc_units_stalker_patch",
		"american_law_enforcement",
		"CYBP_Camels_Config",
		"nissan_350z",
		"ussr_cheytac",
		"bb_mercenary",
		"sbh_paranoia",
		"goosuksf",
		"ussof_us_navy_seals",
		"kpfswaysigns",
                "oz_is_objects"
	};

 

 

Спасибо, сейчас попробую (+ вам).

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


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

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

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

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

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

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

Войти

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

Войти сейчас

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

    • Автор: Kramtsov
      [KR] QTS - это ПО, задача которого максимально ускорить и упростить процесс отладки модов и поднятия тестовой среды.
       
      В своей мододельской практике я часто сталкиваюсь с рядом проблем, которые хотелось бы автоматизировать или оптимизировать. А именно:
       
      1. Перепаковка PBO перед запуском тестов. Особенно если я не помню, в каких именно проходили изменения;
      2. Необходимость иметь батники на все случаи жизни: Debug, сервер, экспа, и все это под разные карты и миссии;
      3. Куча открытых папок с логами. Да и сама необходимость постоянно лезть в папки и открывать их;
      4. Создание батников и необходимость их постоянно редактировать, чтобы подключить те или иные моды, которые сейчас требуются;
      5. Необходимость держать актуальными данные о модах как для сервера, так и для клиента;
      6. Необходимость постоянно лезть в тестовую папку с билдами и убирать из нее лишнее;
      7. Банально лениво искать кастомную миссию и мод карты, на которой надо что-то протестить;
      8. Создание Simlink'ов для модов или до диска P, чтобы работал filepatching;
      9. Пропись себя в админку в новом профиле. Каждый раз забываю;
      10. Необходимость лезть в папки и редактировать ServerDZ.cfg. Нужный еще найти надо из немалого списка;
      11. Необходимость постоянно сворачивать окна и искать на рабочем столе нужный батник для запуска или остановки процессов.
       
      Думаю тут еще набежит несколько пунктов того, что мне делать порядком надоело, но основные я перечислил.
      Так вот.
       
      [KR] QTS закрывает их все.

      Изначально я хотел себе сделать простенькую программу для быстрого свапа батников, но в итоге получилось то, что получилось. 
      В прочем, как всегда. Рассчитываем на "быстро и просто", а в итоге изобретаем подводную лодку с вертикальным взлетом.
       
      Скачать
      [GitHub]

      Это чистой воды вайбкод, прошедший этапы оптимизации, проверки безопасности и т.д.
      Распространяется бесплатно, по GPL-3.0.
       

       
      Для кого это
      * В-первую очередь для тех, кто как и я, задолбался со всем этим возиться и не имеет нормального решения под рукой
      * Во-вторую - для мододелов-новичков. Все таки матерые волки моддинга редко пересаживаются на новый, непривычный инструментарий и не всегда готовы менять свой пайплайн * разработки. Но им я тоже рекомендую попробовать.
      * В-третьих - для серверовнеров, которые вообще не понимают, как запускать тестовый сервер на локальной машине
      * В-четвертых - для тех, кто просто хочет поднять тестовый сервер на домашней машине без лишнего геморроя
       
      Менеджмент модов
      * ПО считывает пути и подтягивает списки модов, скачанных со Steam. Их дальнейше подключение происходит через Simlink на эти папки, т.е. источник PBO для клиента и сервера всегда будет один и тот же. И значит не будет проблемы с рахождением файлов
      * Подключение локальных модов: хоть пачкой, хоть по одному
      * Возможность указывать зависимости для локальных модов (чтобы в пересетах запуска подтягивалось сразу всё необходимое)
      * Возможность указать сорсы на диске P для локального мода
      * Возможность настроить флаги для модов (для бОльшего удобства сортировки и визуального поиска нужных модов)
      * На странице подключения модов для сервера можно указывать ссылку на коллекцию. В данном случае будет предложено докачать то, чего не хватает
       
      Создание пресетов
      * Происходит буквально в несколько кликов.
      * Указываем название, выбираем миссию, если она отсутствует - будет предложено ее скачать с официального источника.
      * Скачка, естественно, автоматическая.
      * Если нет мода на карту - об этом так же будет уведомление и предложение подписаться на мод в Steam. Кнопка с линком уже заботливо подготовлена
       
      Запаковка модов
      * Запаковка происходит через **Mikero PboProject** и, соответственно, требует установленных утилит, которые для запаковки необходимы. В том числе **DayZ Tools**.
      * Настройки для PboProject выведены в приложение. Можно выставить привычные параметры.
      * По стандарту, два типа запаковки: быстрая и полная. (FullBuild).
      * Перед запуском клиента и сервера, если в подключенных локальных модах указаны сорсы, будет проведен ребилд всех pbo, в српсах которых были изменения с момента последней запаковки
      * Это можно отключить
       
      Логи
      * Открываются в отдельных окнах, обновляются в реальном времени, есть поиск внутри одного или всех файлов. Можно закрепить поверх всех окон
      * Есть информирование о загрузке памяти у слоев (3_Game, 4_World и тд)
      * Логи запаковки PBO. Также разнесенные в два окна. С информированием о Warning'ах и Error'ах.
      В логах, очевидно, еще есть над чем поработать, но уже довольно неплохо
      ## Запуск сервера
      * После всех настроек - в один клик
      * При нажатии на "Закрыть" приложение уходит в трей, а вместо него появляется небольшой фрейм, который висит поверх всех окон и позволяет управлять запуском/выключением

      Пресеты для запуска сервера по умолчанию создаются со словом TEST в названии и 10 слотами. Т.е. по крайней мере в случае с нашими модами он будет взаимодействовать корректно
       
      Настройка и использование
      При первом запуске нужно будет выполнить несколько шагов.
      Как минимум - указать свой префикс (можно любой, это не принципиально) и ссылку на Steam.
      v. 0.2.3
      * Добавлена проверка на запущенную копию процесса приложения. Если она есть, вместо второй копии будет раскрыта первая.
      * Теперь приложение может подхватывать уже запущенный процесс клиента и сервера (на случай, если ПО было случайно закрыто).
      * Добавлена возможность запускать сервер без отображения его окна
      * Доработан поиск внутри логов
      * Теперь можно выбрать тип файла, который будет выводится в окно логов (script, crash, RPT)
      * Добавлены варианты выбора остановки процесса сервера (Грубый/Мягкий)
      * Минорные правки и багфиксы
    • Автор: Suslikonator
      Всем привет, суть вопроса  в шапке темы.
    • Автор: MrMiBl
      Чёт не могу понять, как вписать температуру в этот дебаг?
       
      private ["_display","_symbol","_percent","_stats","_time", "_hours", "_minutes", "_pic", "_coins","_bloodlvl","_dir","_d","_txt","_nearestCity","_textCity","_thirst ","_thirststat ","_hunger ","_hungerstat ","_servername","_spacer","_img","_primary"]; disableSerialization; //--------------------------------------------------------------------------------------------// _display = uiNameSpace getVariable "DEBUGMONITOR"; _stats = _display displayCtrl 9000; //--------------------------------------------------------------------------------------------// _servername = "Название"; _spacer = "-------------------------------------"; _symbol = "°"; _percent = "%"; //--------------------------------------------------------------------------------------------// while {1 == 1} do { _nearestCity = nearestLocations [getPos player, ["NameCityCapital","NameCity","NameVillage","NameLocal"],800]; _textCity = "Wilderness"; if (count _nearestCity > 0) then {_textCity = text (_nearestCity select 0)}; _img = (getText (configFile >> 'CfgVehicles' >> (typeOf vehicle player) >> 'picture')); if(player == vehicle player)then{ _img = (getText (configFile >> 'CfgWeapons' >> (currentWeapon player) >> 'picture')); }else{ _img = (getText (configFile >> 'CfgVehicles' >> (typeOf vehicle player) >> 'picture')); }; _time = (round(180-(serverTime)/60)); _hours = (floor(_time/60)); _minutes = (_time - (_hours * 60)); switch(_minutes) do { case 9: {_minutes = "09"}; case 8: {_minutes = "08"}; case 7: {_minutes = "07"}; case 6: {_minutes = "06"}; case 5: {_minutes = "05"}; case 4: {_minutes = "04"}; case 3: {_minutes = "03"}; case 2: {_minutes = "02"}; case 1: {_minutes = "01"}; case 0: {_minutes = "00"}; }; _d = getdir player; if (_d >= 337.5 || _d < 22.5) then {_dir = "North";}; if (_d >= 292.5 && _d < 337.5) then {_dir = "NWest";}; if (_d >= 247.5 && _d < 292.5) then {_dir = "West";}; if (_d >= 202.5 && _d < 247.5) then {_dir ="SWest";}; if (_d >= 157.5 && _d < 202.5) then {_dir ="South";}; if (_d >= 112.5 && _d < 157.5) then {_dir ="SE";}; if (_d >= 67.5 && _d < 112.5) then {_dir ="East";}; if (_d >= 22.5 && _d < 67.5) then {_dir ="NEast";}; _hunger = round(100 - (dayz_hunger / SleepFood) * 100); _thirst = round(100 - (dayz_thirst / SleepWater) * 100); _bloodlvl = round((r_player_blood / r_player_bloodTotal) * 100); //---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------// _txt = format ["<br/><t size='1.5' font='Zeppelin32' align='center' color='#A81E13'>%1</t><br/><br/>", _servername]; _txt = _txt + format ["<t size='1.2' font='Zeppelin32' align='left' color='#E5E5E5'>Zombies Killed: </t><t size='1.2' font='Zeppelin32' align='right' color='#FFFFFF'>%1</t><br/>", player getVariable['zombieKills', 0]]; _txt = _txt + format ["<t size='1.2' font='Zeppelin32' align='left' color='#E5E5E5'>Survivors Killed: </t><t size='1.2' font='Zeppelin32' align='right' color='#FFFFFF'>%1</t><br/>", player getVariable['humanKills', 0]]; _txt = _txt + format ["<t size='1.2' font='Zeppelin32' align='left' color='#E5E5E5'>Bandits Killed: </t><t size='1.2' font='Zeppelin32' align='right' color='#FFFFFF'>%1</t><br/>", player getVariable['banditKills', 0]]; _txt = _txt + format ["<t size='1.2' font='Zeppelin32' align='left' color='#E5E5E5'>Humanity: </t><t size='1.2' font='Zeppelin32' align='right' color='#FFFFFF'>%1</t><br/>", round(player getVariable['humanity', 0])]; /*-----------*/ _txt = _txt + format ["<t size='1' font='Zeppelin32' align='left' color='#CCCCCC'>%1</t><br/>", _spacer]; _txt = _txt + format ["<t size='1.2' font='Zeppelin32' align='left' color='#E5E5E5'>Zombies: </t><t size='1.2' font='Zeppelin32' align='left' color='#FFFFFF'>%1</t>", count entities "zZombie_Base"]; _txt = _txt + format ["<t size='1.2' font='Zeppelin32' align='right' color='#E5E5E5'>Players: </t><t size='1.2' font='Zeppelin32' align='right' color='#FFFFFF'>%1</t><br/>", count playableUnits]; /*-----------*/ _txt = _txt + format ["<t size='1' font='Zeppelin32' align='left' color='#CCCCCC'>%1</t><br/>", _spacer]; _txt = _txt + format ["<t size='1.2' font='Zeppelin32' align='center' color='#E5E5E5'>Blood: </t><t size='1.2' font='Zeppelin32' align='center' color='#FFFFFF'>%1%2</t><br/>", _bloodlvl, _percent]; _txt = _txt + format ["<t size='1.2' font='Zeppelin32' align='left' color='#E5E5E5'>Hunger: </t><t size='1.1' font='Zeppelin32' align='left' color='#FFFFFF'>%1%2</t>", _hunger, _percent]; _txt = _txt + format ["<t size='1.2' font='Zeppelin32' align='right' color='#E5E5E5'>Thirst: </t><t size='1.1' font='Zeppelin32' align='right' color='#FFFFFF'>%1%2</t><br/>", _thirst, _percent]; /*-----------*/ _txt = _txt + format ["<t size='1' font='Zeppelin32' align='left' color='#CCCCCC'>%1</t><br/>", _spacer]; _txt = _txt + format ["<t size='1.2' font='Zeppelin32' align='left' color='#E5E5E5'>%1</t>", _textcity]; _txt = _txt + format ["<t size='1.2' font='Zeppelin32' align='right' color='#E5E5E5'>%1%2 %3</t><br/>", round (getDir vehicle player),_symbol, _dir]; _txt = _txt + format ["<img size='4.5' align='center' image='%1' /><br/>", _img]; _txt = _txt + format ["<t size='1.2' font='Zeppelin32' align='left' color='#E5E5E5'>GPS: </t><t size='1.2' font='Zeppelin32' align='left' color='#FFFFFF'>%1 </t>", (mapGridPosition getPos player)]; _txt = _txt + format ["<t size='1.2' font='Zeppelin32' align='right' color='#E5E5E5'>FPS: </t><t size='1.2' font='Zeppelin32' align='right' color='#FFFFFF'>%1</t><br/>", round diag_fps]; /*-----------*/ _txt = _txt + format ["<t size='1' font='Zeppelin32' align='left' color='#CCCCCC'>%1</t><br/>", _spacer]; _txt = _txt + format ["<t size='1.2' font='Zeppelin32' align='left' color='#E5E5E5'>Coins: </t><t size='1.2' font='Zeppelin32' align='right' color='#FFFFFF'>%1</t><br/>", player getVariable[Z_MoneyVariable,0]]; // _txt = _txt + format ["<t size='1.2' font='Zeppelin32' align='left' color='#D0F000'>Bank: </t><t size='1.2' font='Zeppelin32' align='right' color='#FFFFFF'>%1</t><br/>", player getVariable[Z_bankVariable,0]]; /*-----------*/ _txt = _txt + format ["<t size='1' font='Zeppelin32' align='left' color='#CCCCCC'>%1</t><br/>", _spacer]; _txt = _txt + format ["<t size='1.2' font='Zeppelin32' align='center' color='#E5E5E5'>Restart in: </t><t size='1.2' font='Zeppelin32' align='center' color='#FFFFFF'>%1:%2</t><br/>", _hours, _minutes]; //---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------// _stats ctrlSetStructuredText parseText _txt; uiSleep 2; }; Подскажите пж
    • Автор: ZizionarD
      Тема взята с сайта: EpochMod.com
       

       
      1. Скачиваем архив и распаковываем его
      2. Открываем кастомный файл compiles.sqf и находим строку:
      DZ_KeyDown_EH = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\keyboard.sqf"; И меняем ее на:
      DZ_KeyDown_EH = compile preprocessFileLineNumbers "PATHTOYOUR\keyboard.sqf"; 3. Открываем файл init.sqf и находим строку:
      waitUntil {scriptDone progress_monitor}; И под ней вставляем
      if (isNil 'debugMonitor') then {debugMonitor = true; _nill = execvm "dayz_code\compile\player_debug.sqf"; }; *Файл init.sqf который находится в архиве ни в коем случае не заменяйте его! В этом файле прописано то, что выше написано.
       
      На это все, всем спасибо за внимание!
       
      Keyboard.sqf
      // (c) facoptere@gmail.com, licensed to DayZMod for the community #include "\ca\editor\Data\Scripts\dikCodes.h" _dikCode = _this select 1; _shiftState = _this select 2; _ctrlState = _this select 3; _altState = _this select 4; _handled = false; if (isNil "keyboard_keys") then { _cancelBuild = { DZE_cancelBuilding = true; call dayz_EjectPlayer; _handled = false; if (r_player_dead) then {_handled = true;}; // Disable ESC after death }; _dze_f = { if (!_ctrlState && !_altState) then {DZE_F = true;}; }; _dze_q = { if (!_ctrlState && !_altState) then {DZE_Q = true;}; if (!_ctrlState && _altState) then {DZE_Q_alt = true;}; if (_ctrlState && !_altState) then {DZE_Q_ctrl = true;}; }; _dze_z = { if (!_ctrlState && !_altState) then {DZE_Z = true;}; if (!_ctrlState && _altState) then {DZE_Z_alt = true;}; if (_ctrlState && !_altState) then {DZE_Z_ctrl = true;}; }; _autoRun = { if (!dayz_autoRun) then { dayz_autoRun = true; dayz_autoRunThread = [] spawn { _weapon = currentWeapon player; while {dayz_autoRun} do { // SurfaceIsWater does not work for ponds // Check weapon to detect Arma action (dayz action is handled in dz_fn_switchWeapon) if (player != vehicle player or (surfaceIsWater getPosASL player) or ((call fn_nearWaterHole) select 0) or (currentWeapon player != _weapon) or r_fracture_legs) exitWith { call dayz_autoRunOff; }; player playAction "FastF"; uiSleep 0.5; }; }; } else { call dayz_autoRunOff; }; _handled = true; }; _filterCheat = { //Overriding default engine handling does not stop cheat input, need manual disableUserInput too _handled = [displayNull,_dikCode,_shiftState] call dze_filterCheats; }; _openGroups = { if (dayz_requireRadio && !("ItemRadio" in items player)) then { localize "STR_EPOCH_NEED_RADIO" call dayz_rollingMessages; } else { if (isNull findDisplay 80000) then { if (!isNil "dayz_groupInit") then {[] spawn dayz_openGroupDialog;}; } else { findDisplay 80000 closeDisplay 2; }; }; _handled = true; }; _muteSound = { call player_toggleSoundMute; _handled = true; }; _rifle = { 2 call dz_fn_switchWeapon; _handled = true; }; _pistol = { 3 call dz_fn_switchWeapon; _handled = true; }; _melee = { // Also works for rifle on back if DZE_TwoPrimaries = 2; 4 call dz_fn_switchWeapon; _handled = true; }; _throwable = { // select next non empty throwable weapon if (vehicle player == player) then { _ammo_throwable = []; _muzzles_throwable = []; _weapon_throwable = []; { _weapon = _x; _muzzles = getArray(configFile >> "cfgWeapons" >> _weapon >> "muzzles"); if (count _muzzles == 0) then { _muzzles = [_weapon ]; }; { _muzz = _x; { if (_x in magazines player) then { _ammo_throwable set [ count _ammo_throwable, getText(configFile >> "cfgMagazines" >> _x >> "ammo") ]; _muzzles_throwable set [ count _muzzles_throwable, _muzz ]; _weapon_throwable set [ count _weapon_throwable, _weapon ]; }; } forEach getArray(configFile >> "cfgWeapons" >> _weapon >> _muzz >> "magazines"); } forEach _muzzles; } forEach ["Throw"]; _magCount = count _ammo_throwable; if (_magCount > 0) then { if (isNil "KB_CurrentThrowable") then { KB_CurrentThrowable = -1; }; _currentAmmo = (weaponState player) select 3; _idx = _ammo_throwable find _currentAmmo; if (_idx >= 0) then { KB_CurrentThrowable = _idx; }; KB_CurrentThrowable = (KB_CurrentThrowable + 1) mod _magCount; player selectWeapon (_muzzles_throwable select KB_CurrentThrowable); _handled = true; }; }; }; _surrender = { call player_surrender; _handled = true; }; _gear = { if ((vehicle player != player) and !_shiftState and !_ctrlState and !_altState && !dialog) then { createGearDialog [player, "RscDisplayGear"]; _handled = true; } else { if ((vehicle player == player) and (speed vehicle player > 0)) then { //[objNull, player, rSwitchMove,""] call RE; _handled = true; };}; }; _forcesave = { dayz_lastCheckBit = diag_ticktime; call player_forceSave; call dayz_EjectPlayer; }; _forcesave2 = { if ((!isNull (findDisplay 106)) OR dialog) then { call player_forceSave; }; }; _drop = { if (r_drag_sqf) then { _doors = nearestObjects [player, DayZ_DropDrageeObjects, 3]; //Prevent dropping dragged player through objects if (count _doors > 0) then {_handled = true;}; force_dropBody = true; } else { _doors = nearestObjects [player, DZE_DoorsLocked, 3]; if (count _doors > 0 && {speed player > 0}) then {_handled = true;}; //Prevent sprint and prone through doors glitch }; }; _interrupt = { if (vehicle player == player) then { //allow med actions in moving vehicles r_interrupt = true; }; if (DZE_Surrender) then {call dze_surrender_off}; if (dayz_autoRun) then {call dayz_autoRunOff;}; }; // TODO: left/right, when gear open: onKeyDown = "[_this,'onKeyDown',0,107,0,107] execVM '\z\addons\dayz_code\system\handleGear.sqf'"; _noise = { //Overriding default engine handling does not stop combination binds, need manual disableUserInput too _handled = [displayNull,_dikCode,_shiftState] call dze_filterCheats; if (diag_ticktime - dayz_lastCheckBit > 10 && !(_dikCode in channel_keys)) then { dayz_lastCheckBit = diag_ticktime; [player,20,true,(getPosATL player)] call player_alertZombies; }; }; _journal = { if (!dayz_isSwimming and !dialog) then { [player,4,true,(getPosATL player)] call player_alertZombies; createDialog 'horde_journal_front_cover'; }; _handled = true; }; _build_left = { DZE_4 = true; // fence construction if (0 != count Dayz_constructionContext) then { _angleRef = Dayz_constructionContext select 1; _dir = _angleRef - (getDir player) -5; if (_dir > 180) then {_dir = _dir - 360}; if (_dir < -180) then {_dir = _dir + 360}; if ( _dir > -75) then { _new = floor((_angleRef - 5)/5)*5; Dayz_constructionContext set [ 1, _new]; // favorite angle r_interrupt = true; }; _handled = true; }; // tents and stash construction _object = player getVariable ["constructionObject", objNull]; if (!isNull _object) then { _dir = getDir _object - 3; _object setDir _dir; _handled = true; }; dayz_dodge = true; }; _build_right = { DZE_6 = true; if (0 != count Dayz_constructionContext) then { _angleRef = Dayz_constructionContext select 1; _dir = _angleRef - (getDir player) +5; if (_dir > 180) then { _dir = _dir - 360; }; if (_dir < -180) then { _dir = _dir + 360; }; if (_dir < 75) then { _new = ceil((_angleRef + 5)/5)*5; Dayz_constructionContext set [ 1, _new]; // favorite angle r_interrupt = true; }; _handled = true; }; // tents and stash construction _object = player getVariable ["constructionObject", objNull]; if (!isNull _object) then { _dir = getDir _object + 3; _object setDir _dir; _handled = true; }; dayz_dodge = true; }; _build_camOnOff = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fn_buildCamera.sqf"; _build_str8OnOff = { if (0 != count Dayz_constructionContext) then { Dayz_constructionContext set [ 5, !(Dayz_constructionContext select 5) ]; _handled = true; r_interrupt = true; }; if (animationState player in ["bunnyhopunarmed","bunnyhoprifle"]) then { //Fixes invisible weapon switch glitch if double tapping vault with no weapon in hands _handled = true; }; if (player isKindOf "PZombie_VB") then { _handled = true; // do not allow player zombies to vault or jump } else { _nearbyObjects = nearestObjects[getPosATL player, dayz_disallowedVault, 8]; if (count _nearbyObjects > 0) then { if ((diag_tickTime - dayz_lastCheckBit > 4)) then { [objNull, player, rSwitchMove,"GetOver"] call RE; player playActionNow "GetOver"; dayz_lastCheckBit = diag_tickTime; } else { _handled = true; }; }; }; }; _block = { _handled = true; }; _addArray = { { keyboard_keys set [_x, _this select 1]; } forEach (_this select 0); }; keyboard_keys = []; channel_keys = []; voice_keys = []; {voice_keys = voice_keys + (actionKeys _x)} count voice_actions; {channel_keys = channel_keys + (actionKeys _x)} count ["NextChannel","PrevChannel"]; keyboard_keys resize 256; [[DIK_ESCAPE], _cancelBuild] call _addArray; [[DIK_INSERT], {DZE_Q_alt = true;}] call _addArray; [[DIK_A,DIK_D,DIK_LEFT,DIK_RIGHT], _interrupt] call _addArray; [[DIK_F], _dze_f] call _addArray; [[DIK_PRIOR], _dze_q] call _addArray; [[DIK_NEXT], _dze_z] call _addArray; [[DIK_Q], {DZE_4 = true;}] call _addArray; [[DIK_E], {DZE_6 = true;}] call _addArray; [[DIK_0], _autoRun] call _addArray; [[DIK_NUMPADMINUS,DIK_LSHIFT], _filterCheat] call _addArray; [[DIK_SPACE], {DZE_5 = true;}] call _addArray; [actionKeys "User6", {DZE_F = true;}] call _addArray; [actionKeys "User7", {DZE_Q_ctrl = true;}] call _addArray; [actionKeys "User8", {DZE_Z_ctrl = true;}] call _addArray; [actionKeys "User13", {DZE_Q_alt = true;}] call _addArray; [actionKeys "User14", {DZE_Z_alt = true;}] call _addArray; [actionKeys "User15", {DZE_Q = true;}] call _addArray; [actionKeys "User16", {DZE_Z = true;}] call _addArray; [actionKeys "User17", {DZE_4 = true;}] call _addArray; [actionKeys "User18", {DZE_6 = true;}] call _addArray; [actionKeys "User19", {DZE_5 = true;}] call _addArray; [actionKeys "Surrender", _surrender] call _addArray; [[DIK_1], _rifle] call _addArray; [[DIK_2], _pistol] call _addArray; [[DIK_3], _melee] call _addArray; //[[DIK_4], _throwable] call _addArray; [actionKeys "Gear", _gear] call _addArray; [actionKeys "Prone", _drop] call _addArray; [actionKeys "Crouch", _drop] call _addArray; [actionKeys "MoveLeft", _interrupt] call _addArray; [actionKeys "MoveRight", _interrupt] call _addArray; [actionKeys "MoveForward", _interrupt] call _addArray; [actionKeys "MoveBack", _interrupt] call _addArray; [actionKeys "TurnLeft", _interrupt] call _addArray; [actionKeys "TurnRight", _interrupt] call _addArray; [actionKeys "PushToTalk", _noise] call _addArray; [actionKeys "PushToTalkAll", _noise] call _addArray; [actionKeys "PushToTalkCommand", _noise] call _addArray; [actionKeys "PushToTalkDirect", _noise] call _addArray; [actionKeys "PushToTalkGroup", _noise] call _addArray; [actionKeys "PushToTalkSide", _noise] call _addArray; [actionKeys "PushToTalkVehicle", _noise] call _addArray; [actionKeys "VoiceOverNet", _noise] call _addArray; [actionKeys "NextChannel", _noise] call _addArray; [actionKeys "PrevChannel", _noise] call _addArray; [actionKeys "Chat", _noise] call _addArray; [actionKeys "User20", _journal] call _addArray; [actionKeys "Diary", _journal] call _addArray; [actionKeys "NetworkStats", _journal] call _addArray; [[DIK_F1], _muteSound] call _addArray; //[[DIK_F4, DIK_TAB, DIK_DELETE], _forcesave] call _addArray; //[[DIK_F4, DIK_RMENU, DIK_LMENU,DIK_LSHIFT,DIK_RSHIFT,DIK_ESCAPE], _forcesave2] call _addArray; [actionKeys "LeanLeft", _build_left ] call _addArray; [actionKeys "LeanRight", _build_right ] call _addArray; [actionKeys "PersonView", _build_camOnOff ] call _addArray; // Camera Mode [actionKeys "GetOver", _build_str8OnOff ] call _addArray; // V // [[DIK_NUMPAD7], _rotate_left] call _addArray; // [[DIK_NUMPAD9], _rotate_right] call _addArray; [actionKeys "ForceCommandingMode", {DZE_5 = true;_handled = true;}] call _addArray; [[ DIK_F9,DIK_F10,DIK_F11,DIK_F12, DIK_F8,DIK_F7,DIK_F6,DIK_F5,DIK_F4, DIK_F3,DIK_F2,DIK_9, DIK_8,DIK_7,DIK_6,DIK_5,DIK_4], _block] call _addArray; if (dayz_groupSystem) then { [[DIK_F5], _openGroups] call _addArray; [[DIK_LWIN,DIK_RWIN], {dayz_groupNameTags = !dayz_groupNameTags;_handled = true;}] call _addArray; [actionKeys "TacticalView", _block] call _addArray; }; diag_log "keyboard_keys reset"; if (!isNil "bis_fnc_halo_keydown_eh") then {bis_fnc_halo_keydown_eh = (finddisplay 46) displayaddeventhandler ["keydown","_this call bis_fnc_halo_keydown;"];}; // halo in progress }; if (r_player_unconsciousInputDisabled) exitWith {true}; _code = keyboard_keys select _dikCode; if (!isNil "_code") then { call _code; }; //------------------DEBUG-----------------// if (_dikCode == 210) then { // _dikCode 210 = InsertKey if (isNil 'debugMonitor') then { debugMonitor = true; _nill = execvm "PATHTOYOUR\player_debug.sqf"; } else { debugMonitor = !debugMonitor; hintSilent ''; _nill = execvm "PATHTOYOUR\player_debug.sqf"; }; }; //-----------------DEBUGEND---------------// _handled  
      Понравилась статья? Поставь +
    • Автор: dok379
      Как изменить плотность заднего фона debug monitor infistar ?
  • Наш выбор

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

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

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