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

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

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

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

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

возврат лута или трупа из сгоревшей техники arma 3 exile

сейчас если игрок помер в машине или вертолете а техника сгорела  его труп не достать. (правда если админкой удалить сгоревший остов  - труп появляется), есть ли какой-нибудь скрип , как во 2 арме, на авто выбрасывание трупов из сгоревшей техники?

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


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

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

  • 0

Есть скрипт для сервера 

В initLocalServer.sqf

NR_fnc_SalvageVehicle = compileFinal preprocessFileLineNumbers "папка в миссии\SalvageVehicle.sqf";

в config.cpp в class CfgInteractionMenus

// Salvage Vehicle
            class Salvage: ExileAbstractAction
            {
                title = "Убрать Сгоревшую Технику";
                condition = "(!(alive (ExileClientInteractionObject)))";
                action = "_this call NR_fnc_SalvageVehicle";
            }

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

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


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





  • 0
15 часов назад, 10010_1487708049 сказал:

Есть скрипт для сервера 

В initLocalServer.sqf

NR_fnc_SalvageVehicle = compileFinal preprocessFileLineNumbers "папка в миссии\SalvageVehicle.sqf";

в config.cpp в class CfgInteractionMenus

// Salvage Vehicle
            class Salvage: ExileAbstractAction
            {
                title = "Убрать Сгоревшую Технику";
                condition = "(!(alive (ExileClientInteractionObject)))";
                action = "_this call NR_fnc_SalvageVehicle";
            }

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

Может файл initPlayerLocal.sqf или initServer.sqf ?

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


Ссылка на сообщение
Поделиться на других сайтах
  • 0
В 06.05.2016 в 19:43, kozmodor сказал:

сейчас если игрок помер в машине или вертолете а техника сгорела  его труп не достать. (правда если админкой удалить сгоревший остов  - труп появляется), есть ли какой-нибудь скрип , как во 2 арме, на авто выбрасывание трупов из сгоревшей техники?

В скрипт срабатывающий при смерти игрока, добавить eject

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


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

Есть скрипт для сервера 

В initLocalServer.sqf

NR_fnc_SalvageVehicle = compileFinal preprocessFileLineNumbers "папка в миссии\SalvageVehicle.sqf";

в config.cpp в class CfgInteractionMenus

// Salvage Vehicle
            class Salvage: ExileAbstractAction
            {
                title = "Убрать Сгоревшую Технику";
                condition = "(!(alive (ExileClientInteractionObject)))";
                action = "_this call NR_fnc_SalvageVehicle";
            }

И после последней скобки точку с запятой поставить.

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


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

Скрипт работает,проверено на тестовом сервере. За исключением: вместо непонятного initLocalServer.sqf 

инициализацию NR_fnc_SalvageVehicle = compileFinal preprocessFileLineNumbers "папка в миссии\SalvageVehicle.sqf"

ставим в initPlayerLocal.sqf  пример 

///////////////////////////////////////////////////////////////////////////////
// Static Objects
///////////////////////////////////////////////////////////////////////////////

// Taken away for now
//#include "initServer.sqf"

NR_fnc_SalvageVehicle = compileFinal preprocessFileLineNumbers "custom\SalvageVehicle.sqf";

верхняя часть файла. 

И,как я уже говорил,закрывающая скобка в // Salvage Vehicle
            class Salvage: ExileAbstractAction
            {
                title = "Убрать Сгоревшую Технику";
                condition = "(!(alive (ExileClientInteractionObject)))";
                action = "_this call NR_fnc_SalvageVehicle";
            };  должна быть точка с запятой, у  10010_1487708049  её нет.

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


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

Boris62 не подскажешь где взять этот скрипт. С гитхаба автор убрал, а очень надо. Хочу использовать что бы игроки скравченый транспорт после того как он им не нужен убирали его. Вся карта загажена этим транспортом. Ил есть другой скрипт для этого ? Если можешь подскажи.

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


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

В тээску зайди,свой дам.

 

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


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

DrTauren буду очень благодарен если выложите гайд. Заранее спасибо.

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


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

Что это за дерьмо? Зачем удалять взорванную машину? Что за "даун-костыль"? Почему нельзя сделать просто, чтобы при взрыве выпал труп из машины?

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


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

Alexis в exile типа изначально труп всегда внутри техники остаётся и никак не вынуть его, такая бодяга :biggrin:

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


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

