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
sanek327

Убираем меню демонтажа запчастей с техники в трейдзонах.

Recommended Posts

Думаю из названия понятно для чего этот скрипт :)

 

Что нам понадобится:

1. Кастомный fn_selfaction.sqf

2. Кастомный salvage_vehicle.sqf

 

Как создать "Кастомные" файлы:ТЫК

 

Заходим в salvage_vehicle.sqf

 

Ищем строку:

{dayz_myCursorTarget removeAction _x} count s_player_repairActions;s_player_repairActions = [];

Добавляем ниже это:

if !(canBuild) exitwith {titleText [format["Вы не можете демонтировать запчасти в трейдзоне!"], "PLAIN DOWN"];};

Заходим в fn_selfaction.sqf находим этот блок кода:

//Repairing Vehicles
	if ((dayz_myCursorTarget != _cursorTarget) && _isVehicle && !_isMan && _hasToolbox && (damage _cursorTarget < 1) && !_isDisallowRepair) then {
		if (s_player_repair_crtl < 0) then {
			dayz_myCursorTarget = _cursorTarget;
			_menu = dayz_myCursorTarget addAction [localize "STR_EPOCH_PLAYER_REPAIRV", "\z\addons\dayz_code\actions\repair_vehicle.sqf",_cursorTarget, 0, true, false, "",""];
			_menu1 = dayz_myCursorTarget addAction [localize "STR_EPOCH_PLAYER_SALVAGEV", "\z\addons\dayz_code\actions\salvage_vehicle.sqf",_cursorTarget, 0, true, false, "",""];
			s_player_repairActions set [count s_player_repairActions,_menu];
			s_player_repairActions set [count s_player_repairActions,_menu1];
			s_player_repair_crtl = 1;
		} else {
			{dayz_myCursorTarget removeAction _x} count s_player_repairActions;s_player_repairActions = [];
			s_player_repair_crtl = -1;
		};
	};

И заменяем этим:

if ((dayz_myCursorTarget != _cursorTarget) && _isVehicle && !_isMan && _hasToolbox && (damage _cursorTarget < 1) && !_isDisallowRepair) then {
		if (s_player_repair_crtl < 0) then {
			dayz_myCursorTarget = _cursorTarget;
			_menu = dayz_myCursorTarget addAction [localize "STR_EPOCH_PLAYER_REPAIRV", "\z\addons\dayz_code\actions\repair_vehicle.sqf",_cursorTarget, 0, true, false, "",""];
			if(canbuild) then {
			_menu1 = dayz_myCursorTarget addAction [localize "STR_EPOCH_PLAYER_SALVAGEV", "custom\salvage_vehicle.sqf",_cursorTarget, 0, true, false, "",""];
			s_player_repairActions set [count s_player_repairActions,_menu1];
			s_player_repair_crtl = 1;
			} else {
			{dayz_myCursorTarget removeAction _x} count s_player_repairActions;s_player_repairActions = [];
			s_player_repair_crtl = -1;
			};
			s_player_repairActions set [count s_player_repairActions,_menu];
			s_player_repair_crtl = 1;
		} else {
			{dayz_myCursorTarget removeAction _x} count s_player_repairActions;s_player_repairActions = [];
			s_player_repair_crtl = -1;
		};
	};

Готово!

Edited by sanek327 (see edit history)

Share this post


Link to post
Share on other sites





    if ((dayz_myCursorTarget != _cursorTarget) && _isVehicle && !_isMan && _hasToolbox && (damage _cursorTarget < 1) && !_isDisallowRepair) then {
        if (s_player_repair_crtl < 0) then {
            dayz_myCursorTarget = _cursorTarget;
            _menu = dayz_myCursorTarget addAction [localize "STR_EPOCH_PLAYER_REPAIRV", "\z\addons\dayz_code\actions\repair_vehicle.sqf",_cursorTarget, 0, true, false, "",""];
            s_player_repairActions set [count s_player_repairActions,_menu];
            if (canbuild) then {
                _menu1 = dayz_myCursorTarget addAction [localize "STR_EPOCH_PLAYER_SALVAGEV", "\z\addons\dayz_code\actions\salvage_vehicle.sqf",_cursorTarget, 0, true, false, "",""];
                s_player_repairActions set [count s_player_repairActions,_menu1];
            };
            s_player_repair_crtl = 1;
        } else {
            {dayz_myCursorTarget removeAction _x} count s_player_repairActions;s_player_repairActions = [];
            s_player_repair_crtl = -1;
        };
    };

