Schalldampfer Posted July 24, 2018 Report Share Posted July 24, 2018 (edited) As I could not find a maintained "deploy bike" script for A3 Epoch, I have created one myself. Thanks for G-Dog for assisting my scripting *Deploy vehicle from dyna menu (Space key menu) *Pack vehicle from dyna menu while looking at it *You can define any vehicle to spawn *The vehicle is spawned server side (not saved in the hive, but theoretically possible) *No animation like DayZ Epoch's "deploy anything" for now (but theoretically possible with client side modification) https://github.com/Schalldampfer/DeployBike4A3E first version hidden below Spoiler Server side create these two files epoch_server\compile\deploy_vehicle\Epoch_Deploy_server_PackVehicle.sqf Spoiler /* Author: Schalldampfer [_player,_vehObj] */ private ["_player","_puid","_owner","_vehObj","_vehClass"]; _player = _this select 0; _puid = getPlayerUID _player; _owner = owner _player; _vehObj = _this select 1; _vehClass = typeOf _vehObj; if ((_vehObj getVariable ["EPOCH_DeployOwner","-1"]) == _puid) then {//check owner Deploy_DeployedVehicles = Deploy_DeployedVehicles - [_vehObj];//remove from array deleteVehicle _vehObj;//remove vehicle format["You've packed a %1!", _vehClass] remoteExec ["Epoch_message",_player]; }; epoch_server\compile\deploy_vehicle\Epoch_Deploy_server_SpawnVehicle.sqf Spoiler /* Author: Schalldampfer [_player,_vehClass] */ private ["_player","_puid","_owner","_position","_vehClass","_vehObj","_isOk"]; _player = _this select 0; _puid = getPlayerUID _player; _owner = owner _player; _position = getPos _player; _vehClass = _this select 1; diag_log format["[DeployBike] Try spawning %1 by %2",_vehClass,_player]; _isOk = true; if(isNil "Deploy_DeployedVehicles") then {Deploy_DeployedVehicles = [];}; //check player haven't spawned one { if ((_x getVariable ["EPOCH_DeployOwner","-1"]) == _puid) then { _isOk = false;"You've already deployed a vehicle!" remoteExec ["Epoch_message",_player]; }; } foreach Deploy_DeployedVehicles; //spawn if (_isOk) then { _vehObj = _vehClass createVehicle _position; //create _vehObj allowDamage false; //init _vehObj setVectorUp (surfaceNormal (getPos _vehObj)); _vehObj setVelocity [0,0,.1]; // _vehObj call EPOCH_server_setVToken; // _vehObj call EPOCH_server_vehicleInit; Deploy_DeployedVehicles set [count Deploy_DeployedVehicles, _vehObj];//add to array _vehObj setvariable ["EPOCH_DeployOwner",_puid];//set puid as owner _vehObj addEventHandler ["GetIn", {"WARNING: This vehicle will be deleted at restart!" remoteExec ["Epoch_message",_this select 2];}];//warn when get in // Normalize vehicle inventory clearWeaponCargoGlobal _vehObj; clearMagazineCargoGlobal _vehObj; clearBackpackCargoGlobal _vehObj; clearItemCargoGlobal _vehObj; _vehObj setFuel ((random 1 max 0.1) min 0.9);//fuel //complete spaning _vehObj allowDamage true; format["You've deployed a %1!", _vehClass] remoteExec ["Epoch_message",_player]; }; _vehObj Modify those files epoch_server\config.cpp Line146~(in class CfgServerFunctions -> class A3E): Spoiler class deploy_vehicle { class Deploy_server_SpawnVehicle {}; class Deploy_server_PackVehicle {}; }; epoch_server\init\server_init.sqf : at bottom (outside any curly brackets) Spoiler "Deploy_SpawnVehicle" addPublicVariableEventHandler{(_this select 1) call Epoch_Deploy_server_SpawnVehicle}; "Deploy_PackVehicle" addPublicVariableEventHandler{(_this select 1) call Epoch_Deploy_server_PackVehicle}; Client side Modify two files epoch_config\Configs\CfgActionMenu\CfgActionMenu_self.hpp (at bottom) Spoiler class Deploy_deploy { condition = "!dyna_inVehicle"; action = "Deploy_SpawnVehicle = [player,'MBK_01_EPOCH']; publicVariableServer 'Deploy_SpawnVehicle';"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\repair.paa"; tooltip = "Deploy Bike"; }; You can change the MBK_01_EPOCH to any vehicle classname to deploy epoch_config\Configs\CfgActionMenu\CfgActionMenu_target.hpp (at bottom) Spoiler class Deploy_pack { condition = "dyna_isVehicle && ((crew dyna_cursorTarget) isEqualTo [])"; action = "Deploy_PackVehicle = [player,dyna_cursorTarget]; publicVariableServer 'Deploy_PackVehicle';"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\repair.paa"; tooltip = "Pack Vehicle"; }; --Edit BE filter: in the end of the 1st line of publicvariable.txt : !="Deploy_SpawnVehicle" !="Deploy_PackVehicle" Edited July 27, 2018 by Schalldampfer Github Link to comment Share on other sites More sharing options...
Grahame Posted July 24, 2018 Report Share Posted July 24, 2018 Couple of questions: (1) Why not put the server side code in an addon PBO so that you or others do not have to make changes to epoch_server.pbo every time an update is released? (2) Why make the deployed vehicles persist through a restart? People will just leave bikes all over the map decreasing server performance over time. (3) Why not check that the target class is the deployed vehicle for the pack option in the dynamenu... otherwise the option to pack will be given for all vehicles. (4) You should probably add the BE filters for the pubvars for completeness Hope this is helpful. Link to comment Share on other sites More sharing options...
Grahame Posted July 24, 2018 Report Share Posted July 24, 2018 Personally I use the server side UD addon and call a script clientside that checks whether certain requirements are met to be able to deploy a bike or mozzie, for example: if ("epochz_ToolKit" in (items player)) then { if ("VehicleRepair" in (magazines player)) then { player removeMagazine "VehicleRepair"; titleText ["", "PLAIN DOWN"]; player playActionNow "Medic"; _spawnPos = player modelToWorld [0,2,0]; _spawnDir = (getDir player) -90; UD_BIKE = [player, _spawnPos, _spawnDir]; sleep 3; publicVariableServer "UD_BIKE"; sleep 1; ['You have spawned a bike. It will be gone at restart!',0,0.7,2,0] spawn bis_fnc_dynamictext; player removeAction deploybike; } else { ['You need Vehicle Repair Parts to craft a bike!',0,0.7,2,0] spawn bis_fnc_dynamictext; }; } else { ['You need a Toolkit to craft a bike!',0,0.7,2,0] spawn bis_fnc_dynamictext; }; And then for packing: obj1 = _this select 0; _unit = _this select 1; _action = _this select 2; _unit removeAction _action; _deletetime = 8; _unit playMove "AinvPknlMstpSlayWnonDnon_medic"; //DO NOT CHANGE sleep _deleteTime; deleteVehicle obj1; _unit addMagazine "VehicleRepair"; deploybike = _unit addAction ["<t color=""#00CF11"">" +"Deploy Bike","custom\deploy_bike.sqf","",1,false,false,"",""]; Link to comment Share on other sites More sharing options...
Schalldampfer Posted July 24, 2018 Author Report Share Posted July 24, 2018 Thank you for your advice, I'll try it if I update it.(Currently I'm busy at making AI cities) (1)server side update I thought I'll include checks for deploying vehicle in server side (not implemented for now) (such as community stat (?), donor and admin) (2)vehicle to be persistent through restartI haven't made it saved for now. It can be also used for deploying garage (though it's also not implemented in Virtual Garage in A3 Epoch, and may be done by modifing building settings), that must be static and persistent. And I don't know it's really necessary, but can be an option. (3)pack vehicles not deployed No problem, the vehicle has an variable about its owner, (which will be "-1" for non-deployed vehicles). I'm cheking it in the server script. Quote _vehObj setvariable ["EPOCH_DeployOwner",_puid];//set puid as owner Quote if ((_vehObj getVariable ["EPOCH_DeployOwner","-1"]) == _puid) then {//check owner (4)BE filter oops, I forgot it.I'll add it later. there's at least 2 public variables Quote !="Deploy_SpawnVehicle" !="Deploy_PackVehicle" A reason why I dont use addAction is, the scroll-menu action tend to mulfunction dyna menu. when I push space key, both the dyna menu and scroll menu opens and dyna menu die with leaving fog effects. (I was using an scroll menu action that spawn silent hint of server rule) Link to comment Share on other sites More sharing options...
Grahame Posted July 24, 2018 Report Share Posted July 24, 2018 (1) I'm just suggesting putting the scripts in a separate PBO rather than in epoch_server. If you need a hand on that then let me know. Will be happy to help. (2) The line _vehObj call EPOCH_server_vehicleInit; will, iirc, make the vehicle persistent. (3) My point was more changing the condition line to something like: condition = "dyna_isVehicle && ((crew dyna_cursorTarget) isEqualTo []) && (dyna_cursorTarget iskindof 'MBK_01_EPOCH')"; So that that option only shows in the dynamenu for deployed vehicles. Also, deployed vehicles should be removed from the trader price lists or players will spam them for cash Link to comment Share on other sites More sharing options...
Grahame Posted July 24, 2018 Report Share Posted July 24, 2018 To clarify: The line _vehObj call EPOCH_server_setVToken; ensures that the vehicle will not be deleted when a player gets near to it and is required to be run for all vehicles spawned by script. The line _vehObj call EPOCH_server_vehicleInit; sets event handlers on the vehicle that will add it into the save vehicle queue for saving into the database (assuming slots are available) Link to comment Share on other sites More sharing options...
Schalldampfer Posted July 24, 2018 Author Report Share Posted July 24, 2018 9 minutes ago, Grahame said: (1) I'm just suggesting putting the scripts in a separate PBO rather than in epoch_server. If you need a hand on that then let me know. Will be happy to help. (2) The line _vehObj call EPOCH_server_vehicleInit; will, iirc, make the vehicle persistent. (3) My point was more changing the condition line to something like: condition = "dyna_isVehicle && ((crew dyna_cursorTarget) isEqualTo []) && (dyna_cursorTarget iskindof 'MBK_01_EPOCH')"; So that that option only shows in the dynamenu for deployed vehicles. Also, deployed vehicles should be removed from the trader price lists or players will spam them for cash thanks for replying, (1) I'll try it, I found some scripts doing that, so I'll imitate them. (2) thanks for noticing, I'll check the init function and copy some codes in it. (3) thanks, I'll try it. I have removed the vehicle from spawning and trader list (I think it's good to change Deploy_vehicle array to include playerUID instead of vehicles and check puid to prevent duplicates) --P.S.-- I'll use GitHub for further updates, to log what was changed Grahame 1 Link to comment Share on other sites More sharing options...
Grahame Posted July 24, 2018 Report Share Posted July 24, 2018 If you like I can send my server side addon and scripts for you to look at for ideas. I like the direction you are going and you've made a fine start on this. You can really just remove the EPOCH_server_vehicleInit line without issues all it does is ensure that a persistent vic writes its death into the Vehicle Killed table in the database and is added to the save queue Yeah, more important in your case, using the dynaMenu to avoid people just spawning things over and over again. In my case I use an addAction for the scroll wheel and remove it when they spawn one and add it back when they repack it Link to comment Share on other sites More sharing options...
megaz Posted July 31, 2018 Report Share Posted July 31, 2018 Hi Schalldampfer, I installed this as per instructions but i don't see a deploy menu when i push space bar does the player need anything in inventory to spawn the bike ? thanks MegaZ Link to comment Share on other sites More sharing options...
Schalldampfer Posted July 31, 2018 Author Report Share Posted July 31, 2018 2 hours ago, megaz said: Hi Schalldampfer, I installed this as per instructions but i don't see a deploy menu when i push space bar does the player need anything in inventory to spawn the bike ? thanks MegaZ no. I think you failed to edit epoch_config\Configs\CfgActionMenu\CfgActionMenu_self.hpp . Link to comment Share on other sites More sharing options...
megaz Posted July 31, 2018 Report Share Posted July 31, 2018 I Added that see below: CfgActionMenu_self Spoiler /* Author: Raimonds Virtoss - EpochMod.com Contributors: Aaron Clark Description: Action Menu Self Config Licence: Arma Public License Share Alike (APL-SA) - https://www.bistudio.com/community/licenses/arma-public-license-share-alike Github: https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_config/Configs/CfgActionMenu/CfgActionMenu_self.hpp */ class veh_lock { condition = "if (vehicle player iskindof 'Bicycle') exitwith {false};dyna_inVehicle && !dyna_lockedInVehicle"; action = "[vehicle player, true, player, Epoch_personalToken] remoteExec ['EPOCH_server_lockVehicle',2];"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\pad_cannot_lock.paa"; tooltip = "Lock"; }; class veh_unLock { condition = "dyna_inVehicle && dyna_lockedInVehicle"; action = "[vehicle player, false, player, Epoch_personalToken] remoteExec ['EPOCH_server_lockVehicle',2];"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\pad_can_unlock.paa"; tooltip = "Unlock"; }; class player_inspect { condition = "!dyna_inVehicle"; action = "if !(underwater player) then {call EPOCH_lootTrash}else {if !(((nearestobjects [player,['container_epoch','weaponholdersimulated','GroundWeaponHolder'],5]) select {(_x getvariable ['EPOCH_Loot',false]) || (_x iskindof 'container_epoch' && _x animationPhase 'open_lid' > 0.5)}) isequalto []) then {call EPOCH_QuickTakeLoad} else {call EPOCH_lootTrash}};"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\player_inspect.paa"; tooltip = "Examine"; }; class Groups { condition = "true"; action = ""; icon = "x\addons\a3_epoch_code\Data\UI\buttons\group_menu_ca.paa"; tooltip = "Groups Menu"; class Group { condition = "true"; action = "call EPOCH_Inventory_Group;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\perm_group_menu_ca.paa"; tooltip = "Perm Group Menu"; }; class TempGroup { condition = "true"; action = "call EPOCH_Inventory_TempGroup;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\temp_group_menu_ca.paa"; tooltip = "Temp Group Menu"; }; }; class player_group_requests { condition = "!(Epoch_invited_GroupUIDs isEqualTo[])"; action = "call EPOCH_Inventory_iGroup;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\group_requests_ca.paa"; tooltip = "Group Requests"; }; class player_tempGroup_requests { condition = "!(Epoch_invited_tempGroupUIDs isEqualTo[])"; action = "call EPOCH_Inventory_itempGroup;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\group_requests_ca.paa"; tooltip = "Temp Group Requests"; }; class base_mode_enable { condition = "EPOCH_buildMode in [0,2] && !dyna_inVehicle"; action = "if (EPOCH_playerEnergy > 0) then {EPOCH_stabilityTarget = objNull;EPOCH_buildMode = 1;['Build Mode: Enabled Snap alignment', 5] call Epoch_message;EPOCH_buildDirection = 0} else {['Need Energy!', 5] call Epoch_message};"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_maintain.paa"; tooltip = "Build Mode: Snap alignment"; }; class base_mode_enable_free { condition = "EPOCH_buildMode == 1 && EPOCH_playerEnergy > 0"; action = "EPOCH_stabilityTarget = objNull;EPOCH_buildMode = 2;['Build Mode: Enabled Free alignment', 5] call Epoch_message;EPOCH_buildDirection = 0;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_maintain.paa"; tooltip = "Build Mode: Free alignment"; }; class base_mode_disable { condition = "EPOCH_buildMode > 0"; action = "EPOCH_buildMode = 0;EPOCH_snapDirection = 0;['Build Mode: Disabled', 5] call Epoch_message;EPOCH_Target = objNull;EPOCH_Z_OFFSET = 0;EPOCH_X_OFFSET = 0;EPOCH_Y_OFFSET = 5;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_remove.paa"; tooltip = "Build Mode: Disable"; }; class base_mode_snap_direction { condition = "EPOCH_buildMode == 1"; action = "EPOCH_snapDirection = EPOCH_snapDirection + 1; if (EPOCH_snapDirection > 3) then {EPOCH_snapDirection = 0};[format['SNAP DIRECTION: %1°', EPOCH_snapDirection*90], 5] call Epoch_message;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_rotate.paa"; tooltip = "Build Mode: Rotate 90°"; tooltipcode = "format ['Build Mode: Switch Snap Direction to %1° (current %2°)',if (EPOCH_snapDirection < 3) then {(EPOCH_snapDirection+1)*90} else {0},EPOCH_snapDirection*90]"; }; class base_mode_detach { condition = "EPOCH_buildMode > 0 && !isnull EPOCH_target && EPOCH_target_attachedTo isequalto player && Epoch_target iskindof 'Const_Ghost_EPOCH'"; action = "EPOCH_target_attachedTo = objnull; ['Object Detached', 5] call Epoch_message;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_detach.paa"; tooltip = "Build Mode: Detach Object"; }; class base_mode_attach { condition = "EPOCH_buildMode > 0 && !isnull EPOCH_target && !(EPOCH_target_attachedTo isequalto player) && Epoch_target iskindof 'Const_Ghost_EPOCH'"; action = "EPOCH_target_attachedTo = player; ['Object Attached', 5] call Epoch_message;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_attach.paa"; tooltip = "Build Mode: Attach Object"; }; class Drink { condition = "dyna_Watersource"; action = "if (currentweapon player == '') then {player playmove 'AinvPknlMstpSnonWnonDnon_Putdown_AmovPknlMstpSnonWnonDnon';}else {if (currentweapon player == handgunweapon player) then {player playmove 'AinvPknlMstpSrasWpstDnon_Putdown_AmovPknlMstpSrasWpstDnon';}else { player playmove 'AinvPknlMstpSrasWrflDnon_Putdown_AmovPknlMstpSrasWrflDnon';};};{_output = _x call EPOCH_giveAttributes;if (_output != '') then {[_output, 5] call Epoch_message_stack;};} foreach [['Thirst',100],['Toxicity',1,1],['Stamina',10]];"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Drink.paa"; tooltip = "Drink"; }; class Wash { condition = "dyna_Watersource"; action = "if !('Soap_Epoch' in magazines player) exitwith {['You need a Soap to wash yourself',5] call Epoch_Message;};[] spawn {player playMove 'AinvPknlMstpSnonWrflDnon_medic0';player playMove 'AinvPknlMstpSnonWrflDnon_medicEnd';['Washing ...',5] call Epoch_Message;player removeitem 'Soap_Epoch';uisleep 6;{_output = _x call EPOCH_giveAttributes; if (_output != '') then {[_output, 5] call Epoch_message_stack;};} foreach [['Soiled',-25]];};"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Washing.paa"; tooltip = "Wash yourself"; }; class ServicePoint { condition = "call EPOCH_SP_Check"; action = "[dyna_Turret] call EPOCH_SP_Start;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_man.paa"; tooltip = "Service Point"; class Refuel { condition = "!isnil 'Ignatz_Refuel'"; action = "(Ignatz_Refuel select 1) spawn EPOCH_SP_Refuel"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\vehicle_refuel.paa"; tooltipcode = "Ignatz_Refuel select 0"; }; class Repair { condition = "!isnil 'Ignatz_Repair'"; action = "(Ignatz_Repair select 1) spawn EPOCH_SP_Repair"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\repair.paa"; tooltipcode = "Ignatz_Repair select 0"; }; class Rearm0 { condition = "!isnil 'Ignatz_Rearm0'"; action = "(Ignatz_Rearm0 select 1) call EPOCH_SP_Rearm"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Rearm.paa"; tooltipcode = "Ignatz_Rearm0 select 0"; }; class Rearm1 { condition = "!isnil 'Ignatz_Rearm1'"; action = "(Ignatz_Rearm1 select 1) call EPOCH_SP_Rearm"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Rearm.paa"; tooltipcode = "Ignatz_Rearm1 select 0"; }; class Rearm2 { condition = "!isnil 'Ignatz_Rearm2'"; action = "(Ignatz_Rearm2 select 1) call EPOCH_SP_Rearm"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Rearm.paa"; tooltipcode = "Ignatz_Rearm2 select 0"; }; }; class veh_Rearm1 { condition = "if (count dyna_weaponsTurret > 0) then {!((dyna_weaponsTurret select 0) in dyna_blockWeapons)}else{false}"; action = "[vehicle player, dyna_weaponsTurret select 0, dyna_Turret] call EPOCH_vehicle_checkTurretAmmo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Rearm.paa"; tooltipcode = "format['Add Mag to %1',getText(configFile >> 'CfgWeapons' >> dyna_weaponsTurret select 0 >> 'displayName')]"; }; class veh_Rearm2 { condition = "if (count dyna_weaponsTurret > 1) then {!((dyna_weaponsTurret select 1) in dyna_blockWeapons)}else{false}"; action = "[vehicle player,dyna_weaponsTurret select 1, dyna_Turret] call EPOCH_vehicle_checkTurretAmmo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Rearm.paa"; tooltipcode = "format['Add Mag to %1',getText(configFile >> 'CfgWeapons' >> dyna_weaponsTurret select 1 >> 'displayName')]"; }; class veh_Rearm3 { condition = "if (count dyna_weaponsTurret > 2) then {!((dyna_weaponsTurret select 2) in dyna_blockWeapons)}else{false}"; action = "[vehicle player,dyna_weaponsTurret select 2, dyna_Turret] call EPOCH_vehicle_checkTurretAmmo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Rearm.paa"; tooltipcode = "format['Add Mag to %1',getText(configFile >> 'CfgWeapons' >> dyna_weaponsTurret select 2 >> 'displayName')]"; }; class veh_Rearm4 { condition = "if (count dyna_weaponsTurret > 3) then {!((dyna_weaponsTurret select 3) in dyna_blockWeapons)}else{false}"; action = "[vehicle player,dyna_weaponsTurret select 3, dyna_Turret] call EPOCH_vehicle_checkTurretAmmo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Rearm.paa"; tooltipcode = "format['Add Mag to %1',getText(configFile >> 'CfgWeapons' >> dyna_weaponsTurret select 3 >> 'displayName')]"; }; class veh_RemoveAmmo1 { condition = "if (count dyna_WeapsMagsTurret > 0) then {!((dyna_WeapsMagsTurret select 0 select 0) in dyna_blockWeapons)}else{false}"; action = "[vehicle player,dyna_WeapsMagsTurret select 0 select 0,dyna_WeapsMagsTurret select 0 select 1, dyna_Turret] call EPOCH_vehicle_removeTurretAmmo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\RemoveMag.paa"; tooltipcode = "format['Remove %1 from %2',getText(configFile >> 'CfgMagazines' >> (dyna_WeapsMagsTurret select 0 select 1) >> 'displayName'),getText(configFile >> 'CfgWeapons' >> (dyna_WeapsMagsTurret select 0 select 0) >> 'displayName')]"; }; class veh_RemoveAmmo2 { condition = "if (count dyna_WeapsMagsTurret > 1) then {!((dyna_WeapsMagsTurret select 1 select 0) in dyna_blockWeapons)}else{false}"; action = "[vehicle player,dyna_WeapsMagsTurret select 1 select 0,dyna_WeapsMagsTurret select 1 select 1, dyna_Turret] call EPOCH_vehicle_removeTurretAmmo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\RemoveMag.paa"; tooltipcode = "format['Remove %1 from %2',getText(configFile >> 'CfgMagazines' >> (dyna_WeapsMagsTurret select 1 select 1) >> 'displayName'),getText(configFile >> 'CfgWeapons' >> (dyna_WeapsMagsTurret select 1 select 0) >> 'displayName')]"; }; class veh_RemoveAmmo3 { condition = "if (count dyna_WeapsMagsTurret > 2) then {!((dyna_WeapsMagsTurret select 2 select 0) in dyna_blockWeapons)}else{false}"; action = "[vehicle player,dyna_WeapsMagsTurret select 2 select 0,dyna_WeapsMagsTurret select 2 select 1, dyna_Turret] call EPOCH_vehicle_removeTurretAmmo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\RemoveMag.paa"; tooltipcode = "format['Remove %1 from %2',getText(configFile >> 'CfgMagazines' >> (dyna_WeapsMagsTurret select 2 select 1) >> 'displayName'),getText(configFile >> 'CfgWeapons' >> (dyna_WeapsMagsTurret select 2 select 0) >> 'displayName')]"; }; class veh_RemoveAmmo4 { condition = "if (count dyna_WeapsMagsTurret > 3) then {!((dyna_WeapsMagsTurret select 3 select 0) in dyna_blockWeapons)}else{false}"; action = "[vehicle player,dyna_WeapsMagsTurret select 3 select 0,dyna_WeapsMagsTurret select 3 select 1, dyna_Turret] call EPOCH_vehicle_removeTurretAmmo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\RemoveMag.paa"; tooltipcode = "format['Remove %1 from %2',getText(configFile >> 'CfgMagazines' >> (dyna_WeapsMagsTurret select 3 select 1) >> 'displayName'),getText(configFile >> 'CfgWeapons' >> (dyna_WeapsMagsTurret select 3 select 0) >> 'displayName')]"; }; class geiger_menu { condition = "'ItemGeigerCounter_EPOCH' in dyna_assigneditems"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\geiger_radiation.paa"; tooltip = "Geiger counter settings"; class geiger_toggle { condition = "true"; action = "call epoch_geiger_show_hide"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\geiger_toggle.paa"; tooltip = "Toggle HUD"; }; class geiger_counter_mute { condition = "!EPOCH_geiger_mute_counter"; action = "EPOCH_geiger_mute_counter = !EPOCH_geiger_mute_counter"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\geiger_volumeoff.paa"; tooltip = "Mute counter"; }; class geiger_counter_unmute { condition = "EPOCH_geiger_mute_counter"; action = "EPOCH_geiger_mute_counter = !EPOCH_geiger_mute_counter"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\geiger_volumeon.paa"; tooltip = "Unmute counter"; }; class geiger_warning_mute { condition = "!EPOCH_geiger_mute_warning"; action = "EPOCH_geiger_mute_warning = !EPOCH_geiger_mute_warning"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\geiger_alarmoff.paa"; tooltip = "Mute warnings"; }; class geiger_warning_unmute { condition = "EPOCH_geiger_mute_warning"; action = "EPOCH_geiger_mute_warning = !EPOCH_geiger_mute_warning"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\geiger_alarmon.paa"; tooltip = "Unmute warnings"; }; class Deploy_deploy { condition = "!dyna_inVehicle"; action = "Deploy_SpawnVehicle = [player,'MBK_01_EPOCH']; publicVariableServer 'Deploy_SpawnVehicle';"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\repair.paa"; tooltip = "Deploy Bike"; }; }; and CfgActionMenu_target Spoiler /* Author: Raimonds Virtoss - EpochMod.com Contributors: Aaron Clark Description: Action Menu Target Config Licence: Arma Public License Share Alike (APL-SA) - https://www.bistudio.com/community/licenses/arma-public-license-share-alike Github: https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_config/Configs/CfgActionMenu/CfgActionMenu_target.hpp */ class build_upgrade { condition = "dyna_buildMode select 0"; //action = "dyna_cursorTarget call EPOCH_QuickUpgrade;"; //TODO: scripted dyna menu action = ""; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_upgrade.paa"; tooltipcode = "format['Upgrade %1',getText(configFile >> 'CfgVehicles' >> (typeof dyna_cursorTarget) >> 'displayName')]"; class special {}; //uses external config, hardcoded }; class build_remove { condition = "dyna_buildMode select 1"; action = "dyna_cursorTarget call EPOCH_removeBUILD;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_trash.paa"; tooltipcode = "format['Remove %1',getText(configFile >> 'CfgVehicles' >> (typeof dyna_cursorTarget) >> 'displayName')]"; }; class build_move { condition = "dyna_buildMode select 2"; action = "dyna_cursorTarget call EPOCH_fnc_SelectTargetBuild;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_move.paa"; tooltipcode = "format['Move %1',getText(configFile >> 'CfgVehicles' >> (typeof dyna_cursorTarget) >> 'displayName')]"; }; //Vehicle interaction class veh_gear { condition = "dyna_isVehicle && !dyna_locked"; action = "call Epoch_client_gearVehicle;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\player_inspect.paa"; tooltip = "Inspect"; }; class veh_lock { condition = "if (dyna_cursorTarget iskindof 'Bicycle') exitwith {false};dyna_isVehicle && !dyna_locked"; action = "[dyna_cursorTarget, true, player, Epoch_personalToken] remoteExec ['EPOCH_server_lockVehicle',2];"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\pad_cannot_lock.paa"; tooltip = "Lock"; }; class veh_unLock { condition = "dyna_isVehicle && dyna_locked"; action = "[dyna_cursorTarget, false, player, Epoch_personalToken] remoteExec ['EPOCH_server_lockVehicle',2];"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\pad_can_unlock.paa"; tooltip = "Unlock"; }; //Trader interaction class tra_talk { condition = "dyna_isTrader"; action = "dyna_cursorTarget call EPOCH_startInteractNPC;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\talk_blue.paa"; tooltip = "Talk"; }; class tra_shop { condition = "dyna_isTrader"; action = "call EPOCH_startNPCTraderMenu;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\krypto.paa"; tooltip = "Shop"; }; class player_takeCrypto { condition = "dyna_isDeadPlayer || (dyna_cursorTarget getVariable [""Crypto"",0]) > 0"; action = "dyna_cursorTarget call EPOCH_takeCrypto;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\krypto.paa"; tooltip = "Take Krypto"; }; class player_trade { condition = "dyna_isPlayer"; action = "[dyna_cursorTarget, player, Epoch_personalToken] call EPOCH_startTRADEREQ;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\krypto.paa"; tooltip = "Make Trade Request"; }; class player_trade_accept { condition = "dyna_isPlayer && dyna_canAcceptTrade"; action = "EPOCH_p2ptradeTarget = EPOCH_pendingP2ptradeTarget;call EPOCH_startTrade;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\krypto.paa"; tooltip = "Accept Trade Request"; }; //User action replacement class maintain_jammer { condition = "dyna_cursorTargetType isEqualTo 'PlotPole_EPOCH' && (damage dyna_cursorTarget < 1)"; action = "dyna_cursorTarget call EPOCH_maintainIT;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_maintain.paa"; tooltip = "Maintain"; }; class select_jammer { condition = "dyna_cursorTargetType isEqualTo 'PlotPole_EPOCH' && (damage dyna_cursorTarget < 1)"; action = "[dyna_cursorTarget,player,Epoch_personalToken] remoteExec [""EPOCH_server_makeSP"",2];"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\spawnpoint.paa"; tooltip = "Make Spawnpoint"; }; //lock unlock class unlock_lockbox { condition = "(dyna_cursorTargetType in ['LockBox_EPOCH','LockBoxProxy_EPOCH']) && (dyna_cursorTarget getVariable ['EPOCH_Locked',false])"; action = "dyna_cursorTarget call Epoch_secureStorageHandler"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\pad_can_unlock.paa"; tooltip = "Unlock Lockbox"; }; class lock_lockbox { condition = "(dyna_cursorTargetType in ['LockBox_EPOCH','LockBoxProxy_EPOCH']) && !(dyna_cursorTarget getVariable ['EPOCH_Locked',false])"; action = "dyna_cursorTarget call Epoch_secureStorageHandler"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\pad_cannot_lock.paa"; tooltip = "Lock Lockbox"; }; class unlock_safe { condition = "(dyna_cursorTargetType in ['Safe_EPOCH','SafeProxy_EPOCH']) && (dyna_cursorTarget getVariable ['EPOCH_Locked',false])"; action = "dyna_cursorTarget call Epoch_secureStorageHandler"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\pad_can_unlock.paa"; tooltip = "Unlock Safe"; }; class lock_safe { condition = "(dyna_cursorTargetType in ['Safe_EPOCH','SafeProxy_EPOCH']) && !(dyna_cursorTarget getVariable ['EPOCH_Locked',false])"; action = "dyna_cursorTarget call Epoch_secureStorageHandler"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\pad_cannot_lock.paa"; tooltip = "Lock Safe"; }; //pack class pack_lockbox { condition = "(dyna_cursorTargetType in ['LockBox_EPOCH','LockBoxProxy_EPOCH']) && (dyna_cursorTarget getVariable ['EPOCH_Locked',false])"; action = "[dyna_cursorTarget,player,Epoch_personalToken] remoteExec ['EPOCH_server_packStorage',2];"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_pack.paa"; tooltip = "Pack Lockbox"; }; class pack_safe { condition = "(dyna_cursorTargetType in ['Safe_EPOCH','SafeProxy_EPOCH']) && (dyna_cursorTarget getVariable ['EPOCH_Locked',false])"; action = "[dyna_cursorTarget,player,Epoch_personalToken] remoteExec ['EPOCH_server_packStorage',2];"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_pack.paa"; tooltip = "Pack Safe"; }; class VehMaintanance { condition = "dyna_isVehicle && !EPOCH_Vehicle_MaintainLock"; action = "dyna_cursorTarget call EPOCH_client_VehicleMaintananceCheck;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_man.paa"; tooltip = "Vehicle Maintanance"; class Repair { condition = "(!((EPOCH_VehicleRepairs select 0) isequalto []) || !((EPOCH_VehicleRepairs select 2) isequalto [])) && EPOCH_AdvancedVehicleRepair_Enabled"; action = ""; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair Vehicle"; class RepairHull { condition = "'hithull' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hithull'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_HullBody.paa"; tooltip = "Repair Hull"; }; class ReplaceHull { condition = "'hithull' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hithull'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_HullBody.paa"; tooltip = "Repair Hull"; }; class RepairEngine { condition = "'hitengine' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitengine'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Engine.paa"; tooltip = "Repair Engine"; }; class ReplaceEngine { condition = "'hitengine' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitengine'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Engine.paa"; tooltip = "Replace Engine"; }; class ReplaceGlass { condition = "'glass' in (EPOCH_VehicleRepairs select 0) || 'glass' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','glass'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Glass.paa"; tooltip = "Replace Glass"; }; class RepairBody { condition = "'hitbody' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitbody'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_HullBody.paa"; tooltip = "Repair Body"; }; class ReplaceBody { condition = "'hitbody' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitbody'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_HullBody.paa"; tooltip = "Repair Body"; }; class RepairFuel { condition = "'hitfuel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitfuel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Fuel.paa"; tooltip = "Repair Fuel Hose"; }; class RepairMainRotor { condition = "'hithrotor' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hithrotor'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_MainRotor.paa"; tooltip = "Repair Main Rotor"; }; class ReplaceFuel { condition = "'hitfuel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitfuel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Fuel.paa"; tooltip = "Replace Fuel Hose"; }; class ReplaceMainRotor { condition = "'hithrotor' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hithrotor'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_MainRotor.paa"; tooltip = "Replace Main Rotor"; }; class RepairTailRotor { condition = "'hitvrotor' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitvrotor'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_TailRotor.paa"; tooltip = "Repair Tail Rotor"; }; class ReplaceTailRotor { condition = "'hitvrotor' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitvrotor'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_TailRotor.paa"; tooltip = "Replace Tail Rotor"; }; class ReplaceWinch { condition = "'hitwinch' in (EPOCH_VehicleRepairs select 0) || 'hitwinch' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitwinch'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_SLG.paa"; tooltip = "Replace Winch"; }; class RepairTireBike1 { condition = "'hitfwheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitfwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 1st Wheel"; }; class RepairTireBike2 { condition = "'hitbwheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitbwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 2nd Wheel"; }; class RepairTire1 { condition = "'hitlfwheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitlfwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 1st Left Wheel"; }; class RepairTire2 { condition = "'hitlf2wheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitlf2wheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 2nd Left Wheel"; }; class RepairTire3 { condition = "'hitlmwheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitlmwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 3rd Left Wheel"; }; class RepairTire4 { condition = "'hitlbwheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitlbwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 4th Left Wheel"; }; class RepairTire5 { condition = "'hitrfwheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitrfwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 1st Right Wheel"; }; class RepairTire6 { condition = "'hitrf2wheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitrf2wheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 2nd Right Wheel"; }; class RepairTire7 { condition = "'hitrmwheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitrmwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 3rd Right Wheel"; }; class RepairTire8 { condition = "'hitrbwheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitrbwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 4th Right Wheel"; }; class ReplaceTireBike1 { condition = "'hitfwheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitfwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 1st Wheel"; }; class ReplaceTireBike2 { condition = "'hitbwheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitbwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 2nd Wheel"; }; class ReplaceTire1 { condition = "'hitlfwheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitlfwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 1st Left Wheel"; }; class ReplaceTire2 { condition = "'hitlf2wheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitlf2wheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 2nd Left Wheel"; }; class ReplaceTire3 { condition = "'hitlmwheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitlmwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 3rd Left Wheel"; }; class ReplaceTire4 { condition = "'hitlbwheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitlbwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 4th Left Wheel"; }; class ReplaceTire5 { condition = "'hitrfwheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitrfwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 1st Right Wheel"; }; class ReplaceTire6 { condition = "'hitrf2wheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitrf2wheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 2nd Right Wheel"; }; class ReplaceTire7 { condition = "'hitrmwheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitrmwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 3rd Right Wheel"; }; class ReplaceTire8 { condition = "'hitrbwheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitrbwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 4th Right Wheel"; }; class RepairAvionics { condition = "'hitavionics' in (EPOCH_VehicleRepairs select 0) || 'hitavionics' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitavionics'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Avionics.paa"; tooltip = "Repair Avionics"; }; }; class Remove { condition = "!((EPOCH_VehicleRepairs select 1) isequalto []) && EPOCH_AdvancedVehicleRepair_Enabled"; action = ""; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Wheel.paa"; tooltip = "Remove Parts"; class RemoveEngine { condition = "'hitengine' in (EPOCH_VehicleRepairs select 1)"; action = "[dyna_cursorTarget,'remove','hitengine'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Engine.paa"; tooltip = "Remove Engine"; }; class RemoveTire1 { condition = "'hitlfwheel' in (EPOCH_VehicleRepairs select 1)"; action = "[dyna_cursorTarget,'remove','hitlfwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Wheel.paa"; tooltip = "Remove 1st Left Wheel"; }; class RemoveTire2 { condition = "'hitlf2wheel' in (EPOCH_VehicleRepairs select 1)"; action = "[dyna_cursorTarget,'remove','hitlf2wheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Wheel.paa"; tooltip = "Remove 2nd Left Wheel"; }; class RemoveTire3 { condition = "'hitlmwheel' in (EPOCH_VehicleRepairs select 1)"; action = "[dyna_cursorTarget,'remove','hitlmwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Wheel.paa"; tooltip = "Remove 3rd Left Wheel"; }; class RemoveTire4 { condition = "'hitlbwheel' in (EPOCH_VehicleRepairs select 1)"; action = "[dyna_cursorTarget,'remove','hitlbwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Wheel.paa"; tooltip = "Remove 4th Left Wheel"; }; class RemoveTire5 { condition = "'hitrfwheel' in (EPOCH_VehicleRepairs select 1)"; action = "[dyna_cursorTarget,'remove','hitrfwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Wheel.paa"; tooltip = "Remove 1st Right Wheel"; }; class RemoveTire6 { condition = "'hitrf2wheel' in (EPOCH_VehicleRepairs select 1)"; action = "[dyna_cursorTarget,'remove','hitrf2wheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Wheel.paa"; tooltip = "Remove 2nd Right Wheel"; }; class RemoveTire7 { condition = "'hitrmwheel' in (EPOCH_VehicleRepairs select 1)"; action = "[dyna_cursorTarget,'remove','hitrmwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Wheel.paa"; tooltip = "Remove 3rd Right Wheel"; }; class RemoveTire8 { condition = "'hitrbwheel' in (EPOCH_VehicleRepairs select 1)"; action = "[dyna_cursorTarget,'remove','hitrbwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Wheel.paa"; tooltip = "Remove 4th Right Wheel"; }; }; class UpgradeVehicle { condition = "dyna_isVehicle"; action = "dyna_cursorTarget call EPOCH_client_upgradeVehicleCheck;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_upgrade.paa"; tooltip = "Upgrade Vehicle"; class Upgrade0 { condition = "(count Ignatz_VehicleUpgradeArray) > 0"; action = "(Ignatz_VehicleUpgradeArray select 0) call EPOCH_client_upgradeVehicle"; iconcode = "gettext (configfile >> 'CfgVehicles' >> (Ignatz_VehicleUpgradeArray select 0 select 1) >> 'picture')"; tooltipcode = "format ['Upgrade to %1 - %2',(Ignatz_VehicleUpgradeArray select 0 select 2),(Ignatz_VehicleUpgradeArray select 0 select 3)]"; }; class Upgrade1 { condition = "(count Ignatz_VehicleUpgradeArray) > 1"; action = "(Ignatz_VehicleUpgradeArray select 1) call EPOCH_client_upgradeVehicle"; iconcode = "gettext (configfile >> 'CfgVehicles' >> (Ignatz_VehicleUpgradeArray select 1 select 1) >> 'picture')"; tooltipcode = "format ['Upgrade to %1 - %2',(Ignatz_VehicleUpgradeArray select 1 select 2),(Ignatz_VehicleUpgradeArray select 1 select 3)]"; }; class Upgrade2 { condition = "(count Ignatz_VehicleUpgradeArray) > 2"; action = "(Ignatz_VehicleUpgradeArray select 2) call EPOCH_client_upgradeVehicle"; iconcode = "gettext (configfile >> 'CfgVehicles' >> (Ignatz_VehicleUpgradeArray select 2 select 1) >> 'picture')"; tooltipcode = "format ['Upgrade to %1 - %2',(Ignatz_VehicleUpgradeArray select 2 select 2),(Ignatz_VehicleUpgradeArray select 2 select 3)]"; }; class Upgrade3 { condition = "(count Ignatz_VehicleUpgradeArray) > 3"; action = "(Ignatz_VehicleUpgradeArray select 3) call EPOCH_client_upgradeVehicle"; iconcode = "gettext (configfile >> 'CfgVehicles' >> (Ignatz_VehicleUpgradeArray select 3 select 1) >> 'picture')"; tooltipcode = "format ['Upgrade to %1 - %2',(Ignatz_VehicleUpgradeArray select 3 select 2),(Ignatz_VehicleUpgradeArray select 3 select 3)]"; }; class Upgrade4 { condition = "(count Ignatz_VehicleUpgradeArray) > 4"; action = "(Ignatz_VehicleUpgradeArray select 4) call EPOCH_client_upgradeVehicle"; iconcode = "gettext (configfile >> 'CfgVehicles' >> (Ignatz_VehicleUpgradeArray select 4 select 1) >> 'picture')"; tooltipcode = "format ['Upgrade to %1 - %2',(Ignatz_VehicleUpgradeArray select 4 select 2),(Ignatz_VehicleUpgradeArray select 4 select 3)]"; }; }; }; //Groups class Groups { condition = "dyna_isPlayer"; action = ""; icon = "x\addons\a3_epoch_code\Data\UI\buttons\group_menu_ca.paa"; tooltip = "Groups Menu"; class Group { condition = "dyna_isPlayer"; action = "call EPOCH_Inventory_Group;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\perm_group_menu_ca.paa"; tooltip = "Perm Group Menu"; }; class TempGroup { condition = "dyna_isPlayer"; action = "call EPOCH_Inventory_TempGroup;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\temp_group_menu_ca.paa"; tooltip = "Temp Group Menu"; }; }; class player_group_requests { condition = "dyna_isPlayer && !(Epoch_invited_GroupUIDs isEqualTo[])"; action = "call EPOCH_Inventory_iGroup;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\group_requests_ca.paa"; tooltip = "Group Requests"; }; class player_tempGroup_requests { condition = "dyna_isPlayer && !(Epoch_invited_tempGroupUIDs isEqualTo[])"; action = "call EPOCH_Inventory_itempGroup;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\group_requests_ca.paa"; tooltip = "Temp Group Requests"; }; // Working defibrillator class player_revive { condition = "dyna_isDeadPlayer && isplayer dyna_cursorTarget"; action = "dyna_cursorTarget call EPOCH_DefibrillatorUse;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Revive.paa"; tooltipcode = "format ['Revive %1',name dyna_cursorTarget]"; }; class BaseCam { condition = "dyna_cursorTargetType isEqualTo 'BaseCamTerminal_EPOCH'"; action = "call Epoch_CamUse;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Camera.paa"; tooltip = "Watch BaseCam"; }; class Deploy_pack { condition = "(dyna_cursorTarget iskindof 'MBK_01_EPOCH') && ((crew dyna_cursorTarget) isEqualTo [])"; action = "Deploy_PackVehicle = [player,dyna_cursorTarget]; publicVariableServer 'Deploy_PackVehicle';"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\repair.paa"; tooltip = "Pack Vehicle"; }; im using infastar dont know if that would stop it ? Link to comment Share on other sites More sharing options...
Schalldampfer Posted July 31, 2018 Author Report Share Posted July 31, 2018 40 minutes ago, megaz said: I Added that see below: CfgActionMenu_self Hide contents /* Author: Raimonds Virtoss - EpochMod.com Contributors: Aaron Clark Description: Action Menu Self Config Licence: Arma Public License Share Alike (APL-SA) - https://www.bistudio.com/community/licenses/arma-public-license-share-alike Github: https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_config/Configs/CfgActionMenu/CfgActionMenu_self.hpp */ class veh_lock { condition = "if (vehicle player iskindof 'Bicycle') exitwith {false};dyna_inVehicle && !dyna_lockedInVehicle"; action = "[vehicle player, true, player, Epoch_personalToken] remoteExec ['EPOCH_server_lockVehicle',2];"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\pad_cannot_lock.paa"; tooltip = "Lock"; }; class veh_unLock { condition = "dyna_inVehicle && dyna_lockedInVehicle"; action = "[vehicle player, false, player, Epoch_personalToken] remoteExec ['EPOCH_server_lockVehicle',2];"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\pad_can_unlock.paa"; tooltip = "Unlock"; }; class player_inspect { condition = "!dyna_inVehicle"; action = "if !(underwater player) then {call EPOCH_lootTrash}else {if !(((nearestobjects [player,['container_epoch','weaponholdersimulated','GroundWeaponHolder'],5]) select {(_x getvariable ['EPOCH_Loot',false]) || (_x iskindof 'container_epoch' && _x animationPhase 'open_lid' > 0.5)}) isequalto []) then {call EPOCH_QuickTakeLoad} else {call EPOCH_lootTrash}};"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\player_inspect.paa"; tooltip = "Examine"; }; class Groups { condition = "true"; action = ""; icon = "x\addons\a3_epoch_code\Data\UI\buttons\group_menu_ca.paa"; tooltip = "Groups Menu"; class Group { condition = "true"; action = "call EPOCH_Inventory_Group;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\perm_group_menu_ca.paa"; tooltip = "Perm Group Menu"; }; class TempGroup { condition = "true"; action = "call EPOCH_Inventory_TempGroup;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\temp_group_menu_ca.paa"; tooltip = "Temp Group Menu"; }; }; class player_group_requests { condition = "!(Epoch_invited_GroupUIDs isEqualTo[])"; action = "call EPOCH_Inventory_iGroup;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\group_requests_ca.paa"; tooltip = "Group Requests"; }; class player_tempGroup_requests { condition = "!(Epoch_invited_tempGroupUIDs isEqualTo[])"; action = "call EPOCH_Inventory_itempGroup;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\group_requests_ca.paa"; tooltip = "Temp Group Requests"; }; class base_mode_enable { condition = "EPOCH_buildMode in [0,2] && !dyna_inVehicle"; action = "if (EPOCH_playerEnergy > 0) then {EPOCH_stabilityTarget = objNull;EPOCH_buildMode = 1;['Build Mode: Enabled Snap alignment', 5] call Epoch_message;EPOCH_buildDirection = 0} else {['Need Energy!', 5] call Epoch_message};"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_maintain.paa"; tooltip = "Build Mode: Snap alignment"; }; class base_mode_enable_free { condition = "EPOCH_buildMode == 1 && EPOCH_playerEnergy > 0"; action = "EPOCH_stabilityTarget = objNull;EPOCH_buildMode = 2;['Build Mode: Enabled Free alignment', 5] call Epoch_message;EPOCH_buildDirection = 0;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_maintain.paa"; tooltip = "Build Mode: Free alignment"; }; class base_mode_disable { condition = "EPOCH_buildMode > 0"; action = "EPOCH_buildMode = 0;EPOCH_snapDirection = 0;['Build Mode: Disabled', 5] call Epoch_message;EPOCH_Target = objNull;EPOCH_Z_OFFSET = 0;EPOCH_X_OFFSET = 0;EPOCH_Y_OFFSET = 5;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_remove.paa"; tooltip = "Build Mode: Disable"; }; class base_mode_snap_direction { condition = "EPOCH_buildMode == 1"; action = "EPOCH_snapDirection = EPOCH_snapDirection + 1; if (EPOCH_snapDirection > 3) then {EPOCH_snapDirection = 0};[format['SNAP DIRECTION: %1°', EPOCH_snapDirection*90], 5] call Epoch_message;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_rotate.paa"; tooltip = "Build Mode: Rotate 90°"; tooltipcode = "format ['Build Mode: Switch Snap Direction to %1° (current %2°)',if (EPOCH_snapDirection < 3) then {(EPOCH_snapDirection+1)*90} else {0},EPOCH_snapDirection*90]"; }; class base_mode_detach { condition = "EPOCH_buildMode > 0 && !isnull EPOCH_target && EPOCH_target_attachedTo isequalto player && Epoch_target iskindof 'Const_Ghost_EPOCH'"; action = "EPOCH_target_attachedTo = objnull; ['Object Detached', 5] call Epoch_message;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_detach.paa"; tooltip = "Build Mode: Detach Object"; }; class base_mode_attach { condition = "EPOCH_buildMode > 0 && !isnull EPOCH_target && !(EPOCH_target_attachedTo isequalto player) && Epoch_target iskindof 'Const_Ghost_EPOCH'"; action = "EPOCH_target_attachedTo = player; ['Object Attached', 5] call Epoch_message;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_attach.paa"; tooltip = "Build Mode: Attach Object"; }; class Drink { condition = "dyna_Watersource"; action = "if (currentweapon player == '') then {player playmove 'AinvPknlMstpSnonWnonDnon_Putdown_AmovPknlMstpSnonWnonDnon';}else {if (currentweapon player == handgunweapon player) then {player playmove 'AinvPknlMstpSrasWpstDnon_Putdown_AmovPknlMstpSrasWpstDnon';}else { player playmove 'AinvPknlMstpSrasWrflDnon_Putdown_AmovPknlMstpSrasWrflDnon';};};{_output = _x call EPOCH_giveAttributes;if (_output != '') then {[_output, 5] call Epoch_message_stack;};} foreach [['Thirst',100],['Toxicity',1,1],['Stamina',10]];"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Drink.paa"; tooltip = "Drink"; }; class Wash { condition = "dyna_Watersource"; action = "if !('Soap_Epoch' in magazines player) exitwith {['You need a Soap to wash yourself',5] call Epoch_Message;};[] spawn {player playMove 'AinvPknlMstpSnonWrflDnon_medic0';player playMove 'AinvPknlMstpSnonWrflDnon_medicEnd';['Washing ...',5] call Epoch_Message;player removeitem 'Soap_Epoch';uisleep 6;{_output = _x call EPOCH_giveAttributes; if (_output != '') then {[_output, 5] call Epoch_message_stack;};} foreach [['Soiled',-25]];};"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Washing.paa"; tooltip = "Wash yourself"; }; class ServicePoint { condition = "call EPOCH_SP_Check"; action = "[dyna_Turret] call EPOCH_SP_Start;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_man.paa"; tooltip = "Service Point"; class Refuel { condition = "!isnil 'Ignatz_Refuel'"; action = "(Ignatz_Refuel select 1) spawn EPOCH_SP_Refuel"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\vehicle_refuel.paa"; tooltipcode = "Ignatz_Refuel select 0"; }; class Repair { condition = "!isnil 'Ignatz_Repair'"; action = "(Ignatz_Repair select 1) spawn EPOCH_SP_Repair"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\repair.paa"; tooltipcode = "Ignatz_Repair select 0"; }; class Rearm0 { condition = "!isnil 'Ignatz_Rearm0'"; action = "(Ignatz_Rearm0 select 1) call EPOCH_SP_Rearm"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Rearm.paa"; tooltipcode = "Ignatz_Rearm0 select 0"; }; class Rearm1 { condition = "!isnil 'Ignatz_Rearm1'"; action = "(Ignatz_Rearm1 select 1) call EPOCH_SP_Rearm"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Rearm.paa"; tooltipcode = "Ignatz_Rearm1 select 0"; }; class Rearm2 { condition = "!isnil 'Ignatz_Rearm2'"; action = "(Ignatz_Rearm2 select 1) call EPOCH_SP_Rearm"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Rearm.paa"; tooltipcode = "Ignatz_Rearm2 select 0"; }; }; class veh_Rearm1 { condition = "if (count dyna_weaponsTurret > 0) then {!((dyna_weaponsTurret select 0) in dyna_blockWeapons)}else{false}"; action = "[vehicle player, dyna_weaponsTurret select 0, dyna_Turret] call EPOCH_vehicle_checkTurretAmmo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Rearm.paa"; tooltipcode = "format['Add Mag to %1',getText(configFile >> 'CfgWeapons' >> dyna_weaponsTurret select 0 >> 'displayName')]"; }; class veh_Rearm2 { condition = "if (count dyna_weaponsTurret > 1) then {!((dyna_weaponsTurret select 1) in dyna_blockWeapons)}else{false}"; action = "[vehicle player,dyna_weaponsTurret select 1, dyna_Turret] call EPOCH_vehicle_checkTurretAmmo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Rearm.paa"; tooltipcode = "format['Add Mag to %1',getText(configFile >> 'CfgWeapons' >> dyna_weaponsTurret select 1 >> 'displayName')]"; }; class veh_Rearm3 { condition = "if (count dyna_weaponsTurret > 2) then {!((dyna_weaponsTurret select 2) in dyna_blockWeapons)}else{false}"; action = "[vehicle player,dyna_weaponsTurret select 2, dyna_Turret] call EPOCH_vehicle_checkTurretAmmo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Rearm.paa"; tooltipcode = "format['Add Mag to %1',getText(configFile >> 'CfgWeapons' >> dyna_weaponsTurret select 2 >> 'displayName')]"; }; class veh_Rearm4 { condition = "if (count dyna_weaponsTurret > 3) then {!((dyna_weaponsTurret select 3) in dyna_blockWeapons)}else{false}"; action = "[vehicle player,dyna_weaponsTurret select 3, dyna_Turret] call EPOCH_vehicle_checkTurretAmmo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Rearm.paa"; tooltipcode = "format['Add Mag to %1',getText(configFile >> 'CfgWeapons' >> dyna_weaponsTurret select 3 >> 'displayName')]"; }; class veh_RemoveAmmo1 { condition = "if (count dyna_WeapsMagsTurret > 0) then {!((dyna_WeapsMagsTurret select 0 select 0) in dyna_blockWeapons)}else{false}"; action = "[vehicle player,dyna_WeapsMagsTurret select 0 select 0,dyna_WeapsMagsTurret select 0 select 1, dyna_Turret] call EPOCH_vehicle_removeTurretAmmo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\RemoveMag.paa"; tooltipcode = "format['Remove %1 from %2',getText(configFile >> 'CfgMagazines' >> (dyna_WeapsMagsTurret select 0 select 1) >> 'displayName'),getText(configFile >> 'CfgWeapons' >> (dyna_WeapsMagsTurret select 0 select 0) >> 'displayName')]"; }; class veh_RemoveAmmo2 { condition = "if (count dyna_WeapsMagsTurret > 1) then {!((dyna_WeapsMagsTurret select 1 select 0) in dyna_blockWeapons)}else{false}"; action = "[vehicle player,dyna_WeapsMagsTurret select 1 select 0,dyna_WeapsMagsTurret select 1 select 1, dyna_Turret] call EPOCH_vehicle_removeTurretAmmo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\RemoveMag.paa"; tooltipcode = "format['Remove %1 from %2',getText(configFile >> 'CfgMagazines' >> (dyna_WeapsMagsTurret select 1 select 1) >> 'displayName'),getText(configFile >> 'CfgWeapons' >> (dyna_WeapsMagsTurret select 1 select 0) >> 'displayName')]"; }; class veh_RemoveAmmo3 { condition = "if (count dyna_WeapsMagsTurret > 2) then {!((dyna_WeapsMagsTurret select 2 select 0) in dyna_blockWeapons)}else{false}"; action = "[vehicle player,dyna_WeapsMagsTurret select 2 select 0,dyna_WeapsMagsTurret select 2 select 1, dyna_Turret] call EPOCH_vehicle_removeTurretAmmo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\RemoveMag.paa"; tooltipcode = "format['Remove %1 from %2',getText(configFile >> 'CfgMagazines' >> (dyna_WeapsMagsTurret select 2 select 1) >> 'displayName'),getText(configFile >> 'CfgWeapons' >> (dyna_WeapsMagsTurret select 2 select 0) >> 'displayName')]"; }; class veh_RemoveAmmo4 { condition = "if (count dyna_WeapsMagsTurret > 3) then {!((dyna_WeapsMagsTurret select 3 select 0) in dyna_blockWeapons)}else{false}"; action = "[vehicle player,dyna_WeapsMagsTurret select 3 select 0,dyna_WeapsMagsTurret select 3 select 1, dyna_Turret] call EPOCH_vehicle_removeTurretAmmo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\RemoveMag.paa"; tooltipcode = "format['Remove %1 from %2',getText(configFile >> 'CfgMagazines' >> (dyna_WeapsMagsTurret select 3 select 1) >> 'displayName'),getText(configFile >> 'CfgWeapons' >> (dyna_WeapsMagsTurret select 3 select 0) >> 'displayName')]"; }; class geiger_menu { condition = "'ItemGeigerCounter_EPOCH' in dyna_assigneditems"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\geiger_radiation.paa"; tooltip = "Geiger counter settings"; class geiger_toggle { condition = "true"; action = "call epoch_geiger_show_hide"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\geiger_toggle.paa"; tooltip = "Toggle HUD"; }; class geiger_counter_mute { condition = "!EPOCH_geiger_mute_counter"; action = "EPOCH_geiger_mute_counter = !EPOCH_geiger_mute_counter"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\geiger_volumeoff.paa"; tooltip = "Mute counter"; }; class geiger_counter_unmute { condition = "EPOCH_geiger_mute_counter"; action = "EPOCH_geiger_mute_counter = !EPOCH_geiger_mute_counter"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\geiger_volumeon.paa"; tooltip = "Unmute counter"; }; class geiger_warning_mute { condition = "!EPOCH_geiger_mute_warning"; action = "EPOCH_geiger_mute_warning = !EPOCH_geiger_mute_warning"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\geiger_alarmoff.paa"; tooltip = "Mute warnings"; }; class geiger_warning_unmute { condition = "EPOCH_geiger_mute_warning"; action = "EPOCH_geiger_mute_warning = !EPOCH_geiger_mute_warning"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\geiger_alarmon.paa"; tooltip = "Unmute warnings"; }; class Deploy_deploy { condition = "!dyna_inVehicle"; action = "Deploy_SpawnVehicle = [player,'MBK_01_EPOCH']; publicVariableServer 'Deploy_SpawnVehicle';"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\repair.paa"; tooltip = "Deploy Bike"; }; }; and CfgActionMenu_target Reveal hidden contents /* Author: Raimonds Virtoss - EpochMod.com Contributors: Aaron Clark Description: Action Menu Target Config Licence: Arma Public License Share Alike (APL-SA) - https://www.bistudio.com/community/licenses/arma-public-license-share-alike Github: https://github.com/EpochModTeam/Epoch/tree/release/Sources/epoch_config/Configs/CfgActionMenu/CfgActionMenu_target.hpp */ class build_upgrade { condition = "dyna_buildMode select 0"; //action = "dyna_cursorTarget call EPOCH_QuickUpgrade;"; //TODO: scripted dyna menu action = ""; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_upgrade.paa"; tooltipcode = "format['Upgrade %1',getText(configFile >> 'CfgVehicles' >> (typeof dyna_cursorTarget) >> 'displayName')]"; class special {}; //uses external config, hardcoded }; class build_remove { condition = "dyna_buildMode select 1"; action = "dyna_cursorTarget call EPOCH_removeBUILD;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_trash.paa"; tooltipcode = "format['Remove %1',getText(configFile >> 'CfgVehicles' >> (typeof dyna_cursorTarget) >> 'displayName')]"; }; class build_move { condition = "dyna_buildMode select 2"; action = "dyna_cursorTarget call EPOCH_fnc_SelectTargetBuild;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_move.paa"; tooltipcode = "format['Move %1',getText(configFile >> 'CfgVehicles' >> (typeof dyna_cursorTarget) >> 'displayName')]"; }; //Vehicle interaction class veh_gear { condition = "dyna_isVehicle && !dyna_locked"; action = "call Epoch_client_gearVehicle;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\player_inspect.paa"; tooltip = "Inspect"; }; class veh_lock { condition = "if (dyna_cursorTarget iskindof 'Bicycle') exitwith {false};dyna_isVehicle && !dyna_locked"; action = "[dyna_cursorTarget, true, player, Epoch_personalToken] remoteExec ['EPOCH_server_lockVehicle',2];"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\pad_cannot_lock.paa"; tooltip = "Lock"; }; class veh_unLock { condition = "dyna_isVehicle && dyna_locked"; action = "[dyna_cursorTarget, false, player, Epoch_personalToken] remoteExec ['EPOCH_server_lockVehicle',2];"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\pad_can_unlock.paa"; tooltip = "Unlock"; }; //Trader interaction class tra_talk { condition = "dyna_isTrader"; action = "dyna_cursorTarget call EPOCH_startInteractNPC;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\talk_blue.paa"; tooltip = "Talk"; }; class tra_shop { condition = "dyna_isTrader"; action = "call EPOCH_startNPCTraderMenu;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\krypto.paa"; tooltip = "Shop"; }; class player_takeCrypto { condition = "dyna_isDeadPlayer || (dyna_cursorTarget getVariable [""Crypto"",0]) > 0"; action = "dyna_cursorTarget call EPOCH_takeCrypto;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\krypto.paa"; tooltip = "Take Krypto"; }; class player_trade { condition = "dyna_isPlayer"; action = "[dyna_cursorTarget, player, Epoch_personalToken] call EPOCH_startTRADEREQ;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\krypto.paa"; tooltip = "Make Trade Request"; }; class player_trade_accept { condition = "dyna_isPlayer && dyna_canAcceptTrade"; action = "EPOCH_p2ptradeTarget = EPOCH_pendingP2ptradeTarget;call EPOCH_startTrade;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\krypto.paa"; tooltip = "Accept Trade Request"; }; //User action replacement class maintain_jammer { condition = "dyna_cursorTargetType isEqualTo 'PlotPole_EPOCH' && (damage dyna_cursorTarget < 1)"; action = "dyna_cursorTarget call EPOCH_maintainIT;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_maintain.paa"; tooltip = "Maintain"; }; class select_jammer { condition = "dyna_cursorTargetType isEqualTo 'PlotPole_EPOCH' && (damage dyna_cursorTarget < 1)"; action = "[dyna_cursorTarget,player,Epoch_personalToken] remoteExec [""EPOCH_server_makeSP"",2];"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\spawnpoint.paa"; tooltip = "Make Spawnpoint"; }; //lock unlock class unlock_lockbox { condition = "(dyna_cursorTargetType in ['LockBox_EPOCH','LockBoxProxy_EPOCH']) && (dyna_cursorTarget getVariable ['EPOCH_Locked',false])"; action = "dyna_cursorTarget call Epoch_secureStorageHandler"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\pad_can_unlock.paa"; tooltip = "Unlock Lockbox"; }; class lock_lockbox { condition = "(dyna_cursorTargetType in ['LockBox_EPOCH','LockBoxProxy_EPOCH']) && !(dyna_cursorTarget getVariable ['EPOCH_Locked',false])"; action = "dyna_cursorTarget call Epoch_secureStorageHandler"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\pad_cannot_lock.paa"; tooltip = "Lock Lockbox"; }; class unlock_safe { condition = "(dyna_cursorTargetType in ['Safe_EPOCH','SafeProxy_EPOCH']) && (dyna_cursorTarget getVariable ['EPOCH_Locked',false])"; action = "dyna_cursorTarget call Epoch_secureStorageHandler"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\pad_can_unlock.paa"; tooltip = "Unlock Safe"; }; class lock_safe { condition = "(dyna_cursorTargetType in ['Safe_EPOCH','SafeProxy_EPOCH']) && !(dyna_cursorTarget getVariable ['EPOCH_Locked',false])"; action = "dyna_cursorTarget call Epoch_secureStorageHandler"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\pad_cannot_lock.paa"; tooltip = "Lock Safe"; }; //pack class pack_lockbox { condition = "(dyna_cursorTargetType in ['LockBox_EPOCH','LockBoxProxy_EPOCH']) && (dyna_cursorTarget getVariable ['EPOCH_Locked',false])"; action = "[dyna_cursorTarget,player,Epoch_personalToken] remoteExec ['EPOCH_server_packStorage',2];"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_pack.paa"; tooltip = "Pack Lockbox"; }; class pack_safe { condition = "(dyna_cursorTargetType in ['Safe_EPOCH','SafeProxy_EPOCH']) && (dyna_cursorTarget getVariable ['EPOCH_Locked',false])"; action = "[dyna_cursorTarget,player,Epoch_personalToken] remoteExec ['EPOCH_server_packStorage',2];"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_pack.paa"; tooltip = "Pack Safe"; }; class VehMaintanance { condition = "dyna_isVehicle && !EPOCH_Vehicle_MaintainLock"; action = "dyna_cursorTarget call EPOCH_client_VehicleMaintananceCheck;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_man.paa"; tooltip = "Vehicle Maintanance"; class Repair { condition = "(!((EPOCH_VehicleRepairs select 0) isequalto []) || !((EPOCH_VehicleRepairs select 2) isequalto [])) && EPOCH_AdvancedVehicleRepair_Enabled"; action = ""; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair Vehicle"; class RepairHull { condition = "'hithull' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hithull'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_HullBody.paa"; tooltip = "Repair Hull"; }; class ReplaceHull { condition = "'hithull' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hithull'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_HullBody.paa"; tooltip = "Repair Hull"; }; class RepairEngine { condition = "'hitengine' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitengine'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Engine.paa"; tooltip = "Repair Engine"; }; class ReplaceEngine { condition = "'hitengine' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitengine'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Engine.paa"; tooltip = "Replace Engine"; }; class ReplaceGlass { condition = "'glass' in (EPOCH_VehicleRepairs select 0) || 'glass' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','glass'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Glass.paa"; tooltip = "Replace Glass"; }; class RepairBody { condition = "'hitbody' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitbody'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_HullBody.paa"; tooltip = "Repair Body"; }; class ReplaceBody { condition = "'hitbody' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitbody'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_HullBody.paa"; tooltip = "Repair Body"; }; class RepairFuel { condition = "'hitfuel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitfuel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Fuel.paa"; tooltip = "Repair Fuel Hose"; }; class RepairMainRotor { condition = "'hithrotor' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hithrotor'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_MainRotor.paa"; tooltip = "Repair Main Rotor"; }; class ReplaceFuel { condition = "'hitfuel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitfuel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Fuel.paa"; tooltip = "Replace Fuel Hose"; }; class ReplaceMainRotor { condition = "'hithrotor' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hithrotor'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_MainRotor.paa"; tooltip = "Replace Main Rotor"; }; class RepairTailRotor { condition = "'hitvrotor' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitvrotor'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_TailRotor.paa"; tooltip = "Repair Tail Rotor"; }; class ReplaceTailRotor { condition = "'hitvrotor' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitvrotor'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_TailRotor.paa"; tooltip = "Replace Tail Rotor"; }; class ReplaceWinch { condition = "'hitwinch' in (EPOCH_VehicleRepairs select 0) || 'hitwinch' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitwinch'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_SLG.paa"; tooltip = "Replace Winch"; }; class RepairTireBike1 { condition = "'hitfwheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitfwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 1st Wheel"; }; class RepairTireBike2 { condition = "'hitbwheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitbwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 2nd Wheel"; }; class RepairTire1 { condition = "'hitlfwheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitlfwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 1st Left Wheel"; }; class RepairTire2 { condition = "'hitlf2wheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitlf2wheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 2nd Left Wheel"; }; class RepairTire3 { condition = "'hitlmwheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitlmwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 3rd Left Wheel"; }; class RepairTire4 { condition = "'hitlbwheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitlbwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 4th Left Wheel"; }; class RepairTire5 { condition = "'hitrfwheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitrfwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 1st Right Wheel"; }; class RepairTire6 { condition = "'hitrf2wheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitrf2wheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 2nd Right Wheel"; }; class RepairTire7 { condition = "'hitrmwheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitrmwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 3rd Right Wheel"; }; class RepairTire8 { condition = "'hitrbwheel' in (EPOCH_VehicleRepairs select 0)"; action = "[dyna_cursorTarget,'repair','hitrbwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Wheel.paa"; tooltip = "Repair 4th Right Wheel"; }; class ReplaceTireBike1 { condition = "'hitfwheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitfwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 1st Wheel"; }; class ReplaceTireBike2 { condition = "'hitbwheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitbwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 2nd Wheel"; }; class ReplaceTire1 { condition = "'hitlfwheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitlfwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 1st Left Wheel"; }; class ReplaceTire2 { condition = "'hitlf2wheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitlf2wheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 2nd Left Wheel"; }; class ReplaceTire3 { condition = "'hitlmwheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitlmwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 3rd Left Wheel"; }; class ReplaceTire4 { condition = "'hitlbwheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitlbwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 4th Left Wheel"; }; class ReplaceTire5 { condition = "'hitrfwheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitrfwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 1st Right Wheel"; }; class ReplaceTire6 { condition = "'hitrf2wheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitrf2wheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 2nd Right Wheel"; }; class ReplaceTire7 { condition = "'hitrmwheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitrmwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 3rd Right Wheel"; }; class ReplaceTire8 { condition = "'hitrbwheel' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitrbwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Replace_Wheel.paa"; tooltip = "Replace 4th Right Wheel"; }; class RepairAvionics { condition = "'hitavionics' in (EPOCH_VehicleRepairs select 0) || 'hitavionics' in (EPOCH_VehicleRepairs select 2)"; action = "[dyna_cursorTarget,'replace','hitavionics'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Repair_Avionics.paa"; tooltip = "Repair Avionics"; }; }; class Remove { condition = "!((EPOCH_VehicleRepairs select 1) isequalto []) && EPOCH_AdvancedVehicleRepair_Enabled"; action = ""; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Wheel.paa"; tooltip = "Remove Parts"; class RemoveEngine { condition = "'hitengine' in (EPOCH_VehicleRepairs select 1)"; action = "[dyna_cursorTarget,'remove','hitengine'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Engine.paa"; tooltip = "Remove Engine"; }; class RemoveTire1 { condition = "'hitlfwheel' in (EPOCH_VehicleRepairs select 1)"; action = "[dyna_cursorTarget,'remove','hitlfwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Wheel.paa"; tooltip = "Remove 1st Left Wheel"; }; class RemoveTire2 { condition = "'hitlf2wheel' in (EPOCH_VehicleRepairs select 1)"; action = "[dyna_cursorTarget,'remove','hitlf2wheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Wheel.paa"; tooltip = "Remove 2nd Left Wheel"; }; class RemoveTire3 { condition = "'hitlmwheel' in (EPOCH_VehicleRepairs select 1)"; action = "[dyna_cursorTarget,'remove','hitlmwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Wheel.paa"; tooltip = "Remove 3rd Left Wheel"; }; class RemoveTire4 { condition = "'hitlbwheel' in (EPOCH_VehicleRepairs select 1)"; action = "[dyna_cursorTarget,'remove','hitlbwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Wheel.paa"; tooltip = "Remove 4th Left Wheel"; }; class RemoveTire5 { condition = "'hitrfwheel' in (EPOCH_VehicleRepairs select 1)"; action = "[dyna_cursorTarget,'remove','hitrfwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Wheel.paa"; tooltip = "Remove 1st Right Wheel"; }; class RemoveTire6 { condition = "'hitrf2wheel' in (EPOCH_VehicleRepairs select 1)"; action = "[dyna_cursorTarget,'remove','hitrf2wheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Wheel.paa"; tooltip = "Remove 2nd Right Wheel"; }; class RemoveTire7 { condition = "'hitrmwheel' in (EPOCH_VehicleRepairs select 1)"; action = "[dyna_cursorTarget,'remove','hitrmwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Wheel.paa"; tooltip = "Remove 3rd Right Wheel"; }; class RemoveTire8 { condition = "'hitrbwheel' in (EPOCH_VehicleRepairs select 1)"; action = "[dyna_cursorTarget,'remove','hitrbwheel'] spawn EPOCH_client_VehicleMaintananceDo"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Remove_Wheel.paa"; tooltip = "Remove 4th Right Wheel"; }; }; class UpgradeVehicle { condition = "dyna_isVehicle"; action = "dyna_cursorTarget call EPOCH_client_upgradeVehicleCheck;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\build_upgrade.paa"; tooltip = "Upgrade Vehicle"; class Upgrade0 { condition = "(count Ignatz_VehicleUpgradeArray) > 0"; action = "(Ignatz_VehicleUpgradeArray select 0) call EPOCH_client_upgradeVehicle"; iconcode = "gettext (configfile >> 'CfgVehicles' >> (Ignatz_VehicleUpgradeArray select 0 select 1) >> 'picture')"; tooltipcode = "format ['Upgrade to %1 - %2',(Ignatz_VehicleUpgradeArray select 0 select 2),(Ignatz_VehicleUpgradeArray select 0 select 3)]"; }; class Upgrade1 { condition = "(count Ignatz_VehicleUpgradeArray) > 1"; action = "(Ignatz_VehicleUpgradeArray select 1) call EPOCH_client_upgradeVehicle"; iconcode = "gettext (configfile >> 'CfgVehicles' >> (Ignatz_VehicleUpgradeArray select 1 select 1) >> 'picture')"; tooltipcode = "format ['Upgrade to %1 - %2',(Ignatz_VehicleUpgradeArray select 1 select 2),(Ignatz_VehicleUpgradeArray select 1 select 3)]"; }; class Upgrade2 { condition = "(count Ignatz_VehicleUpgradeArray) > 2"; action = "(Ignatz_VehicleUpgradeArray select 2) call EPOCH_client_upgradeVehicle"; iconcode = "gettext (configfile >> 'CfgVehicles' >> (Ignatz_VehicleUpgradeArray select 2 select 1) >> 'picture')"; tooltipcode = "format ['Upgrade to %1 - %2',(Ignatz_VehicleUpgradeArray select 2 select 2),(Ignatz_VehicleUpgradeArray select 2 select 3)]"; }; class Upgrade3 { condition = "(count Ignatz_VehicleUpgradeArray) > 3"; action = "(Ignatz_VehicleUpgradeArray select 3) call EPOCH_client_upgradeVehicle"; iconcode = "gettext (configfile >> 'CfgVehicles' >> (Ignatz_VehicleUpgradeArray select 3 select 1) >> 'picture')"; tooltipcode = "format ['Upgrade to %1 - %2',(Ignatz_VehicleUpgradeArray select 3 select 2),(Ignatz_VehicleUpgradeArray select 3 select 3)]"; }; class Upgrade4 { condition = "(count Ignatz_VehicleUpgradeArray) > 4"; action = "(Ignatz_VehicleUpgradeArray select 4) call EPOCH_client_upgradeVehicle"; iconcode = "gettext (configfile >> 'CfgVehicles' >> (Ignatz_VehicleUpgradeArray select 4 select 1) >> 'picture')"; tooltipcode = "format ['Upgrade to %1 - %2',(Ignatz_VehicleUpgradeArray select 4 select 2),(Ignatz_VehicleUpgradeArray select 4 select 3)]"; }; }; }; //Groups class Groups { condition = "dyna_isPlayer"; action = ""; icon = "x\addons\a3_epoch_code\Data\UI\buttons\group_menu_ca.paa"; tooltip = "Groups Menu"; class Group { condition = "dyna_isPlayer"; action = "call EPOCH_Inventory_Group;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\perm_group_menu_ca.paa"; tooltip = "Perm Group Menu"; }; class TempGroup { condition = "dyna_isPlayer"; action = "call EPOCH_Inventory_TempGroup;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\temp_group_menu_ca.paa"; tooltip = "Temp Group Menu"; }; }; class player_group_requests { condition = "dyna_isPlayer && !(Epoch_invited_GroupUIDs isEqualTo[])"; action = "call EPOCH_Inventory_iGroup;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\group_requests_ca.paa"; tooltip = "Group Requests"; }; class player_tempGroup_requests { condition = "dyna_isPlayer && !(Epoch_invited_tempGroupUIDs isEqualTo[])"; action = "call EPOCH_Inventory_itempGroup;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\group_requests_ca.paa"; tooltip = "Temp Group Requests"; }; // Working defibrillator class player_revive { condition = "dyna_isDeadPlayer && isplayer dyna_cursorTarget"; action = "dyna_cursorTarget call EPOCH_DefibrillatorUse;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Revive.paa"; tooltipcode = "format ['Revive %1',name dyna_cursorTarget]"; }; class BaseCam { condition = "dyna_cursorTargetType isEqualTo 'BaseCamTerminal_EPOCH'"; action = "call Epoch_CamUse;"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\Camera.paa"; tooltip = "Watch BaseCam"; }; class Deploy_pack { condition = "(dyna_cursorTarget iskindof 'MBK_01_EPOCH') && ((crew dyna_cursorTarget) isEqualTo [])"; action = "Deploy_PackVehicle = [player,dyna_cursorTarget]; publicVariableServer 'Deploy_PackVehicle';"; icon = "x\addons\a3_epoch_code\Data\UI\buttons\repair.paa"; tooltip = "Pack Vehicle"; }; im using infastar dont know if that would stop it ? why you included it in another codes? it must be out of the brackets. I said, it's at bottom. (In this case, you'll see the deploy command in the menu of something about radiation, which appear when you have ItemGeigerCounter_EPOCH.) megaz 1 Link to comment Share on other sites More sharing options...
megaz Posted July 31, 2018 Report Share Posted July 31, 2018 Thanks for looking at my file- Yeh didn't see that i put it in front of the last bracket - All working thanks thanks for the share MegaZ Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now