From 33c2b96bb3d5bdebf6852591e9a1ea41a00371bd Mon Sep 17 00:00:00 2001 From: commy2 Date: Fri, 22 Dec 2017 15:09:06 +0100 Subject: [PATCH] converting to ace standards --- .../missions/Arsenal.VR/CfgEventHandlers.hpp | 11 + .../missions/Arsenal.VR/XEH_postInit.sqf | 77 +++++++ .../missions/Arsenal.VR/XEH_preInit.sqf | 4 + .../missions/Arsenal.VR/description.ext | 13 +- .../arsenal/missions/Arsenal.VR/fn_closed.sqf | 33 --- .../arsenal/missions/Arsenal.VR/fn_opened.sqf | 15 -- ..._createTarget.sqf => fnc_createTarget.sqf} | 18 +- .../{fn_onPauseScript.sqf => fnc_onPause.sqf} | 2 +- addons/arsenal/missions/Arsenal.VR/init.sqf | 215 ------------------ .../missions/Arsenal.VR/initPlayerLocal.sqf | 137 +++++++++++ .../missions/Arsenal.VR/script_component.hpp | 2 + 11 files changed, 244 insertions(+), 283 deletions(-) create mode 100644 addons/arsenal/missions/Arsenal.VR/CfgEventHandlers.hpp create mode 100644 addons/arsenal/missions/Arsenal.VR/XEH_postInit.sqf create mode 100644 addons/arsenal/missions/Arsenal.VR/XEH_preInit.sqf delete mode 100644 addons/arsenal/missions/Arsenal.VR/fn_closed.sqf delete mode 100644 addons/arsenal/missions/Arsenal.VR/fn_opened.sqf rename addons/arsenal/missions/Arsenal.VR/{fn_createTarget.sqf => fnc_createTarget.sqf} (82%) rename addons/arsenal/missions/Arsenal.VR/{fn_onPauseScript.sqf => fnc_onPause.sqf} (81%) delete mode 100644 addons/arsenal/missions/Arsenal.VR/init.sqf create mode 100644 addons/arsenal/missions/Arsenal.VR/initPlayerLocal.sqf diff --git a/addons/arsenal/missions/Arsenal.VR/CfgEventHandlers.hpp b/addons/arsenal/missions/Arsenal.VR/CfgEventHandlers.hpp new file mode 100644 index 0000000000..0f36260026 --- /dev/null +++ b/addons/arsenal/missions/Arsenal.VR/CfgEventHandlers.hpp @@ -0,0 +1,11 @@ +class Extended_PreInit_EventHandlers { + class ADDON { + init = QUOTE(call compile preprocessFileLineNumbers 'XEH_preInit.sqf'); + }; +}; + +class Extended_PostInit_EventHandlers { + class ADDON { + init = QUOTE(call compile preprocessFileLineNumbers 'XEH_postInit.sqf'); + }; +}; diff --git a/addons/arsenal/missions/Arsenal.VR/XEH_postInit.sqf b/addons/arsenal/missions/Arsenal.VR/XEH_postInit.sqf new file mode 100644 index 0000000000..b689f75dcc --- /dev/null +++ b/addons/arsenal/missions/Arsenal.VR/XEH_postInit.sqf @@ -0,0 +1,77 @@ +#include "script_component.hpp" + +enableSaving [false, false]; + +[QGVAR(displayOpened), { + private _player = player; + + // player pose + [{ + switch (true) do { + case (primaryWeapon _this != ""): { + [_this, "amovpercmstpslowwrfldnon", 2] call EFUNC(common,doAnimation); + }; + case (handgunWeapon _this != ""): { + [_this, "amovpercmstpslowwpstdnon", 2] call EFUNC(common,doAnimation); + }; + default { + [_this, "amovpercmstpsnonwnondnon", 2] call EFUNC(common,doAnimation); + }; + }; + }, _player] call CBA_fnc_execNextFrame; + + // hide everything except the player + { + _x enableSimulation false; + _x hideObject true; + } forEach (entities [[], [], true] - [_player]); + + _player call CBA_fnc_removeUnitTrackProjectiles; + _player setFatigue 0; +}] call CBA_fnc_addEventHandler; + +[QGVAR(displayClosed), { + private _player = player; + + // unhide everthing + { + _x enableSimulation true; + _x hideObject false; + } forEach entities [[], [], true]; + + // update VR unit gear + { + private _unit = _x; + + removeVest _unit; + _unit addVest vest _player; + + removeBackpack _unit; + _unit addBackpack backpack _player; + + removeHeadgear _unit; + _unit addHeadgear headgear _player; + + removeGoggles _unit; + _unit addGoggles goggles _player; + + removeAllWeapons _unit; + _unit addWeapon primaryWeapon _player; + { + _unit addPrimaryWeaponItem _x; + } forEach primaryWeaponItems _player; + + _unit addWeapon secondaryWeapon _player; + + { + _unit addSecondaryWeaponItem _x; + } forEach secondaryWeaponItems _player; + + _unit addWeapon handgunWeapon _player; + { + _unit addHandgunItem _x; + } forEach handgunItems _player; + } forEach (entities [["B_Soldier_VR_F", "O_Soldier_VR_F", "I_Soldier_VR_F"], [], true]); + + _player call CBA_fnc_addUnitTrackProjectiles; +}] call CBA_fnc_addEventHandler; diff --git a/addons/arsenal/missions/Arsenal.VR/XEH_preInit.sqf b/addons/arsenal/missions/Arsenal.VR/XEH_preInit.sqf new file mode 100644 index 0000000000..329d5fd1a5 --- /dev/null +++ b/addons/arsenal/missions/Arsenal.VR/XEH_preInit.sqf @@ -0,0 +1,4 @@ +#include "script_component.hpp" + +PREP(onPause); +PREP(createTarget); diff --git a/addons/arsenal/missions/Arsenal.VR/description.ext b/addons/arsenal/missions/Arsenal.VR/description.ext index 2973a1f156..b548cb933e 100644 --- a/addons/arsenal/missions/Arsenal.VR/description.ext +++ b/addons/arsenal/missions/Arsenal.VR/description.ext @@ -12,15 +12,6 @@ debriefing = 0; enableDebugConsoleSP = 1; doneKeys[] = {"BIS_Arsenal.Map_VR_done"}; -onPauseScript[] = {"arsenal_fnc_onPauseScript"}; +onPauseScript[] = {QFUNC(onPause)}; -class CfgFunctions { - class Arsenal { - class Misc { - class createTarget {file = "fn_createTarget.sqf";}; - class onPauseScript {file = "fn_onPauseScript.sqf";}; - class opened {file = "fn_opened.sqf";}; - class closed {file = "fn_closed.sqf";}; - }; - }; -}; +#include "CfgEventHandlers.hpp" diff --git a/addons/arsenal/missions/Arsenal.VR/fn_closed.sqf b/addons/arsenal/missions/Arsenal.VR/fn_closed.sqf deleted file mode 100644 index 464149a348..0000000000 --- a/addons/arsenal/missions/Arsenal.VR/fn_closed.sqf +++ /dev/null @@ -1,33 +0,0 @@ -if !(_this select 1) then { - { - { - if (_x iskindof "VR_CoverObject_base_F") then { - [_x,0] call bis_fnc_setheight; - } else { - _x enablesimulation true; - _x hideobject false; - }; - } foreach ([_x] + crew _x); - } foreach (allmissionobjects "All"); - { - _unit = _x; - removevest _unit; - removebackpack _unit; - removeheadgear _unit; - removegoggles _unit; - removeallweapons _unit; - _unit addvest vest player; - _unit addbackpack backpack player; - _unit addheadgear headgear player; - _unit addgoggles goggles player; - _unit addweapon primaryweapon player; - _unit addweapon secondaryweapon player; - _unit addweapon handgunweapon player; - {_unit addprimaryweaponitem _x;} foreach (primaryweaponitems player); - {_unit addsecondaryweaponitem _x;} foreach (secondaryweaponitems player); - {_unit addhandgunitem _x;} foreach (handgunitems player); - } foreach (entities "B_Soldier_VR_F" + entities "O_Soldier_VR_F" + entities "I_Soldier_VR_F"); - - ("RscVRMeta" call bis_fnc_rscLayer) cutrsc ["RscVRMeta","plain"]; -}; -player setvariable ["BIS_drawLines",true]; \ No newline at end of file diff --git a/addons/arsenal/missions/Arsenal.VR/fn_opened.sqf b/addons/arsenal/missions/Arsenal.VR/fn_opened.sqf deleted file mode 100644 index 0bc5f67366..0000000000 --- a/addons/arsenal/missions/Arsenal.VR/fn_opened.sqf +++ /dev/null @@ -1,15 +0,0 @@ -_player = missionnamespace getvariable ["BIS_fnc_arsenal_center",player]; -{ - { - if (_x iskindof "VR_CoverObject_base_F") then { - [_x,-10] call bis_fnc_setheight; //--- Move cover objects below ground instead, they have unexplainable problem with hideObject - } else { - _x enablesimulation false; - _x hideobject true; - }; - } foreach ([_x] + crew _x - [_player]); -} foreach (allmissionobjects "All" - [_player]); - -("RscVRMeta" call bis_fnc_rscLayer) cuttext ["","plain"]; -player setvariable ["BIS_drawLines",false]; -player setfatigue 0; \ No newline at end of file diff --git a/addons/arsenal/missions/Arsenal.VR/fn_createTarget.sqf b/addons/arsenal/missions/Arsenal.VR/fnc_createTarget.sqf similarity index 82% rename from addons/arsenal/missions/Arsenal.VR/fn_createTarget.sqf rename to addons/arsenal/missions/Arsenal.VR/fnc_createTarget.sqf index 6eb7070190..8dc97cb7f9 100644 --- a/addons/arsenal/missions/Arsenal.VR/fn_createTarget.sqf +++ b/addons/arsenal/missions/Arsenal.VR/fnc_createTarget.sqf @@ -1,3 +1,5 @@ +#include "script_component.hpp" + private ["_pos","_side","_obj","_grp","_type","_target"]; _pos = [_this,0,[],[[],objnull]] call bis_fnc_param; _type = [_this,1,"B_Soldier_VR_F",["",objnull]] call bis_fnc_param; @@ -7,13 +9,13 @@ _grp = grpnull; _var = ""; if (typename _obj == typename objnull) then { - _grp = group _obj; - _type = typeof _obj; - _pos = _obj getvariable ["pos",position objnull]; - _var = _obj getvariable ["var",""]; - [_obj,true] call bis_fnc_VREffectKilled; + _grp = group _obj; + _type = typeof _obj; + _pos = _obj getvariable ["pos",position objnull]; + _var = _obj getvariable ["var",""]; + [_obj,true] call bis_fnc_VREffectKilled; } else { - _grp = creategroup east; + _grp = creategroup east; }; if (_var == "") then {_var = "t" + str round random 999999;}; @@ -48,7 +50,7 @@ missionnamespace setvariable [_var,_target]; _target switchmove "amovpercmstpslowwrfldnon"; _target setvariable ["pos",_pos]; _target setvariable ["var",_var]; -_target addeventhandler ["killed",{_this spawn arsenal_fnc_createTarget;}]; +_target addeventhandler ["killed", FUNC(createTarget)]; [_target] call bis_fnc_VRHitpart; -_target \ No newline at end of file +_target diff --git a/addons/arsenal/missions/Arsenal.VR/fn_onPauseScript.sqf b/addons/arsenal/missions/Arsenal.VR/fnc_onPause.sqf similarity index 81% rename from addons/arsenal/missions/Arsenal.VR/fn_onPauseScript.sqf rename to addons/arsenal/missions/Arsenal.VR/fnc_onPause.sqf index 6425393e68..7bdc46c243 100644 --- a/addons/arsenal/missions/Arsenal.VR/fn_onPauseScript.sqf +++ b/addons/arsenal/missions/Arsenal.VR/fnc_onPause.sqf @@ -8,7 +8,7 @@ _ctrlButtonAbort ctrlSetEventHandler [ "ButtonClick", { params ["_control"]; ctrlParent _control closeDisplay 2; - ["Open", true] spawn (uiNamespace getVariable "bis_fnc_arsenal"); //@todo + {[player, player, true] call FUNC(openBox)} call CBA_fnc_execNextFrame; true } call EFUNC(common,codeToString) ]; diff --git a/addons/arsenal/missions/Arsenal.VR/init.sqf b/addons/arsenal/missions/Arsenal.VR/init.sqf deleted file mode 100644 index 61e9055d18..0000000000 --- a/addons/arsenal/missions/Arsenal.VR/init.sqf +++ /dev/null @@ -1,215 +0,0 @@ -"init" call bis_fnc_startloadingscreen; -//enableenvironment false; -enablesaving [false,false]; -player allowdamage false; -activateKey format ["BIS_%1.%2_done", missionName, worldName]; - -cuttext ["","black in",1e10]; - -waituntil {!isnull (finddisplay 46)}; -player switchmove "amovpercmstpslowwrfldnon"; -player call bis_fnc_traceBullets; - -//--- Static targets in various distance -{ - _pos = [player,_x,180 + _foreachindex] call bis_fnc_relpos; - [_pos,"O_Soldier_VR_F"] call arsenal_fnc_createTarget; -} foreach [10,20,30,40,50,100,500,1000,2000]; - -//--- Target line -_pos = [player,20,90] call bis_fnc_relpos; -for "_i" from 0 to 5 do { - _iPos = [(_pos select 0),(_pos select 1) - 3 + _i,0]; - [_ipos,"O_Soldier_VR_F"] call arsenal_fnc_createTarget; -}; - -//--- Target cluster -_pos = [player,20,-90] call bis_fnc_relpos; -for "_i" from 0 to 8 do { - _index = floor (_i / 3); - _iPos = [ - (_pos select 0) + _index * 1.5, - (_pos select 1) + 1.5 + (_i % 3), - 0 - ]; - _target = [_ipos,"O_Soldier_VR_F"] call arsenal_fnc_createTarget; - - _target switchmove (["aidlpercmstpslowwrfldnon","aidlpknlmstpslowwrfldnon_ai","aidlppnemstpsraswrfldnon_ai"] select _index); - _target setunitpos (["up","middle","down"] select _index); -}; - -//--- Target patrol -_grp = creategroup east; -{ - _wp = _grp addwaypoint [[player,10,_x] call bis_fnc_relpos,0]; - if (_foreachindex == 4) then {_wp setwaypointtype "cycle";}; -} foreach [0,90,180,270,0]; - -_pos = [player,10,0] call bis_fnc_relpos; -for "_i" from 0 to 1 do { - _target = [_pos,"O_Soldier_VR_F"] call arsenal_fnc_createTarget; - [_target] join _grp; - _target stop false; - _target enableai "move"; - _target setspeedmode "limited"; -}; - -//--- Armored vehicles -_vehicles = []; -if (isclass (configfile >> "cfgvehicles" >> "Land_VR_Target_MRAP_01_F")) then { - _step = 15; - _posCenter = [position player select 0,(position player select 1) + 30,0]; - { - _row = _foreachindex; - _rowCount = (count _x - 1) * 0.5; - { - _pos = [ - (_posCenter select 0) + (-_rowCount + _foreachindex) * _step, - (_posCenter select 1) + _row * _step, - 0 - ]; - _veh = createvehicle [_x,_pos,[],0,"none"]; - _veh setpos _pos; - _veh setdir 180; - _veh setvelocity [0,0,-1]; - [_veh] call bis_fnc_VRHitpart; - _marker = _veh call bis_fnc_boundingboxmarker; - _marker setmarkercolor "colororange"; - _vehicles pushback _veh; - } foreach _x; - } foreach [ - [ - "Land_VR_Target_MRAP_01_F", - "Land_VR_Target_APC_Wheeled_01_F", - "Land_VR_Target_MBT_01_cannon_F" - ], - [ - "Land_VR_Target_MRAP_01_F", - "Land_VR_Target_APC_Wheeled_01_F", - "Land_VR_Target_MBT_01_cannon_F" - ] - ]; -}; -_vehicles spawn { - waituntil { - _allDisabled = true; - { - _hitalive = _x getvariable ["bis_fnc_VRHitParts_hitalive",[]]; - _allDisabled = _allDisabled && ({!_x} count _hitalive >= 2); - sleep 0.1; - } foreach _this; - _allDisabled - }; - setstatvalue ["MarkMassVirtualDestruction",1]; -}; - -//--- Cover objects -_coverObjects = [ - "Land_VR_CoverObject_01_kneel_F", - "Land_VR_CoverObject_01_kneelHigh_F", - "Land_VR_CoverObject_01_kneelLow_F", - "Land_VR_CoverObject_01_stand_F", - "Land_VR_CoverObject_01_standHigh_F" -]; -_dis = 3; -for "_i" from 5 to 11 do { - _dir = _i * 45; - _pos = [position player,(abs sin _dir + abs cos _dir) * _dis,_dir] call bis_fnc_relpos; - _block = createvehicle [_coverObjects select (_i % count _coverObjects),_pos,[],0,"none"]; - _block setpos _pos; -}; - -//--- Starting point -_square = createvehicle ["VR_Area_01_square_1x1_grey_F",position player,[],0,"none"]; -_square setpos position player; -_marker = createmarker ["bis_start",position player]; -_marker setmarkertype "mil_start"; - -//--- Garage position -_centerPos = [player,[16,16,0] vectorDistance [0,0,0],135] call bis_fnc_relpos; -_squareGarage = createvehicle ["VR_Area_01_square_4x4_grey_F",_centerPos,[],0,"none"]; -_squareGarage setpos _centerPos; -BIS_fnc_garage_center = createvehicle ["Land_HelipadEmpty_F",_centerPos,[],0,"none"]; -BIS_fnc_garage_center setpos _centerPos; -BIS_fnc_garage_center enablesimulation false; - -player addeventhandler [ - "animchanged", - { - _unit = _this select 0; - _anim = _this select 1; - _animSplit = [_anim,"_"] call bis_fnc_splitstring; - if ("salute" in _animSplit) then { - { - _x playaction "salute"; - } foreach ((position _unit nearobjects ["man",10]) - [player]); - }; - } -]; - -disableserialization; -"init" call bis_fnc_endloadingscreen; -bis_typeLast = 0; - -[ - missionnamespace, - "arsenalOpened", - { - _this call arsenal_fnc_opened; - bis_typeLast = 0; - } -] call bis_fnc_addscriptedeventhandler; -[ - missionnamespace, - "arsenalClosed", - { - _this call arsenal_fnc_closed; - } -] call bis_fnc_addscriptedeventhandler; -[ - missionnamespace, - "garageOpened", - { - _this call arsenal_fnc_opened; - bis_typeLast = 1; - } -] call bis_fnc_addscriptedeventhandler; -[ - missionnamespace, - "garageClosed", - { - _this call arsenal_fnc_closed; - } -] call bis_fnc_addscriptedeventhandler; - - - -//--- Open Arsenal -bis_fnc_arsenal_fullArsenal = true; -bis_fnc_arsenal_fullGarage = true; -if ((uinamespace getvariable ["bis_fnc_arsenal_typeDefault",0]) > 0) then { - ["Open",true] spawn bis_fnc_garage; -} else { - ["Open",true] spawn bis_fnc_arsenal; -}; -uinamespace setvariable ["bis_fnc_arsenal_typeDefault",nil]; -["#(argb,8,8,3)color(0,0,0,1)",false,nil,0.1,[0,0.5]] spawn bis_fnc_textTiles; - -//--- Target markers -[] spawn { - _targets = []; - { - _targets pushback vehiclevarname _x; - _var = vehiclevarname _x; - _marker = createmarker [_var,position _x]; - _marker setmarkertype "mil_dot"; - _marker setmarkercolor "colororange"; - } foreach (allmissionobjects "man") - [player]; - while {true} do { - { - _t = missionnamespace getvariable _x; - (vehiclevarname _t) setmarkerpos position _t; - } foreach _targets; - sleep 0.1; - }; -}; \ No newline at end of file diff --git a/addons/arsenal/missions/Arsenal.VR/initPlayerLocal.sqf b/addons/arsenal/missions/Arsenal.VR/initPlayerLocal.sqf new file mode 100644 index 0000000000..4216469a69 --- /dev/null +++ b/addons/arsenal/missions/Arsenal.VR/initPlayerLocal.sqf @@ -0,0 +1,137 @@ +#include "script_component.hpp" + +params ["_unit"]; + +_unit allowDamage false; + +/* +//--- Static targets in various distance +{ + _pos = [_unit,_x,180 + _foreachindex] call bis_fnc_relpos; + [_pos,"O_Soldier_VR_F"] call arsenal_fnc_createTarget; +} foreach [10,20,30,40,50,100,500,1000,2000]; + +//--- Target line +_pos = [_unit,20,90] call bis_fnc_relpos; +for "_i" from 0 to 5 do { + _iPos = [(_pos select 0),(_pos select 1) - 3 + _i,0]; + [_ipos,"O_Soldier_VR_F"] call arsenal_fnc_createTarget; +}; + +//--- Target cluster +_pos = [_unit,20,-90] call bis_fnc_relpos; +for "_i" from 0 to 8 do { + _index = floor (_i / 3); + _iPos = [ + (_pos select 0) + _index * 1.5, + (_pos select 1) + 1.5 + (_i % 3), + 0 + ]; + _target = [_ipos,"O_Soldier_VR_F"] call arsenal_fnc_createTarget; + + _target switchmove (["aidlpercmstpslowwrfldnon","aidlpknlmstpslowwrfldnon_ai","aidlppnemstpsraswrfldnon_ai"] select _index); + _target setunitpos (["up","middle","down"] select _index); +}; + +//--- Target patrol +_grp = creategroup east; +{ + _wp = _grp addwaypoint [[_unit,10,_x] call bis_fnc_relpos,0]; + if (_foreachindex == 4) then {_wp setwaypointtype "cycle";}; +} foreach [0,90,180,270,0]; + +_pos = [_unit,10,0] call bis_fnc_relpos; +for "_i" from 0 to 1 do { + _target = [_pos,"O_Soldier_VR_F"] call arsenal_fnc_createTarget; + [_target] join _grp; + _target stop false; + _target enableai "move"; + _target setspeedmode "limited"; +}; + +//--- Armored vehicles +_vehicles = []; +if (isclass (configfile >> "cfgvehicles" >> "Land_VR_Target_MRAP_01_F")) then { + _step = 15; + _posCenter = [position _unit select 0,(position _unit select 1) + 30,0]; + { + _row = _foreachindex; + _rowCount = (count _x - 1) * 0.5; + { + _pos = [ + (_posCenter select 0) + (-_rowCount + _foreachindex) * _step, + (_posCenter select 1) + _row * _step, + 0 + ]; + _veh = createvehicle [_x,_pos,[],0,"none"]; + _veh setpos _pos; + _veh setdir 180; + _veh setvelocity [0,0,-1]; + [_veh] call bis_fnc_VRHitpart; + _marker = _veh call bis_fnc_boundingboxmarker; + _marker setmarkercolor "colororange"; + _vehicles pushback _veh; + } foreach _x; + } foreach [ + [ + "Land_VR_Target_MRAP_01_F", + "Land_VR_Target_APC_Wheeled_01_F", + "Land_VR_Target_MBT_01_cannon_F" + ], + [ + "Land_VR_Target_MRAP_01_F", + "Land_VR_Target_APC_Wheeled_01_F", + "Land_VR_Target_MBT_01_cannon_F" + ] + ]; +}; +_vehicles spawn { + waituntil { + _allDisabled = true; + { + _hitalive = _x getvariable ["bis_fnc_VRHitParts_hitalive",[]]; + _allDisabled = _allDisabled && ({!_x} count _hitalive >= 2); + sleep 0.1; + } foreach _this; + _allDisabled + }; + setstatvalue ["MarkMassVirtualDestruction",1]; +}; + +//--- Cover objects +_coverObjects = [ + "Land_VR_CoverObject_01_kneel_F", + "Land_VR_CoverObject_01_kneelHigh_F", + "Land_VR_CoverObject_01_kneelLow_F", + "Land_VR_CoverObject_01_stand_F", + "Land_VR_CoverObject_01_standHigh_F" +]; +_dis = 3; +for "_i" from 5 to 11 do { + _dir = _i * 45; + _pos = [position _unit,(abs sin _dir + abs cos _dir) * _dis,_dir] call bis_fnc_relpos; + _block = createvehicle [_coverObjects select (_i % count _coverObjects),_pos,[],0,"none"]; + _block setpos _pos; +}; + +//--- Starting point +_square = createvehicle ["VR_Area_01_square_1x1_grey_F",position _unit,[],0,"none"]; +_square setpos position _unit; +_marker = createmarker ["bis_start",position _unit]; +_marker setmarkertype "mil_start"; + +//--- Garage position +_centerPos = [_unit,[16,16,0] vectorDistance [0,0,0],135] call bis_fnc_relpos; +_squareGarage = createvehicle ["VR_Area_01_square_4x4_grey_F",_centerPos,[],0,"none"]; +_squareGarage setpos _centerPos; +BIS_fnc_garage_center = createvehicle ["Land_HelipadEmpty_F",_centerPos,[],0,"none"]; +BIS_fnc_garage_center setpos _centerPos; +BIS_fnc_garage_center enablesimulation false; + +*/ + +[_unit, true, false] call FUNC(initBox); + +[{!isNull findDisplay 46}, { + [player, player, true] call FUNC(openBox); +}] call CBA_fnc_waitUntilAndExecute; diff --git a/addons/arsenal/missions/Arsenal.VR/script_component.hpp b/addons/arsenal/missions/Arsenal.VR/script_component.hpp index 45c75ef68b..83467c1293 100644 --- a/addons/arsenal/missions/Arsenal.VR/script_component.hpp +++ b/addons/arsenal/missions/Arsenal.VR/script_component.hpp @@ -1 +1,3 @@ #include "\z\ace\addons\arsenal\script_component.hpp" + +#define PREP(var) FUNC(var) = compileFinal preprocessFileLineNumbers format ["fnc_%1.sqf", QUOTE(var)]