mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
1335 lines
41 KiB
C++
1335 lines
41 KiB
C++
class CfgPatches {
|
|
class AGM_Logistics {
|
|
units[] = {"AGM_JerryCan", "AGM_SpareTrack", "AGM_SpareWheel", "AGM_SandbagBarrier_Crate", "AGM_RazorWire_Crate"};
|
|
weapons[] = {"AGM_UAVBattery"};
|
|
requiredVersion = 0.60;
|
|
requiredAddons[] = {AGM_Core, AGM_Interaction};
|
|
version = "0.95";
|
|
versionStr = "0.95";
|
|
versionAr[] = {0,95,0};
|
|
author[] = {"commy2", "KoffeinFlummi", "Garth 'L-H' de Wet", "marc_book", "gpgpgpgp", "nic547"};
|
|
authorUrl = "https://github.com/commy2/";
|
|
};
|
|
};
|
|
|
|
/*
|
|
Drag, Logistics: by Garth 'L-H' de Wet
|
|
UAVs, Repair: by marc_book
|
|
Wirecutter: by gpgpgpgp
|
|
StaticWeapons, Resupply: by commy2
|
|
Something: by KoffeinFlummi
|
|
*/
|
|
|
|
class CfgFunctions {
|
|
class AGM_Logistics {
|
|
class AGM_Logistics {
|
|
file = "\AGM_Logistics\functions";
|
|
class canLoadItem;
|
|
class canLoadItemCarried;
|
|
class canLoadMagazine;
|
|
class hasLoadedItems;
|
|
class initLoadedObject;
|
|
class getLoadableMagazines;
|
|
class getLoadPoints;
|
|
class getPosLoadable;
|
|
class getWeaponsOfMagazine;
|
|
class loadItem;
|
|
class loadItemAbort;
|
|
class loadItemCallback;
|
|
class loadMagazine;
|
|
class loadMagazineCallback;
|
|
class loadMagazineRemote;
|
|
class openLoadUI;
|
|
class openMagazineMenu;
|
|
class openUnloadUI;
|
|
class remainingSpace;
|
|
class unloadItem;
|
|
class unloadItemCallback;
|
|
class spawnObject;
|
|
};
|
|
};
|
|
class AGM_Drag {
|
|
class AGM_Drag {
|
|
file="\AGM_Logistics\functions\Drag";
|
|
class initialise{postInit = 1;};
|
|
class makeDraggable;
|
|
class makeUndraggable;
|
|
class dragObject;
|
|
class releaseObject;
|
|
class isDraggingObject;
|
|
class handleScrollWheel;
|
|
class isDraggable;
|
|
class GetWeight;
|
|
class isCarryable;
|
|
class isCarryingObject;
|
|
class carryJerrycan;
|
|
class dropJerrycan;
|
|
};
|
|
};
|
|
class AGM_Repair {
|
|
class AGM_Repair {
|
|
file = "\AGM_Logistics\functions\Repair";
|
|
class canRemoveWheel;
|
|
class canRepair;
|
|
class canRepairTrack;
|
|
class canRepairWheel;
|
|
class checkVehicle;
|
|
class checkVehicleCallback;
|
|
class getHitPointName;
|
|
class getNearestRepairer;
|
|
class getNearestTrack;
|
|
class getNearestWheel;
|
|
class module;
|
|
class openSelectWheelUI;
|
|
class openSelectWheelUI_Salvage;
|
|
class removeWheel;
|
|
class removeWheelAbort;
|
|
class removeWheelCallback;
|
|
class repair;
|
|
class repairAbort;
|
|
class repairCallback;
|
|
class repairTrack;
|
|
class repairTrackAbort;
|
|
class repairTrackCallback;
|
|
class repairWheel;
|
|
class repairWheelAbort;
|
|
class repairWheelCallback;
|
|
class setDamage;
|
|
class setHitPointDamage;
|
|
};
|
|
};
|
|
class AGM_StaticWeapons {
|
|
class AGM_StaticWeapons {
|
|
file = "\AGM_Logistics\functions\StaticWeapons";
|
|
class canGetIn;
|
|
class canRotate;
|
|
class getIn;
|
|
class rotate;
|
|
};
|
|
};
|
|
class AGM_UAVs {
|
|
class AGM_UAVs {
|
|
file = "\AGM_Logistics\functions\UAVs";
|
|
class refuel;
|
|
class refuelCallback;
|
|
};
|
|
};
|
|
class AGM_Wirecutter {
|
|
class AGM_Wirecutter {
|
|
file = "\AGM_Logistics\functions\Wirecutter";
|
|
class cutDownFence;
|
|
class cutDownFenceAbort;
|
|
class cutDownFenceCallback;
|
|
};
|
|
};
|
|
class AGM_Resupply {
|
|
class AGM_Resupply {
|
|
file = "\AGM_Logistics\functions\Resupply";
|
|
class getFuelAmount;
|
|
class getFuelAmountCallback;
|
|
class getFuelAmountCargo;
|
|
class getFuelAmountCargoCallback;
|
|
class getFuelAmountJerrycan;
|
|
class getNearestRefueler;
|
|
class canDrainFuel;
|
|
class canDrainFuelCargo;
|
|
class canRefuel;
|
|
class canRefuelCargo;
|
|
class drainFuel;
|
|
class drainFuelCallback;
|
|
class drainFuelCargo;
|
|
class drainFuelCargoCallback;
|
|
class refuelVehicle;
|
|
class refuelVehicleCallback;
|
|
class refuelVehicleCargo;
|
|
class refuelVehicleCargoCallback;
|
|
};
|
|
};
|
|
class AGM_Paradrop {
|
|
class AGM_Paradrop {
|
|
file = "\AGM_Logistics\functions\Paradrop";
|
|
class paradrop;
|
|
};
|
|
};
|
|
class AGM_Fortifications {
|
|
class AGM_Fortifications {
|
|
file = "\AGM_Logistics\functions\Fortifications";
|
|
class initialise{postInit = 1;};
|
|
class canSetupBarrier;
|
|
class setupApprove;
|
|
class setupBarrier;
|
|
class setupCancel;
|
|
class openSelectBarrierlUI;
|
|
};
|
|
};
|
|
};
|
|
|
|
class Extended_PostInit_EventHandlers {
|
|
class AGM_Logistics {
|
|
serverInit = "call compile preprocessFileLineNumbers '\AGM_Logistics\serverInit.sqf'";
|
|
};
|
|
};
|
|
|
|
// Drop carried item if the unit enters a vehicle, dies or assembles or disassembels a weapon
|
|
class Extended_GetIn_EventHandlers {
|
|
class AllVehicles {
|
|
class AGM_DropItem {
|
|
clientGetIn = "if (player == _this select 2) then {(_this select 2) call AGM_Drag_fnc_releaseObject}";
|
|
};
|
|
};
|
|
};
|
|
class Extended_Killed_EventHandlers {
|
|
class CAManBase {
|
|
class AGM_DropItem {
|
|
clientKilled = "if (player == _this select 0) then {(_this select 0) call AGM_Drag_fnc_releaseObject}";
|
|
};
|
|
};
|
|
};
|
|
class Extended_WeaponAssembled_EventHandlers {
|
|
class CAManBase {
|
|
class AGM_DropItem {
|
|
clientWeaponAssembled = "if (player == _this select 0) then {(_this select 0) call AGM_Drag_fnc_releaseObject}";
|
|
};
|
|
};
|
|
};
|
|
class Extended_WeaponDisassembled_EventHandlers {
|
|
class CAManBase {
|
|
class AGM_DropItem {
|
|
clientWeaponDisassembled = "if (player == _this select 0) then {(_this select 0) call AGM_Drag_fnc_releaseObject}";
|
|
};
|
|
};
|
|
};
|
|
|
|
class AGM_Core_canInteractConditions {
|
|
class AGM_Drag_isNotDragging {
|
|
condition = "!(_player getVariable ['AGM_isDragging', false])";
|
|
};
|
|
};
|
|
|
|
class CfgAddons {
|
|
class AGM_Repair_Items {
|
|
list[] = {"AGM_Repair_Track", "AGM_Repair_Wheel"};
|
|
};
|
|
};
|
|
|
|
class CfgSounds {
|
|
class AGM_Wirecutter_sound {
|
|
name = "AGM_wirecutter_sound";
|
|
sound[] = {"AGM_Logistics\sound\wire_cut.ogg", "db-0", 1};
|
|
titles[] = {};
|
|
};
|
|
class AGM_Wirecutter_sound_long {
|
|
name = "AGM_wirecutter_sound_long";
|
|
sound[] = {"AGM_Logistics\sound\wire_cut_long.ogg", "db-0", 1};
|
|
titles[] = {};
|
|
};
|
|
};
|
|
|
|
#include <Macros.hpp>
|
|
|
|
class CfgVehicleClasses {
|
|
class AGM_Repair_Items {
|
|
displayName = "AGM";
|
|
};
|
|
};
|
|
|
|
#include <FuelCapacities.hpp>
|
|
|
|
class CfgVehicles {
|
|
class Man;
|
|
class CAManBase: Man {
|
|
class AGM_SelfActions {
|
|
// Sometimes it is not possible to target an object that you are dragging
|
|
// particularly noticeable on Stratis on the dock wall.
|
|
// Adding a self option to release will fix this.
|
|
class AGM_ReleaseItemSelf {
|
|
displayName = "$STR_AGM_Drag_EndDrag";
|
|
condition = "player call AGM_Drag_fnc_isDraggingObject";
|
|
statement = "player call AGM_Drag_fnc_releaseObject";
|
|
exceptions[] = {"AGM_Drag_isNotDragging"};
|
|
showDisabled = 0;
|
|
priority = 2.1;
|
|
hotkey = "R";
|
|
};
|
|
MACRO_CHECKFUEL
|
|
};
|
|
};
|
|
|
|
class LandVehicle;
|
|
class Car: LandVehicle {
|
|
AGM_Vehicle_Cargo = 4;
|
|
class AGM_Actions {
|
|
MACRO_UNLOAD
|
|
MACRO_REFUEL
|
|
};
|
|
};
|
|
class Tank: LandVehicle {
|
|
AGM_Vehicle_Cargo = 4;
|
|
class AGM_Actions {
|
|
MACRO_UNLOAD
|
|
MACRO_REFUEL
|
|
MACRO_RELOAD_MAGS
|
|
};
|
|
};
|
|
|
|
// Repair wheeled vehicles
|
|
class Car_F: Car {
|
|
KEY_WHEEL_4X4
|
|
class HitPoints; // @todo
|
|
AGM_fuelCapacity = 60; // in liter.
|
|
class AGM_Actions: AGM_Actions {
|
|
class AGM_Repair {
|
|
displayName = "$STR_AGM_Repair";
|
|
distance = 4;
|
|
condition = "alive AGM_Interaction_Target";
|
|
statement = "";
|
|
showDisabled = 1;
|
|
priority = 1.4;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
subMenu[] = {"AGM_Repair", 0};
|
|
|
|
class AGM_Repair_checkVehicle {
|
|
displayName = "$STR_AGM_Repair_checkVehicle";
|
|
distance = 4;
|
|
condition = "alive AGM_Interaction_Target";
|
|
statement = "[AGM_Interaction_Target] call AGM_Repair_fnc_checkVehicle";
|
|
showDisabled = 1;
|
|
priority = 1;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Wheels {
|
|
displayName = "$STR_AGM_Repair_RepairWheel";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, ['HitLFWheel', 'HitLBWheel', 'HitLMWheel', 'HitLF2Wheel', 'HitRFWheel', 'HitRBWheel', 'HitRMWheel', 'HitRF2Wheel']] call AGM_Repair_fnc_canRepairWheel";
|
|
statement = "[AGM_Interaction_Target, ['HitLFWheel', 'HitLBWheel', 'HitLMWheel', 'HitLF2Wheel', 'HitRFWheel', 'HitRBWheel', 'HitRMWheel', 'HitRF2Wheel']] call AGM_Repair_fnc_openSelectWheelUI";
|
|
showDisabled = 1;
|
|
priority = 0.9;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Remove_Wheels {
|
|
displayName = "$STR_AGM_Repair_RemoveWheel";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, ['HitLFWheel', 'HitLBWheel', 'HitLMWheel', 'HitLF2Wheel', 'HitRFWheel', 'HitRBWheel', 'HitRMWheel', 'HitRF2Wheel']] call AGM_Repair_fnc_canRemoveWheel";
|
|
statement = "[AGM_Interaction_Target, ['HitLFWheel', 'HitLBWheel', 'HitLMWheel', 'HitLF2Wheel', 'HitRFWheel', 'HitRBWheel', 'HitRMWheel', 'HitRF2Wheel']] call AGM_Repair_fnc_openSelectWheelUI_Salvage";
|
|
showDisabled = 1;
|
|
priority = 0.8;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Body {
|
|
displayName = "$STR_AGM_Repair_HitBody";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitBody'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitBody'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.5;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Engine {
|
|
displayName = "$STR_AGM_Repair_HitEngine";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitEngine'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitEngine'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.4;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Fuel {
|
|
displayName = "$STR_AGM_Repair_HitFuel";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitFuel'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitFuel'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.3;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Gun {
|
|
displayName = "$STR_AGM_Repair_HitGun";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitGun'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitGun'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.2;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Turret {
|
|
displayName = "$STR_AGM_Repair_HitTurret";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitTurret'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitTurret'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.1;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
class Kart_01_Base_F: Car_F {
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_KART;
|
|
};
|
|
class MRAP_01_base_F: Car_F {
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_MATV;
|
|
};
|
|
class MRAP_02_base_F: Car_F {
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_PUNISHER;
|
|
};
|
|
class MRAP_03_base_F: Car_F {
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_FENNEK;
|
|
};
|
|
class Quadbike_01_base_F: Car_F {
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_QUAD;
|
|
};
|
|
class Offroad_01_base_f: Car_F {
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_OFFROARD;
|
|
};
|
|
class UGV_01_base_F: Car_F {
|
|
KEY_WHEEL_6X6_STOMPER
|
|
};
|
|
|
|
class Truck_F: Car_F {
|
|
AGM_Vehicle_Cargo = 8;
|
|
KEY_WHEEL_6X6_REAR
|
|
class HitPoints: HitPoints { // @todo
|
|
class HitLFWheel;
|
|
class HitLBWheel;
|
|
class HitLMWheel;
|
|
class HitLF2Wheel;
|
|
class HitRFWheel;
|
|
class HitRBWheel;
|
|
class HitRMWheel;
|
|
class HitRF2Wheel;
|
|
};
|
|
AGM_fuelCapacity = 240; // in liter.
|
|
class AGM_Actions;
|
|
};
|
|
class Wheeled_APC_F: Car_F {
|
|
KEY_WHEEL_6X6_REAR
|
|
AGM_fuelCapacity = 600; // in liter.
|
|
};
|
|
|
|
// Repair tracked vehicles
|
|
class Tank_F: Tank {
|
|
AGM_fuelCapacity = 1500; // in liter.
|
|
class AGM_Actions: AGM_Actions {
|
|
class AGM_Repair {
|
|
displayName = "$STR_AGM_Repair";
|
|
distance = 4;
|
|
condition = "alive AGM_Interaction_Target";
|
|
statement = "";
|
|
showDisabled = 1;
|
|
priority = 1.4;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
subMenu[] = {"AGM_Repair", 0};
|
|
|
|
class AGM_Repair_checkVehicle {
|
|
displayName = "$STR_AGM_Repair_checkVehicle";
|
|
distance = 4;
|
|
condition = "alive AGM_Interaction_Target";
|
|
statement = "[AGM_Interaction_Target] call AGM_Repair_fnc_checkVehicle";
|
|
showDisabled = 1;
|
|
priority = 1;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Hull {
|
|
displayName = "$STR_AGM_Repair_HitHull";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitHull'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitHull'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.5;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_LTrack {
|
|
displayName = "$STR_AGM_Repair_HitLTrack";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitLTrack'] call AGM_Repair_fnc_canRepairTrack";
|
|
statement = "[AGM_Interaction_Target, 'HitLTrack'] call AGM_Repair_fnc_repairTrack";
|
|
showDisabled = 0;
|
|
priority = 0.42;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_RTrack {
|
|
displayName = "$STR_AGM_Repair_HitRTrack";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitRTrack'] call AGM_Repair_fnc_canRepairTrack";
|
|
statement = "[AGM_Interaction_Target, 'HitRTrack'] call AGM_Repair_fnc_repairTrack";
|
|
showDisabled = 0;
|
|
priority = 0.41;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Engine {
|
|
displayName = "$STR_AGM_Repair_HitEngine";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitEngine'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitEngine'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.4;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
/*class AGM_Repair_Fuel {
|
|
displayName = "$STR_AGM_Repair_HitFuel";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitFuel'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitFuel'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.3;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};*/
|
|
class AGM_Repair_Gun {
|
|
displayName = "$STR_AGM_Repair_HitGun";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitGun'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitGun'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.2;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Turret {
|
|
displayName = "$STR_AGM_Repair_HitTurret";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitTurret'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitTurret'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.1;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
class MBT_01_base_F: Tank_F {
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_MERKAVA;
|
|
};
|
|
class MBT_02_base_F: Tank_F {
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_T100;
|
|
};
|
|
class MBT_03_base_F: Tank_F {
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_LEOPARD;
|
|
};
|
|
|
|
class Air;
|
|
// Repair helicopters
|
|
class Helicopter: Air {
|
|
AGM_Paradrop = 0;
|
|
AGM_fuelCapacity = 240; // in liter.
|
|
AGM_Vehicle_Cargo = 8;
|
|
class AGM_Actions {
|
|
MACRO_UNLOAD
|
|
MACRO_REFUEL
|
|
MACRO_RELOAD_MAGS
|
|
class AGM_Repair {
|
|
displayName = "$STR_AGM_Repair";
|
|
distance = 4;
|
|
condition = "alive AGM_Interaction_Target";
|
|
statement = "";
|
|
showDisabled = 1;
|
|
priority = 1.4;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
subMenu[] = {"AGM_Repair", 0};
|
|
|
|
class AGM_Repair_checkVehicle {
|
|
displayName = "$STR_AGM_Repair_checkVehicle";
|
|
distance = 4;
|
|
condition = "alive AGM_Interaction_Target";
|
|
statement = "[AGM_Interaction_Target] call AGM_Repair_fnc_checkVehicle";
|
|
showDisabled = 1;
|
|
priority = 1;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Body {
|
|
displayName = "$STR_AGM_Repair_HitHull";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitHull'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitHull'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.5;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Engine {
|
|
displayName = "$STR_AGM_Repair_HitEngine";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitEngine'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitEngine'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.4;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Fuel {
|
|
displayName = "$STR_AGM_Repair_HitFuel";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitFuel'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitFuel'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.3;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Avionics {
|
|
displayName = "$STR_AGM_Repair_HitAvionics";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitAvionics'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitAvionics'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.2;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_HRotor {
|
|
displayName = "$STR_AGM_Repair_HitHRotor";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitHRotor'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitHRotor'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.15;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_VRotor {
|
|
displayName = "$STR_AGM_Repair_HitVRotor";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitVRotor'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitVRotor'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.1;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
};
|
|
};
|
|
class AGM_SelfActions {
|
|
MACRO_PARADROP
|
|
};
|
|
};
|
|
|
|
class Heli_Transport_02_base_F;
|
|
class I_Heli_Transport_02_F : Heli_Transport_02_base_F {
|
|
AGM_Vehicle_Cargo = 20;
|
|
AGM_Paradrop = 1;
|
|
};
|
|
|
|
// Repair fixed wing aircraft
|
|
class Plane: Air {
|
|
AGM_Paradrop = 0;
|
|
AGM_fuelCapacity = 600; // in liter.
|
|
AGM_Vehicle_Cargo = 4;
|
|
class AGM_Actions {
|
|
MACRO_UNLOAD
|
|
MACRO_REFUEL
|
|
MACRO_RELOAD_MAGS
|
|
class AGM_Repair {
|
|
displayName = "$STR_AGM_Repair";
|
|
distance = 4;
|
|
condition = "alive AGM_Interaction_Target";
|
|
statement = "";
|
|
showDisabled = 1;
|
|
priority = 1.4;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
subMenu[] = {"AGM_Repair", 0};
|
|
|
|
class AGM_Repair_checkVehicle {
|
|
displayName = "$STR_AGM_Repair_checkVehicle";
|
|
distance = 4;
|
|
condition = "alive AGM_Interaction_Target";
|
|
statement = "[AGM_Interaction_Target] call AGM_Repair_fnc_checkVehicle";
|
|
showDisabled = 1;
|
|
priority = 1;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Body {
|
|
displayName = "$STR_AGM_Repair_HitHull";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitHull'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitHull'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.5;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
/*class AGM_Repair_Engine {
|
|
displayName = "$STR_AGM_Repair_HitEngine";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitEngine'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitEngine'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.4;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Fuel {
|
|
displayName = "$STR_AGM_Repair_HitFuel";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitFuel'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitFuel'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.3;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Avionics {
|
|
displayName = "$STR_AGM_Repair_HitAvionics";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitAvionics'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitAvionics'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.2;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};*/
|
|
};
|
|
};
|
|
};
|
|
|
|
// boats
|
|
class Ship;
|
|
class Ship_F: Ship {
|
|
AGM_fuelCapacity = 40; // in liter.
|
|
AGM_Vehicle_Cargo = 4;
|
|
|
|
class AGM_Actions {
|
|
MACRO_UNLOAD
|
|
MACRO_REFUEL
|
|
class AGM_Repair {
|
|
displayName = "$STR_AGM_Repair";
|
|
distance = 4;
|
|
condition = "alive AGM_Interaction_Target";
|
|
statement = "";
|
|
showDisabled = 1;
|
|
priority = 1.4;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
subMenu[] = {"AGM_Repair", 0};
|
|
|
|
class AGM_Repair_checkVehicle {
|
|
displayName = "$STR_AGM_Repair_checkVehicle";
|
|
distance = 4;
|
|
condition = "alive AGM_Interaction_Target";
|
|
statement = "[AGM_Interaction_Target] call AGM_Repair_fnc_checkVehicle";
|
|
showDisabled = 1;
|
|
priority = 1;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Body {
|
|
displayName = "$STR_AGM_Repair_HitHull";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitHull'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitHull'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.5;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Engine {
|
|
displayName = "$STR_AGM_Repair_HitEngine";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitEngine'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitEngine'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.4;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
class AGM_Repair_Fuel {
|
|
displayName = "$STR_AGM_Repair_HitFuel";
|
|
distance = 4;
|
|
condition = "[AGM_Interaction_Target, 'HitFuel'] call AGM_Repair_fnc_canRepair";
|
|
statement = "[AGM_Interaction_Target, 'HitFuel'] call AGM_Repair_fnc_repair";
|
|
showDisabled = 0;
|
|
priority = 0.3;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
// Static weapons
|
|
class StaticWeapon: LandVehicle {
|
|
AGM_Size = 2; // 1 = small, 2 = large
|
|
class AGM_Actions {
|
|
MACRO_DRAGABLE
|
|
MACRO_GETIN_STATIC
|
|
MACRO_LOADABLE
|
|
};
|
|
};
|
|
|
|
//remove actions from Taru Pods
|
|
class Pod_Heli_Transport_04_base_F: StaticWeapon {
|
|
class AGM_Actions: AGM_Actions {
|
|
MACRO_NOT_DRAGABLE
|
|
MACRO_NOT_GETINABLE_STATIC
|
|
MACRO_NOT_LOADABLE
|
|
};
|
|
};
|
|
|
|
class StaticMortar;
|
|
class Mortar_01_base_F: StaticMortar {
|
|
AGM_Size = 2; // 1 = small, 2 = large
|
|
class AGM_Actions {
|
|
MACRO_DRAGABLE
|
|
MACRO_GETIN_STATIC
|
|
MACRO_LOADABLE
|
|
};
|
|
};
|
|
|
|
// Ammo boxes
|
|
class ThingX;
|
|
class ReammoBox_F: ThingX {
|
|
AGM_Size = 2; // 1 = small, 2 = large
|
|
AGM_CarryPosition[] = {0,1,1}; // offset from player to attach object.
|
|
class AGM_Actions {
|
|
MACRO_LOADABLE
|
|
};
|
|
};
|
|
|
|
class Slingload_base_F: ReammoBox_F {
|
|
class AGM_Actions: AGM_Actions {
|
|
MACRO_NOT_LOADABLE
|
|
};
|
|
};
|
|
|
|
class EAST_Box_Base: ReammoBox_F {
|
|
class AGM_Actions: AGM_Actions {
|
|
MACRO_DRAGABLE
|
|
};
|
|
};
|
|
class IND_Box_Base: ReammoBox_F {
|
|
class AGM_Actions: AGM_Actions {
|
|
MACRO_DRAGABLE
|
|
};
|
|
};
|
|
/*class FIA_Box_Base_F: ReammoBox_F {
|
|
class AGM_Actions: AGM_Actions {
|
|
MACRO_DRAGABLE
|
|
};
|
|
};*/
|
|
class NATO_Box_Base: ReammoBox_F {
|
|
class AGM_Actions: AGM_Actions {
|
|
MACRO_DRAGABLE
|
|
};
|
|
};
|
|
// Remove Larger crate dragging support.
|
|
// Would be better to allow some sort of joint push/drag functionality
|
|
// Requiring 2 units to access the larger crates and attaching them together (a crappy method of doing it)
|
|
// in order to move the bigger ones. Currently simply remove support.
|
|
// I believe these crates are currently broken (hitbox doesn't work or something) in 1.22 (2014-07-04)
|
|
class Box_East_AmmoVeh_F: EAST_Box_Base {
|
|
//transportAmmo = 30000;
|
|
class AGM_Actions: AGM_Actions {
|
|
MACRO_NOT_DRAGABLE
|
|
};
|
|
};
|
|
class Box_NATO_AmmoVeh_F: NATO_Box_Base {
|
|
//transportAmmo = 30000;
|
|
class AGM_Actions: AGM_Actions {
|
|
MACRO_NOT_DRAGABLE
|
|
};
|
|
};
|
|
class Box_IND_AmmoVeh_F: IND_Box_Base {
|
|
//transportAmmo = 30000;
|
|
class AGM_Actions: AGM_Actions {
|
|
MACRO_NOT_DRAGABLE
|
|
};
|
|
};
|
|
|
|
class Helicopter_Base_F;
|
|
class UAV_01_base_F: Helicopter_Base_F {
|
|
class AGM_Actions {
|
|
MACRO_DRAGABLE
|
|
MACRO_REFUEL_UAV
|
|
};
|
|
};
|
|
|
|
// New Items
|
|
class Land_CanisterFuel_F;
|
|
class AGM_JerryCan: Land_CanisterFuel_F {
|
|
author = "$STR_AGM_Core_AGMTeam";
|
|
AGM_Size = 1; // 1 = small, 2 = large
|
|
class AGM_Actions {
|
|
MACRO_LOADABLE
|
|
MACRO_CARRYJERRYCAN
|
|
};
|
|
icon = "iconObject_circle";
|
|
displayName = "$STR_AGM_Repair_JerryCan";
|
|
mapSize = 0.7;
|
|
accuracy = 0.2;
|
|
vehicleClass = "AGM_Repair_Items";
|
|
destrType = "DesturctNo";
|
|
};
|
|
|
|
class AGM_SpareTrack: ThingX {
|
|
author = "Hawkins";
|
|
AGM_Size = 1; // 1 = small, 2 = large
|
|
AGM_CarryPosition[] = {0,1,1}; // offset from player to attach object.
|
|
scope = 2;
|
|
model = "\AGM_Logistics\agm_track.p3d";
|
|
icon = "iconObject_circle";
|
|
displayName = "$STR_AGM_Repair_SpareTrack";
|
|
mapSize = 0.7;
|
|
accuracy = 0.2;
|
|
vehicleClass = "AGM_Repair_Items";
|
|
destrType = "DesturctNo";
|
|
|
|
class AGM_Actions {
|
|
MACRO_DRAGABLE
|
|
MACRO_LOADABLE
|
|
};
|
|
};
|
|
|
|
class AGM_SpareWheel: ThingX {
|
|
author = "Hawkins";
|
|
AGM_Size = 1; // 1 = small, 2 = large
|
|
AGM_CarryPosition[] = {0,1,1}; // offset from player to attach object.
|
|
scope = 2;
|
|
model = "\AGM_Logistics\agm_wheel.p3d";
|
|
icon = "iconObject_circle";
|
|
displayName = "$STR_AGM_Repair_SpareWheel";
|
|
mapSize = 0.7;
|
|
accuracy = 0.2;
|
|
vehicleClass = "AGM_Repair_Items";
|
|
destrType = "DesturctNo";
|
|
picture = "\AGM_Logistics\ui\tire_ca.paa";
|
|
|
|
class AGM_Actions {
|
|
MACRO_DRAGABLE
|
|
MACRO_LOADABLE
|
|
};
|
|
};
|
|
|
|
class Land_WoodenBox_F;
|
|
class AGM_SandbagBarrier_Crate: Land_WoodenBox_F {
|
|
author = "$STR_AGM_Core_AGMTeam";
|
|
AGM_Size = 1; // 1 = small, 2 = large
|
|
AGM_CarryPosition[] = {0,1,1}; // offset from player to attach object.
|
|
icon = "iconObject_circle";
|
|
displayName = "$STR_AGM_Fortifications_SandbagBarrierCrate";
|
|
mapSize = 0.7;
|
|
accuracy = 0.2;
|
|
vehicleClass = "AGM_Repair_Items";
|
|
destrType = "DesturctNo";
|
|
class AGM_Actions {
|
|
MACRO_DRAGABLE
|
|
MACRO_LOADABLE
|
|
class AGM_PlaceFortification {
|
|
displayName = "Place Fortification";
|
|
distance = 4;
|
|
condition = "[player, AGM_Interaction_Target, ['Land_BagFence_Long_F', 'Land_BagFence_Round_F']] call AGM_Fortifications_fnc_canSetupBarrier";
|
|
statement = "[player, AGM_Interaction_Target, ['Land_BagFence_Long_F', 'Land_BagFence_Round_F']] call AGM_Fortifications_fnc_openSelectBarrierlUI";
|
|
showDisabled = 0;
|
|
priority = 0.5;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
};
|
|
};
|
|
class AGM_RazorWire_Crate: AGM_SandbagBarrier_Crate {
|
|
author = "$STR_AGM_Core_AGMTeam";
|
|
displayName = "$STR_AGM_Fortifications_RazorWireCrate";
|
|
class AGM_Actions: AGM_Actions {
|
|
class AGM_PlaceFortification {
|
|
displayName = "Place Fortification";
|
|
distance = 4;
|
|
condition = "[player, AGM_Interaction_Target, 'Land_Razorwire_F'] call AGM_Fortifications_fnc_canSetupBarrier";
|
|
statement = "[player, AGM_Interaction_Target, 'Land_Razorwire_F'] call AGM_Fortifications_fnc_setupBarrier";
|
|
showDisabled = 0;
|
|
priority = 0.5;
|
|
icon = "\A3\ui_f\data\igui\cfg\actions\repair_ca.paa";
|
|
};
|
|
};
|
|
};
|
|
|
|
// Misc box content
|
|
class Box_NATO_Support_F;
|
|
class AGM_Box_Misc: Box_NATO_Support_F {
|
|
class TransportItems {
|
|
class _xx_AGM_UAVBattery {
|
|
count = 6;
|
|
name = "AGM_UAVBattery";
|
|
};
|
|
};
|
|
};
|
|
|
|
// wire cutter
|
|
class Wall_F;
|
|
class Land_Net_Fence_4m_F: Wall_F {
|
|
class AGM_Actions {
|
|
MACRO_CUTWIRE
|
|
};
|
|
};
|
|
class Land_Net_Fence_8m_F: Wall_F {
|
|
class AGM_Actions {
|
|
MACRO_CUTWIRE_LONG
|
|
};
|
|
};
|
|
class Land_Net_FenceD_8m_F: Wall_F {
|
|
class AGM_Actions {
|
|
MACRO_CUTWIRE
|
|
};
|
|
};
|
|
class Land_New_WiredFence_5m_F: Wall_F {
|
|
class AGM_Actions {
|
|
MACRO_CUTWIRE
|
|
};
|
|
};
|
|
class Land_New_WiredFence_10m_Dam_F: Wall_F {
|
|
class AGM_Actions {
|
|
MACRO_CUTWIRE
|
|
};
|
|
};
|
|
class Land_New_WiredFence_10m_F: Wall_F {
|
|
class AGM_Actions {
|
|
MACRO_CUTWIRE_LONG
|
|
};
|
|
};
|
|
class Land_Pipe_fence_4m_F: Wall_F {
|
|
class AGM_Actions {
|
|
MACRO_CUTWIRE
|
|
};
|
|
};
|
|
class Land_Pipe_fence_4mNoLC_F: Wall_F {
|
|
class AGM_Actions {
|
|
MACRO_CUTWIRE
|
|
};
|
|
};
|
|
class Land_SportGround_fence_F: Wall_F {
|
|
class AGM_Actions {
|
|
MACRO_CUTWIRE
|
|
};
|
|
};
|
|
class Land_Wired_Fence_4m_F: Wall_F {
|
|
class AGM_Actions {
|
|
MACRO_CUTWIRE
|
|
};
|
|
};
|
|
class Land_Wired_Fence_4mD_F: Wall_F {
|
|
class AGM_Actions {
|
|
MACRO_CUTWIRE
|
|
};
|
|
};
|
|
class Land_Wired_Fence_8m_F: Wall_F {
|
|
class AGM_Actions {
|
|
MACRO_CUTWIRE_LONG
|
|
};
|
|
};
|
|
class Land_Wired_Fence_8mD_F: Wall_F {
|
|
class AGM_Actions {
|
|
MACRO_CUTWIRE
|
|
};
|
|
};
|
|
|
|
class NonStrategic;
|
|
class Land_Razorwire_F: NonStrategic {
|
|
class AGM_Actions {
|
|
MACRO_CUTWIRE
|
|
};
|
|
};
|
|
|
|
// disable default arma refueling and repair
|
|
class House_Small_F;
|
|
class Land_FuelStation_Feed_F: House_Small_F {
|
|
class AGM_Actions {
|
|
MACRO_REFUELCARGO
|
|
};
|
|
AGM_fuelCapacityCargo = 50000;
|
|
transportFuel = 0;
|
|
};
|
|
class Land_fs_feed_F: House_Small_F {
|
|
class AGM_Actions {
|
|
MACRO_REFUELCARGO
|
|
};
|
|
AGM_fuelCapacityCargo = 50000;
|
|
transportFuel = 0;
|
|
};
|
|
|
|
// APC
|
|
class APC_Wheeled_01_base_F: Wheeled_APC_F {
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_PATRIA;
|
|
|
|
AGM_Wheels[] = {"HitLFWheel", "HitRFWheel", "HitLF2Wheel", "HitRF2Wheel", "HitLMWheel", "HitRMWheel", "HitLBWheel", "HitRBWheel"};
|
|
AGM_WheelsLocalized[] = {STR_AGM_Repair_HitLFWheel, STR_AGM_Repair_HitRFWheel, STR_AGM_Repair_HitLF2Wheel, STR_AGM_Repair_HitRF2Wheel, STR_AGM_Repair_HitLMWheel, STR_AGM_Repair_HitRMWheel, STR_AGM_Repair_HitLBWheel, STR_AGM_Repair_HitRBWheel};
|
|
};
|
|
class APC_Wheeled_02_base_F: Wheeled_APC_F {
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_ARMA;
|
|
};
|
|
class APC_Wheeled_03_base_F: Wheeled_APC_F {
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_PANDUR;
|
|
|
|
AGM_Wheels[] = {"HitLFWheel", "HitRFWheel", "HitLF2Wheel", "HitRF2Wheel", "HitLMWheel", "HitRMWheel", "HitLBWheel", "HitRBWheel"};
|
|
AGM_WheelsLocalized[] = {STR_AGM_Repair_HitLFWheel, STR_AGM_Repair_HitRFWheel, STR_AGM_Repair_HitLF2Wheel, STR_AGM_Repair_HitRF2Wheel, STR_AGM_Repair_HitLMWheel, STR_AGM_Repair_HitRMWheel, STR_AGM_Repair_HitLBWheel, STR_AGM_Repair_HitRBWheel};
|
|
};
|
|
class APC_Tracked_01_base_F: Tank_F {
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_NAMER;
|
|
};
|
|
class B_APC_Tracked_01_base_F: APC_Tracked_01_base_F {
|
|
class AGM_Actions;
|
|
};
|
|
class B_APC_Tracked_01_CRV_F: B_APC_Tracked_01_base_F {
|
|
class AGM_Actions: AGM_Actions {
|
|
MACRO_REFUELCARGO
|
|
};
|
|
AGM_canRepair = 1;
|
|
AGM_fuelCapacityCargo = AGM_FUELCAPACITYCARGO_CRV;
|
|
transportRepair = 0;
|
|
transportFuel = 0;
|
|
};
|
|
class APC_Tracked_02_base_F: Tank_F {
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_BMP;
|
|
};
|
|
class APC_tracked_03_base_F: Tank_F {
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_WARRIOR;
|
|
};
|
|
|
|
// Trucks BLU
|
|
class Truck_01_base_F: Truck_F {
|
|
KEY_WHEEL_8X8
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_HEMTT;
|
|
class AGM_Actions;
|
|
};
|
|
class B_Truck_01_transport_F: Truck_01_base_F {
|
|
/*class AGM_Load { @todo
|
|
class MidLoad {
|
|
displayName = "Middle of truck";
|
|
loadSize = 2; // Size of object, 1 = small, 2 = large
|
|
LoadPosition[]={0.05,-4,-0.6}; // Offset when attaching.
|
|
memoryPoint = "exhaustEnd"; // the memory position on the vehicle to use for the attaching and offset.
|
|
};
|
|
UnLoadPosition[]={0,-6,-1.0}; // Position objects will be unloaded to. modelToWorld offset.
|
|
};*/
|
|
};
|
|
class B_Truck_01_mover_F: B_Truck_01_transport_F {};
|
|
class B_Truck_01_Repair_F: B_Truck_01_mover_F {
|
|
AGM_canRepair = 1;
|
|
transportRepair = 0;
|
|
};
|
|
class B_Truck_01_fuel_F: B_Truck_01_mover_F {
|
|
class AGM_Actions: AGM_Actions {
|
|
MACRO_REFUELCARGO
|
|
};
|
|
AGM_fuelCapacityCargo = AGM_FUELCAPACITYCARGO_HEMTT;
|
|
transportFuel = 0;
|
|
};
|
|
/*class B_Truck_01_ammo_F: B_Truck_01_mover_F {
|
|
transportAmmo = 30000;
|
|
};*/
|
|
|
|
// Trucks INDEP
|
|
class Truck_02_base_F: Truck_F {
|
|
KEY_WHEEL_6X6_REAR_KAMAZ
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_KAMAZ;
|
|
class AGM_Actions: AGM_Actions {};
|
|
};
|
|
class O_Truck_02_box_F: Truck_02_base_F { // this is the repair variant because fuck naming conventions
|
|
AGM_canRepair = 1;
|
|
transportRepair = 0;
|
|
};
|
|
class O_Truck_02_medical_F: O_Truck_02_box_F { // medic inherits from repairer
|
|
AGM_canRepair = 0;
|
|
};
|
|
class O_Truck_02_fuel_F: Truck_02_base_F {
|
|
class AGM_Actions: AGM_Actions {
|
|
MACRO_REFUELCARGO
|
|
};
|
|
AGM_fuelCapacityCargo = AGM_FUELCAPACITYCARGO_KAMAZ;
|
|
transportFuel = 0;
|
|
};
|
|
/*class O_Truck_02_ammo_F: Truck_02_base_F {
|
|
transportAmmo = 30000;
|
|
};*/
|
|
class I_Truck_02_box_F: Truck_02_base_F { // this is the repair variant because fuck naming conventions
|
|
AGM_canRepair = 1;
|
|
transportRepair = 0;
|
|
};
|
|
class I_Truck_02_medical_F: I_Truck_02_box_F { // medic inherits from repairer
|
|
AGM_canRepair = 0;
|
|
};
|
|
class I_Truck_02_fuel_F: Truck_02_base_F {
|
|
class AGM_Actions: AGM_Actions {
|
|
MACRO_REFUELCARGO
|
|
};
|
|
AGM_fuelCapacityCargo = AGM_FUELCAPACITYCARGO_KAMAZ;
|
|
transportFuel = 0;
|
|
};
|
|
/*class I_Truck_02_ammo_F: Truck_02_base_F {
|
|
transportAmmo = 30000;
|
|
};*/
|
|
|
|
// Trucks RED
|
|
class Truck_03_base_F: Truck_F {
|
|
KEY_WHEEL_6X6_FRONT
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_TYPHOON;
|
|
// @todo delete extra hit points
|
|
/*class HitPoints: HitPoints {
|
|
class HitLFWheel: HitLFWheel {};
|
|
class HitLF2Wheel: HitLF2Wheel {};
|
|
delete HitLMWheel;
|
|
class HitLBWheel: HitLBWheel {};
|
|
class HitRFWheel: HitRFWheel {};
|
|
class HitRF2Wheel: HitRF2Wheel {};
|
|
delete HitRMWheel;
|
|
class HitRBWheel: HitRBWheel {};
|
|
};*/
|
|
class AGM_Actions: AGM_Actions {};
|
|
};
|
|
class O_Truck_03_repair_F: Truck_03_base_F {
|
|
AGM_canRepair = 1;
|
|
transportRepair = 0;
|
|
};
|
|
class O_Truck_03_fuel_F: Truck_03_base_F {
|
|
class AGM_Actions: AGM_Actions {
|
|
MACRO_REFUELCARGO
|
|
};
|
|
AGM_fuelCapacityCargo = AGM_FUELCAPACITYCARGO_TYPHOON;
|
|
transportFuel = 0;
|
|
};
|
|
/*class O_Truck_03_ammo_F: Truck_03_base_F {
|
|
transportAmmo = 30000;
|
|
};*/
|
|
|
|
// Trucks CIV
|
|
class Van_01_base_F: Truck_F {
|
|
KEY_WHEEL_4X4
|
|
AGM_fuelCapacity = AGM_FUELCAPACITY_VAN;
|
|
class AGM_Actions: AGM_Actions {};
|
|
};
|
|
class I_G_Van_01_fuel_F: Van_01_base_F {
|
|
class AGM_Actions: AGM_Actions {
|
|
MACRO_REFUELCARGO
|
|
};
|
|
AGM_fuelCapacityCargo = AGM_FUELCAPACITYCARGO_VAN;
|
|
transportFuel = 0;
|
|
};
|
|
class C_Van_01_fuel_F: Van_01_base_F {
|
|
class AGM_Actions: AGM_Actions {
|
|
MACRO_REFUELCARGO
|
|
};
|
|
AGM_fuelCapacityCargo = AGM_FUELCAPACITYCARGO_VAN;
|
|
transportFuel = 0;
|
|
};
|
|
|
|
// heli addon
|
|
class Helicopter_Base_H;
|
|
class Heli_Transport_04_base_F: Helicopter_Base_H {
|
|
class AGM_Actions;
|
|
};
|
|
class O_Heli_Transport_04_fuel_F: Heli_Transport_04_base_F {
|
|
class AGM_Actions: AGM_Actions {
|
|
MACRO_REFUELCARGO
|
|
};
|
|
AGM_fuelCapacityCargo = AGM_FUELCAPACITYCARGO_SKYCRANE;
|
|
transportFuel = 0;
|
|
};
|
|
class O_Heli_Transport_04_repair_F: Heli_Transport_04_base_F {
|
|
AGM_canRepair = 1;
|
|
transportRepair = 0;
|
|
};
|
|
// Fuel tanks
|
|
class CargoNet_01_base_F;
|
|
class CargoNet_01_barrels_F:CargoNet_01_base_F {
|
|
class AGM_Actions{
|
|
MACRO_REFUELCARGO
|
|
MACRO_LOADABLE
|
|
};
|
|
AGM_fuelCapacityCargo = AGM_FUELCAPACITYCARGO_4BARREL;
|
|
};
|
|
class Items_Base_F;
|
|
class Land_MetalBarrel_F:Items_Base_F {
|
|
class AGM_Actions {
|
|
MACRO_REFUELCARGO
|
|
};
|
|
AGM_fuelCapacityCargo = AGM_FUELCAPACITYCARGO_BARREL;
|
|
};
|
|
class Slingload_01_Base_F;
|
|
class B_Slingload_01_Fuel_F:Slingload_01_Base_F {
|
|
class AGM_Actions {
|
|
MACRO_REFUELCARGO
|
|
MACRO_LOADABLE
|
|
};
|
|
AGM_fuelCapacityCargo = AGM_FUELCAPACITYCARGO_ISOCONT;
|
|
transportFuel = 0;
|
|
};
|
|
//Hawkeye104 AGM Repair Module
|
|
class Module_F;
|
|
class AGM_ModuleRepair: Module_F {
|
|
author = "Hawkeye104";
|
|
category = "AGM";
|
|
displayName = "Repair System";
|
|
function = "AGM_Repair_fnc_module";
|
|
scope = 2;
|
|
isGlobal = 1;
|
|
icon = "\AGM_Logistics\UI\Icon_Module_Repair_ca.paa";
|
|
class Arguments {
|
|
//Time to repair heavy damage e.g. engine, fuel line, body
|
|
class TimeRepair {
|
|
displayName = "Heavy Repair Time";
|
|
description = "Time to repair engine/turret/body/fuel components (in seconds). Default: 10";
|
|
typeName = "NUMBER";
|
|
defaultValue = 10;
|
|
};
|
|
//Time to replace a wheel
|
|
class TimeWheelRepair {
|
|
displayName = "Wheel Replace Time";
|
|
description = "Time to replace a wheel (in seconds). Default: 10";
|
|
typeName = "NUMBER";
|
|
defaultValue = 10;
|
|
};
|
|
//Time to replace a track
|
|
class TimeTrackRepair {
|
|
displayName = "Track Replace Time";
|
|
description = "Time to replace a track (in seconds). Default: 10";
|
|
typeName = "NUMBER";
|
|
defaultValue = 10;
|
|
};
|
|
//Maximum damage that can be repaired
|
|
//See Logistics\functions\Repair\fn_repairCallback.sqf
|
|
class MaxDamageRepair {
|
|
displayName = "Maximum Repaired Damage";
|
|
description = "Limits the amount of damage that can be repaired. 0 = Repair all damage, 1 = Cannot repair any damage. Decimal Value. Default: 0";
|
|
typeName = "NUMBER";
|
|
defaultValue = 0;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
// Handle vehicle magazines
|
|
class CfgMagazines {
|
|
class CA_LauncherMagazine;
|
|
class Titan_AA: CA_LauncherMagazine {
|
|
AGM_LoadTime = 10;
|
|
AGM_MagazineReloadType = 1;
|
|
};
|
|
|
|
class Titan_AP: Titan_AA {
|
|
};
|
|
|
|
class Titan_AT: Titan_AA {
|
|
};
|
|
};
|
|
|
|
class CfgWeapons {
|
|
class MissileLauncher;
|
|
class missiles_titan: MissileLauncher {
|
|
AGM_Magazines[] = {"Titan_AA"};
|
|
};
|
|
|
|
class ItemCore;
|
|
class InventoryItem_Base_F;
|
|
class ToolKitItem;
|
|
|
|
// disable default arma repair
|
|
class ToolKit: ItemCore {
|
|
type = 4;
|
|
detectRange = -1;
|
|
simulation = "ItemMineDetector";
|
|
class ItemInfo: ToolKitItem {
|
|
mass = 80;
|
|
type = 201;
|
|
};
|
|
};
|
|
|
|
class AGM_ItemCore;
|
|
class AGM_UAVBattery: AGM_ItemCore {
|
|
scope = 2;
|
|
displayName = "$STR_AGM_UAVs_Battery_Name";
|
|
descriptionShort = "$STR_AGM_UAVs_Battery_Description";
|
|
model = "\AGM_Logistics\agm_battery.p3d";
|
|
picture = "\AGM_Logistics\ui\AGM_battery.paa";
|
|
class ItemInfo: InventoryItem_Base_F {
|
|
mass = 20;
|
|
};
|
|
};
|
|
};
|
|
|
|
class AGM_Parameters_Numeric {
|
|
AGM_Repair_TimeRepair = 10;
|
|
AGM_Repair_TimeWheelRepair = 10;
|
|
AGM_Repair_TimeTrackRepair = 10;
|
|
AGM_Repair_MaxDamageRepair = 0;
|
|
};
|
|
|
|
#include <DiagnoseDialog.hpp>
|