canbuild отвечает за нахождение игрока в сейф зоне по умолчанию, почему бы просто ее не использовать ) в этом коде отключен разбор, оставлена починка, при нахождении в трейде.

Edited by sanek327 (see edit history)

Share this post


Link to post
Share on other sites

можно просто в fn_selfActions заменить блок кода с нужной проверкой )

	if ((dayz_myCursorTarget != _cursorTarget) && _isVehicle && !_isMan && _hasToolbox && (damage _cursorTarget < 1) && !_isDisallowRepair) then {
		if (s_player_repair_crtl < 0) then {
			dayz_myCursorTarget = _cursorTarget;
			_menu = dayz_myCursorTarget addAction [localize "STR_EPOCH_PLAYER_REPAIRV", "\z\addons\dayz_code\actions\repair_vehicle.sqf",_cursorTarget, 0, true, false, "",""];
			s_player_repairActions set [count s_player_repairActions,_menu];
			if (canbuild) then {
				_menu1 = dayz_myCursorTarget addAction [localize "STR_EPOCH_PLAYER_SALVAGEV", "\z\addons\dayz_code\actions\salvage_vehicle.sqf",_cursorTarget, 0, true, false, "",""];
				s_player_repairActions set [count s_player_repairActions,_menu1];
			};
			s_player_repair_crtl = 1;
		} else {
			{dayz_myCursorTarget removeAction _x} count s_player_repairActions;s_player_repairActions = [];
			s_player_repair_crtl = -1;
		};
	};

canbuild отвечает за нахождение игрока в сейф зоне по умолчанию, почему бы просто ее не использовать ) в этом коде отключен разбор, оставлена починка, при нахождении в трейде.

Ну правильно,а вдруг ты в трейде технику решил починить почему бы и нет:)

Edited by sanek327 (see edit history)

Share this post


Link to post
Share on other sites

накосепорил с BB кодами ))

Восстановил твой коммент ) можешь редактировать )

Share this post


Link to post
Share on other sites

Поставил, всё работает, спасибо. Можно ли ещё скрипт какой нибудь анти воровство техники?

Share this post


Link to post
Share on other sites

Поставил, всё работает, спасибо. Можно ли ещё скрипт какой нибудь анти воровство техники?

вот тут,что то есть похожее:

 http://s-platoon.ru/index.php?/topic/3226-anti-duping-anti-theft-from-locked-vehicles-antidiup-i-antivorovstvo-by-f507dmt/

 

http://s-platoon.ru/index.php?/topic/3870-antivorovstvo-iz-zakrytoi-tekhniki-ispravliaem/