DrTauren ну по стандарту да, не вынуть, но то что тут предложили, путь решения, дерьмовитей некуда

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


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

Alexis Slonik Нашёл несколько вариантов решения этой проблемы. Первый: возможность "обшарить технику" (что как-то не очень вообще)
И второй наиболее простой и реалистичный: если техника взорвана - из неё автоматом выбрасывает и трупы, и живых игроков. Думаю второй варик всем больше подойдёт. Если так, то сегодня постараюсь выложить

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


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

DrTauren мне то это зачем?) Я еще год назад так сделал)

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


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

DrTauren DrTauren Alexis DrTauren да ема е . Все не так. Я хотел это использовать что бы убирать скравченую скотчем технику или другой скрипт для этого найти. А то люди на кравтят вся карта засрана. Человек доехал куда надо и убрал эту технику. Меня наверное не так поняли

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


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

Slonik так сделай чтобы скрафченая техника удалялась при рестарте, то бишь не заносилась в БД. А в этой теме вообще другой вопрос решается на сколько я понял, не понимаю как ты суда попал

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


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

DrTauren я сам уже ничего не понимаю)))

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


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

Что это за дерьмо? Зачем удалять взорванную машину? Что за "даун-костыль"? Почему нельзя сделать просто, чтобы при взрыве выпал труп из машины?

Так все норм, надо же 100500 строк кода нахерачить, вместо того, чтобы открыть файл который срабатывает при смерти персонажа и добавить 1 единственную строку -

player action ["Eject", vehicle player];

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


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

NoNameUltima ))) вот переживаешь все за строчки. Не было бы этих строчек что бы тут вообще было?  Одни умники бы писали сами себе, кто умнее? Не обижайся , но выходит так. Ну а в данном случае видно меня не поняли или я плохо объяснил суть вопроса. Бывает и такое,с кем не случается. Теперь меня будут преследовать 100500 строчек. Уже боюсь что писать.  А может не так )))

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


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

Slonik у тебя это в сборке есть, так что, не забивайся

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


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

Ну а в данном случае видно меня не поняли или я плохо объяснил суть вопроса.

Ты то вообще тут при чем?

Топикстартер другой человек, судя по теме.

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


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

Зайди в свой config.cpp и найди там class CfgInteractionMenus
Найди там 

class DrainFuel: ExileAbstractAction
{
	title = "Drain Fuel";
	condition = "call ExileClient_object_vehicle_interaction_show";
	action = "_this call ExileClient_object_vehicle_drain";
};

Там таких 3 шт (Для Машин/Самолетов/Лодок)

 

После чего добавь вот это

class Salvage: ExileAbstractAction
{
	title = "Разобрать обломки";
	condition = "(!(alive (ExileClientInteractionObject)))";
	action = "_this call SV_fnc_SalvageVehicle";
};

Позволяет разобрать сгоревшую технику и вытащить труп.

Затем открой initPlayerLocal.sqf и добавь это. 

SV_fnc_SalvageVehicle = compileFinal preprocessFileLineNumbers "SV.sqf";


Создай файл в миссии SV.sqf
 

/*
Salvage a vehicle script
Created by Serveratze
*/
private ["_salvage"];

if (ExileClientActionDelayShown) exitWith { false };
ExileClientActionDelayShown = true;
ExileClientActionDelayAbort = false;