Edited by sanek327 (see edit history)

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 Serdce
      Данный скрипт, меняет процесс ремонта вашей техники, делая её более логичней, как было в А2.
      Для замены колеса, на нужно собственно само колесо, и тд. и тп. 
      Подробный список чего и для чего вы найдёте в файлах.
       
      Итак, преступим!
      Я не автор, я всего лишь перевожу.
      Первоисточник - https://github.com/aussie-battler/Exilemod-Super-Advanced-Repair-System-SARS
      По ссылке выше скачиваем архив, распаковываем в удобное место.
      Распаковываем ваше миссию "Exile.ваша карта"
      Из архива копируем папку "Custom" в папку вашей миссии "Exile.ваша карта"
      Открываем ваш description.ext  в нем мы ищем showHUD[] = 
      и полностью меняем на это - 
      Далее открываем ваш - initPLayerLocal.sqf
      В этом файле, сразу после строки - if (!hasInterface || isServer) exitWith {};
      Мы добавляем 
      //Bones Super Advanced Repair System (SARS)
      Bones_fnc_salvageAndRepairMenu = compileFinal preprocessFileLineNumbers "Custom\advancedRepair\Bones_fnc_salvageAndRepairMenu.sqf"; 
      Далее открываем ваш - config.cpp
      В нем мы ищем - class Car
      Внутри этого класса мы ищем
       
      И меняем на 
      Так же далее чуть ниже - class Air
      В нем мы также меняем это
      На это 
       
      Далее для если у вас есть Infistar!
      Распаковываем ваш инфистар и открываем его конфиг.
      В нём ищем     KCM = "true"; /* Just close ALL CommandingMenus */
      И меняем значение на false
      Чуть ниже в строке allowedCommandingMenus
      Мы добавляем  "#USER:ASL_Show_Repair_Options_Menu_Array"
      Ну вот и всё готово, всё сохранили и запаковали как было!
       
    • By 123new
      Вопросик такого плана.
      В патче 1.4 появился новый функционал в игре.
      У некоторых модов в гл. меню идут картинки. Как вот например такое.

      Если свериться с вики
      https://community.bistudio.com/wiki/DayZ:Modding_Structure
      то должны быть в модах картинки формата .tga.

      Открываю для примера моды Zomberry admin tool или CarHorn, где есть данные картинки.
      В модах не наблюдаю файлов в таком формате, а вместо них наблюдаю неведомый мне формат edds и edds.meta (что подозреваю взаимосвязанно). Также, не наблюдаю прописи таковых в конфиге мода.
      Вопрос - как самому создавать такие картинки для своих модов и верно их прописывать? Ни одного гайда в сети нне нашел
    • By Loker
      При покупке/продаже техники валюту за технику снимает/начисляет, но сама техника не появляется. 
      В логе возникает следующая ошибка: 
      15:04:28 "Server_PublishVehicle2 error: CLIENT AUTH KEY INCORRECT OR UNRECOGNIZED. PV ARRAY: [[323,[4037.27,11673.5,0.00289917]],"Ural_TK_CIV_EP1",false,"ItemKeyRed1798",B 1-1-B:1 (Player) REMOTE,""]" Как я понял новая проверка в версии мода 1.0.6.2 не может считать какой-то ключ пользователя. Может кто сталкивался с такой ошибкой. Буду рад любому совету. Заранее спасибо.
    • By Akie
      Проблема вот в чем, просто выкидывает из техники через короткое время после залезания в нее и не важно на ходу или нет, на каком месте в ней ты сидишь, просто пофигу, выкидывает и всё, в логах и на сервере, и на клиенте чисто подскажите куда копать пожалуйста
    • By Loxy
      Многие наверно сталкивались с проблемой когда в events.xml был прописан спавн зомби, то после убийства, у них в инвентаре размножался лут. Сейчас я расскажу как это исправить.
      1. И так, заходим в директорию вашего сервера, в папку Addons.
      2. Находим там файл под названием characters_zombies.pbo, и распаковываем его через программу pbo manager.
      3. Появилась папка под названием characters_zombies, заходим туда и в этой же папке находим файл под названием config.bin
      4. Вам нужно разбинировать этот файл программой unrap (ссылка на программу ЗДЕСЬ). Появилось куча документов, нам нужен файл под названием CfgVehicles.hpp, открываем с помощью текстового редактора Notepad++ и находим такие строчки:
      itemsRandom[] = {{"Drink_SodaCanCola", "Drink_SodaCanPipsi", "Drink_SodaCanSpite" и бла бла бла И таких строчек в этом файле много. Они отвечают за спавн лута в инвентаре зомби. Просто закомментируйте все эти строки и сохраните.
      5. Потом в этой же папке "characters_zombies" удалите файл, который вы разбинировали - config.bin
      6. Теперь запакуйте всё это обратно в pbo.
      На этом всё, больше лут не будет спавнится в инвентаре зомби и вы можете спокойно прописать спавн всех зомби в events.xml
       
      Для особо ленивых, вот готовы файл characters_zombies.pbo - СКАЧАТЬ
      ВАЖНО! Не забудьте отключить спавн скриптовых зомби! Для этого перейдите в папку с вашей миссией: MPMissions\dayz_Auto.ChernarusPlus\init.sqf и измените  параметр:
      _Enable_official_static_spawner_zombies = true; На:
      _Enable_official_static_spawner_zombies = false;  
  • 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.