if (ExileClientPlayerIsInCombat) exitWith
{
	[
	    "ErrorTitleAndText", 
	    ["Repair Info", "You are in combat!"]
	] call ExileClient_gui_toaster_addTemplateToast;
	ExileClientActionDelayShown = false;
	ExileClientActionDelayAbort = false;	
};
if (ExilePlayerInSafezone) exitWith
{
 	[
	    "ErrorTitleAndText", 
	    ["Repair Info", "Please leave the safezone first!"]
	] call ExileClient_gui_toaster_addTemplateToast;
	ExileClientActionDelayShown = false;
	ExileClientActionDelayAbort = false;	
};

			_animation = "Exile_Acts_RepairVehicle01_Animation01";
			disableSerialization;
			("ExileActionProgressLayer" call BIS_fnc_rscLayer) cutRsc ["RscExileActionProgress", "PLAIN", 1, false];

			_keyDownHandle = (findDisplay 46) displayAddEventHandler ["KeyDown","_this call ExileClient_action_event_onKeyDown"];
			_mouseButtonDownHandle = (findDisplay 46) displayAddEventHandler ["MouseButtonDown","_this call ExileClient_action_event_onMouseButtonDown"];

			player switchMove _animation;
			["switchMoveRequest", [netId player, _animation]] call ExileClient_system_network_send;

			_startTime = diag_tickTime;
			_duration = 20;
			_sleepDuration = _duration / 100;
			_progress = 0;

			_display = uiNamespace getVariable "RscExileActionProgress";   
			_label = _display displayCtrl 4002;
			_label ctrlSetText "0%";
			_progressBarBackground = _display displayCtrl 4001;  
			_progressBarMaxSize = ctrlPosition _progressBarBackground;
			_progressBar = _display displayCtrl 4000;  
			_progressBar ctrlSetPosition [_progressBarMaxSize select 0, _progressBarMaxSize select 1, 0, _progressBarMaxSize select 3];
			_progressBar ctrlSetBackgroundColor [0, 0.78, 0.93, 1];
			_progressBar ctrlCommit 0;
			_progressBar ctrlSetPosition _progressBarMaxSize; 
			_progressBar ctrlCommit _duration;
			try
			{
				while {_progress < 1} do
				{	
					if (ExileClientActionDelayAbort) then 
					{
						throw 1;
					};

					uiSleep _sleepDuration; 
					_progress = ((diag_tickTime - _startTime) / _duration) min 1;
					_label ctrlSetText format["%1%2", round (_progress * 100), "%"];
				};
				throw 0;
			}
			catch
			{
				_progressBarColor = [];
				switch (_exception) do 
				{
					case 0:
					{
						_progressBarColor = [0.7, 0.93, 0, 1];
						deleteVehicle (_this select 0);

						[
							"SuccessTitleAndText", 
							["Scavenge Info", "Das Fahrzeug wurde zerlegt."]
						] call ExileClient_gui_toaster_addTemplateToast;
					};
					case 1: 	
					{ 
						[
							"InfoTitleAndText", 
							["Scavenge Info", "Bewegen Sie sich nicht."]
						] call ExileClient_gui_toaster_addTemplateToast;
						_progressBarColor = [0.82, 0.82, 0.82, 1];
					};
				};	
				player switchMove "";
				["switchMoveRequest", [netId player, ""]] call ExileClient_system_network_send;
				_progressBar ctrlSetBackgroundColor _progressBarColor;
				_progressBar ctrlSetPosition _progressBarMaxSize;
				_progressBar ctrlCommit 0;
			};

			("ExileActionProgressLayer" call BIS_fnc_rscLayer) cutFadeOut 2; 
			(findDisplay 46) displayRemoveEventHandler ["KeyDown", _keyDownHandle];
			(findDisplay 46) displayRemoveEventHandler ["MouseButtonDown", _mouseButtonDownHandle];
			ExileClientActionDelayShown = false;
			ExileClientActionDelayAbort = false;



И все. Это как вариант. Есть ещё множество.

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


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

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

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

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

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

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

Войти

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

Войти сейчас

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

    • Автор: vitacite
      Квест на аномалии. Участники - любые игроки. 3 НПС, 3 Анимированных аномалии (пока без дамага), 3 квестовых предмета - детектор аномалий, карта сокровищь и журнал с девчонками 🙂
      Выглядит это так...
       

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

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

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

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

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

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

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

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

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

      Пожалуйста, Войдите или Зарегистрируйтесь, чтобы увидеть это: Вложение.
       
       
      Мануаль по установке тут....
      Обновление от 19.01.2016
      https://github.com/olkeakavitacite/EQP_Anomaly/
      Так же находится описание, как и чего делать.
       
    • Автор: Serdce
      Подскажите, есть ли вариант смены местоположения трейда каждый рестарт, желательно не в рандомные места.
      Всё что в голову пришло, это несколько вариантов запакованных миссий, которые при рестарте батником заменяются. Есть ли какой то более адекватный вариант?
    • Автор: 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"
      Ну вот и всё готово, всё сохранили и запаковали как было!
       
    • Автор: Miduznya
      Всем привет, чет не нашел не где как можно в ручную обновить через .bat или .cmd файл
      если есть у кого такой поделитесь плиз. Прошу сильно не пинать если есть такая тема дайте ссылку
  • Наш выбор

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

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

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