ACE3/addons/refuel/CfgVehicles.hpp

662 lines
22 KiB
C++
Raw Permalink Normal View History

#define XEH_INHERITED class EventHandlers {class CBA_Extended_EventHandlers: CBA_Extended_EventHandlers {};}
class CBA_Extended_EventHandlers;
class CfgNonAIVehicles {
class GVAR(fuelHoseSegment) {
scope = 2;
displayName = "Fuel Hose";
simulation = "ropesegment";
autocenter = 0;
animated = 0;
model = QPATHTOF(data\hose.p3d);
};
};
2015-08-13 17:33:55 +00:00
class CfgVehicles {
class ACE_Module;
2016-01-14 17:47:51 +00:00
class ACE_moduleRefuelSettings: ACE_Module {
scope = 1;
2015-08-13 17:33:55 +00:00
displayName = CSTRING(RefuelSettings_Module_DisplayName);
2016-04-08 18:34:50 +00:00
icon = QPATHTOF(ui\icon_module_refuel.paa);
2015-11-24 20:33:38 +00:00
category = "ACE_Logistics";
function = QFUNC(moduleRefuelSettings);
2015-08-13 17:33:55 +00:00
functionPriority = 1;
isGlobal = 1;
2015-08-13 17:33:55 +00:00
isTriggerActivated = 0;
author = ECSTRING(common,ACETeam);
class Arguments {
class rate {
displayName = CSTRING(RefuelSettings_speed_DisplayName);
description = CSTRING(RefuelSettings_speed_Description);
typeName = "NUMBER";
2015-08-20 20:10:26 +00:00
defaultValue = 10;
2015-08-13 17:33:55 +00:00
};
class hoseLength {
displayName = CSTRING(RefuelSettings_hoseLength_DisplayName);
typeName = "NUMBER";
defaultValue = 12;
};
class progressDuration {
displayName = CSTRING(RefuelSettings_progressDuration_DisplayName);
typeName = "NUMBER";
defaultValue = 2;
};
2015-08-13 17:33:55 +00:00
};
};
class ThingX;
2016-07-20 04:15:18 +00:00
class GVAR(fuelNozzle): ThingX {
XEH_INHERITED;
displayName = QGVAR(fuelNozzle);
2015-12-22 16:49:58 +00:00
scope = 1;
scopeCurator = 1;
2016-04-08 18:34:50 +00:00
model = QPATHTOF(data\nozzle.p3d);
2020-10-21 15:37:14 +00:00
destrType = "DestructNo";
Refuel - Added ability to refuel fuel sources (#8981) * Simplify main fuel loop * Remove unecessary action macro * Add container refueling * Fuel counter behaviour is now consistent for both limited and unlimited fuel sources * Update maxFuel and refuelContainer whenever fueling begins * Update maxFuel and refuelContainer whenever fueling begins * Prevent loading of fuel sources into cargo when they have a nozzle connected to them * Added action to check how much fuel is left in a jerry can * Prevent jerry cans from being picked up if they have a nozzle connected to them * Added function to check if a nozzle can be connected to an object * Prevent fuel sources which have their nozzle deployed from being loaded * Compute both tank volumes inside of refuel instead of durring turn on * Didn't mean to delete these * Allow for user defined fuel capacities * Handle more edge cases with infinite fuel sources * Refuel - Prevent fuel sources from being dragged while they're refueling other things * Refuel - Added flow rate multiplier for refueling fuel sources * Refuel - Use FUNC instead of DFUNC for nozzle actions * Refuel - getCapacity should return REFUEL_DISABLED_FUEL instead of 0 when argument is not a fuel source * Refuel - Correctly reset fuel counter when fueling a new target * Refuel - Implemented all suggested changes * Refuel - Added newlines to end of files * Refuel - Added missing newline at end of XEH_PREP * Only setFuel once per jerry can creation Co-authored-by: PabstMirror <pabstmirror@gmail.com> * Calling getFuel will initialize the fuel source * Refuel - Add newline to end of file --------- Co-authored-by: BaerMitUmlaut <baermitumlaut@users.noreply.github.com> Co-authored-by: PabstMirror <pabstmirror@gmail.com>
2023-02-17 02:06:11 +00:00
class ACE_Actions {
class ACE_MainActions {
displayName = CSTRING(Refuel);
distance = REFUEL_ACTION_DISTANCE;
position = "[0,-0.025,0.125]";
condition = "true";
statement = "";
exceptions[] = {INTERACT_EXCEPTIONS};
showDisabled = 0;
icon = QPATHTOF(ui\icon_refuel_interact.paa);
class GVAR(PickUpNozzle) {
displayName = CSTRING(TakeNozzle);
condition = QUOTE([ARR_2(_player,_target)] call FUNC(canTakeNozzle));
statement = QUOTE([ARR_2(_player,_target)] call FUNC(takeNozzle));
exceptions[] = {INTERACT_EXCEPTIONS_REFUELING};
icon = QPATHTOF(ui\icon_refuel_interact.paa);
};
class GVAR(TurnOn) {
displayName = CSTRING(TurnOn);
condition = QUOTE([ARR_2(_player,_target)] call FUNC(canTurnOn));
statement = QUOTE([ARR_2(_player,_target)] call FUNC(turnOn));
exceptions[] = {INTERACT_EXCEPTIONS};
icon = QPATHTOF(ui\icon_refuel_interact.paa);
};
class GVAR(TurnOn_Container) {
displayName = CSTRING(TurnOn_Container);
condition = QUOTE([ARR_3(_player,_target,true)] call FUNC(canTurnOn));
statement = QUOTE([ARR_3(_player,_target,true)] call FUNC(turnOn));
exceptions[] = {INTERACT_EXCEPTIONS};
icon = QPATHTOF(ui\icon_refuel_interact.paa);
};
class GVAR(TurnOff) {
displayName = CSTRING(TurnOff);
condition = QUOTE([ARR_2(_player,_target)] call FUNC(canTurnOff));
statement = QUOTE([ARR_2(_player,_target)] call FUNC(turnOff));
exceptions[] = {INTERACT_EXCEPTIONS};
icon = QPATHTOF(ui\icon_refuel_interact.paa);
};
class GVAR(Disconnect) {
displayName = CSTRING(Disconnect);
condition = QUOTE([ARR_2(_player,_target)] call FUNC(canDisconnect));
statement = QUOTE([ARR_2(_player,_target)] call FUNC(disconnect));
exceptions[] = {INTERACT_EXCEPTIONS_REFUELING};
icon = QPATHTOF(ui\icon_refuel_interact.paa);
};
};
};
2015-08-13 17:33:55 +00:00
};
class Rope;
class GVAR(fuelHose): Rope {
hiddenSelections[] = {"rope"};
hiddenSelectionsTextures[] = {"#(argb,8,8,3)color(0.009,0.009,0.009,1.0,co)"};
segmentType = QGVAR(fuelHoseSegment);
model = QPATHTOF(data\hose.p3d);
};
2015-08-13 17:33:55 +00:00
class All;
2016-01-14 17:47:51 +00:00
class Static: All {};
class Building: Static {};
class NonStrategic: Building {};
class HouseBase: NonStrategic {};
class House: HouseBase {};
class House_F: House {
class ACE_Actions {
class ACE_MainActions {
displayName = ECSTRING(interaction,MainAction);
selection = "";
distance = 5;
condition = "true";
};
};
};
class House_Small_F: House_F {};
2016-01-14 17:47:51 +00:00
class AllVehicles: All {
GVAR(flowRate) = 1;
};
2016-01-14 17:47:51 +00:00
class Land: AllVehicles {};
class LandVehicle: Land {};
class Car: LandVehicle {
GVAR(canReceive) = 1;
2015-08-13 17:33:55 +00:00
};
2016-01-14 17:47:51 +00:00
class Tank: LandVehicle {
GVAR(canReceive) = 1;
2015-08-20 20:10:26 +00:00
GVAR(flowRate) = 4;
2015-08-13 17:33:55 +00:00
};
2016-01-14 17:47:51 +00:00
class Air: AllVehicles {
GVAR(flowRate) = 8;
};
2016-01-14 17:47:51 +00:00
class Helicopter: Air {
GVAR(canReceive) = 1;
};
2016-01-14 17:47:51 +00:00
class Helicopter_Base_F: Helicopter {};
class Helicopter_Base_H: Helicopter_Base_F {};
2015-08-13 17:33:55 +00:00
2016-01-14 17:47:51 +00:00
class Plane: Air {
GVAR(canReceive) = 1;
GVAR(flowRate) = 16;
2015-08-13 17:33:55 +00:00
};
2016-01-14 17:47:51 +00:00
class Plane_Base_F: Plane {};
2015-08-13 17:33:55 +00:00
2016-01-14 17:47:51 +00:00
class Ship: AllVehicles {};
2016-01-14 17:47:51 +00:00
class Ship_F: Ship {
GVAR(canReceive) = 1;
2015-08-21 20:43:45 +00:00
GVAR(flowRate) = 4;
};
2016-01-14 17:47:51 +00:00
class Boat_Civil_01_base_F: Ship_F {
GVAR(fuelCapacity) = 200;
2015-08-13 17:33:55 +00:00
};
2016-01-14 17:47:51 +00:00
class Boat_F: Ship_F {
2015-08-21 20:43:45 +00:00
GVAR(flowRate) = 1;
};
2016-01-14 17:47:51 +00:00
class Boat_Armed_01_base_F: Boat_F {
2015-08-21 20:43:45 +00:00
GVAR(fuelCapacity) = 300;
};
2016-01-14 17:47:51 +00:00
class Rubber_duck_base_F: Boat_F {
GVAR(fuelCapacity) = 30;
};
2017-09-22 23:01:19 +00:00
/* class SDV_01_base_F: Boat_F {
// SDV is using electrical propulsion
2017-09-22 23:01:19 +00:00
// but we can't recharge it ATM another way
// TODO make recharging, maybe with this objects:
// Land_PowerGenerator_F Land_Portable_generator_F
GVAR(canReceive) = 0;
};
2017-09-22 23:01:19 +00:00
*/
2016-01-14 17:47:51 +00:00
class Car_F: Car {
// Assuming large vehicle tank
GVAR(fuelCapacity) = 60;
};
2016-01-14 17:47:51 +00:00
class Kart_01_Base_F: Car_F {
GVAR(fuelCapacity) = 8;
};
class Offroad_01_base_F: Car_F {};
class Wheeled_APC_F: Car_F {
// Assuming average APC tank
GVAR(fuelCapacity) = 300;
};
class Hatchback_01_base_F: Car_F {
// Assume normal vehicle tank
GVAR(fuelCapacity) = 50;
};
2016-01-14 17:47:51 +00:00
class Quadbike_01_base_F: Car_F {
// Assuming usual Yamaha quad
GVAR(fuelCapacity) = 10;
};
class MRAP_01_base_F: Car_F {
// M-ATV
// No data, assuming similar to Fennek
GVAR(fuelCapacity) = 230;
};
class MRAP_02_base_F: Car_F {
// Punisher
// No data, assuming similar to Fennek
GVAR(fuelCapacity) = 230;
};
class MRAP_03_base_F: Car_F {
// Fennek
GVAR(fuelCapacity) = 230;
};
class APC_Wheeled_01_base_F: Wheeled_APC_F {
// Patria = LAV
GVAR(fuelCapacity) = 269;
};
class APC_Wheeled_02_base_F: Wheeled_APC_F {
class EGVAR(interaction,anims);
};
class APC_Wheeled_02_base_v2_F: APC_Wheeled_02_base_F {
class EGVAR(interaction,anims): EGVAR(interaction,anims) {
class showCanisters {
phase = 0;
positions[] = {{-1.188, -3.87, -0.769}, {1.638, -3.87, -0.769}};
items[] = {"Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F"};
name = CSTRING(TakeFuelCanister);
text = CSTRING(TakeFuelCanisterAction);
};
};
};
2016-01-14 17:47:51 +00:00
class Truck_F: Car_F {
GVAR(fuelCapacity) = 400;
2015-08-20 20:10:26 +00:00
GVAR(flowRate) = 2;
};
class Truck_01_base_F: Truck_F {
// HEMTT
GVAR(fuelCapacity) = 583;
};
2016-01-14 17:47:51 +00:00
class B_Truck_01_transport_F: Truck_01_base_F {};
2015-08-14 01:18:54 +00:00
class B_Truck_01_mover_F: B_Truck_01_transport_F {};
class Truck_02_base_F: Truck_F {
// KamAZ
// Assuming similar to Ural
GVAR(fuelCapacity) = 400;
2015-08-13 17:33:55 +00:00
};
class Truck_03_base_F: Truck_F {
// Tempest
// Assuming heavier than KamAZ
GVAR(fuelCapacity) = 600;
2015-08-13 17:33:55 +00:00
};
2016-01-14 17:47:51 +00:00
class Van_01_base_F: Truck_F {
// Small Truck
// Assuming 80L as in Ford Transit
GVAR(fuelCapacity) = 80;
};
class Van_01_fuel_base_F: Van_01_base_F {
GVAR(hooks)[] = {{0.38,-3.17,-0.7},{-0.41,-3.17,-0.7}};
GVAR(fuelCargo) = 2000;
2015-08-14 01:18:54 +00:00
};
class Tank_F: Tank {
GVAR(fuelCapacity) = 1200;
};
class APC_Tracked_01_base_F: Tank_F {
// Namer
// Assuming Merkava fuel
GVAR(fuelCapacity) = 1400;
};
class B_APC_Tracked_01_base_F: APC_Tracked_01_base_F {};
class B_APC_Tracked_01_CRV_F: B_APC_Tracked_01_base_F {
GVAR(hooks)[] = {{-1.08,-4.81,-0.8}};
GVAR(fuelCargo) = 1000;
};
2016-01-14 17:47:51 +00:00
class APC_Tracked_02_base_F: Tank_F {
// BM-2T
// Assuming 1 L/km
GVAR(fuelCapacity) = 1000;
};
class APC_Tracked_03_base_F: Tank_F {
// FV 510
// Assuming 1 L/km
GVAR(fuelCapacity) = 660;
};
class MBT_01_base_F: Tank_F {
// Merkava IV
GVAR(fuelCapacity) = 1400;
class EGVAR(interaction,anims);
};
class MBT_02_base_F: Tank_F {
// T100 Black Eagle
// Assuming T80
GVAR(fuelCapacity) = 1100;
class EGVAR(interaction,anims);
};
class MBT_03_base_F: Tank_F {
// Leopard
GVAR(fuelCapacity) = 1160;
};
2016-01-14 17:47:51 +00:00
class MBT_01_arty_base_F: MBT_01_base_F {
// Assuming similar 2S3
GVAR(fuelCapacity) = 830;
class EGVAR(interaction,anims): EGVAR(interaction,anims) {
class showCanisters {
phase = 0;
// Rotate interactions with turret rotation
positions[] = {
"[0, -2.5, 0] vectorAdd ([[1.6, -2.4, -0.3], [0, 0, 1], deg (_target animationPhase 'MainTurret')] call CBA_fnc_vectRotate3D)",
"[0, -2.5, 0] vectorAdd ([[1.8, 0.55, -0.7], [0, 0, 1], deg (_target animationPhase 'MainTurret')] call CBA_fnc_vectRotate3D)",
"[0, -2.5, 0] vectorAdd ([[-1.8, 0.55, -0.7], [0, 0, 1], deg (_target animationPhase 'MainTurret')] call CBA_fnc_vectRotate3D)"
};
items[] = {"Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F", "Land_CanisterFuel_F"};
name = CSTRING(TakeFuelCanister);
text = CSTRING(TakeFuelCanisterAction);
};
};
};
2016-01-14 17:47:51 +00:00
class MBT_02_arty_base_F: MBT_02_base_F {
// Assuming similar 2S3
GVAR(fuelCapacity) = 830;
class EGVAR(interaction,anims): EGVAR(interaction,anims) {
class showCanisters {
phase = 0;
// Rotate interactions with turret rotation
positions[] = {"[0, -2.1, 0] vectorAdd ([[1.6, -2.65, -0.3], [0, 0, 1], deg (_target animationPhase 'MainTurret')] call CBA_fnc_vectRotate3D)"};
items[] = {"Land_CanisterFuel_F"};
name = CSTRING(TakeFuelCanister);
text = CSTRING(TakeFuelCanisterAction);
};
};
};
2016-01-14 17:47:51 +00:00
class Heli_Light_02_base_F: Helicopter_Base_H {
// Ka-60 Kasatka
GVAR(fuelCapacity) = 1450;
};
2016-01-14 17:47:51 +00:00
class Heli_light_03_base_F: Helicopter_Base_F {
// AW159
GVAR(fuelCapacity) = 1004;
};
2016-01-14 17:47:51 +00:00
class Heli_Transport_01_base_F: Helicopter_Base_H {
// Ghost Hawk
// Assuming similar UH60
GVAR(fuelCapacity) = 1360;
};
2016-01-14 17:47:51 +00:00
class Heli_Transport_02_base_F: Helicopter_Base_H {
// AW101
GVAR(fuelCapacity) = 3222;
};
2016-01-14 17:47:51 +00:00
class Heli_Transport_03_base_F: Helicopter_Base_H {
// Chinook 47I
GVAR(fuelCapacity) = 3914;
};
2016-01-14 17:47:51 +00:00
class Heli_Transport_04_base_F: Helicopter_Base_H {
// Mi-290 Taru
GVAR(fuelCapacity) = 3914;
};
2016-01-14 17:47:51 +00:00
class Plane_CAS_01_base_F: Plane_Base_F {
// Assuming similar to A10
GVAR(fuelCapacity) = 6223;
2015-11-24 16:33:33 +00:00
};
2016-01-14 17:47:51 +00:00
class Plane_CAS_02_base_F: Plane_Base_F {
// Yak-130
GVAR(fuelCapacity) = 2099;
};
2016-01-14 17:47:51 +00:00
class UAV_01_base_F: Helicopter_Base_F {
// Darter is electrical
GVAR(canReceive) = 0;
2015-08-13 17:33:55 +00:00
};
class UAV_06_base_F: Helicopter_Base_F {
// Orange UAV is electrical
GVAR(canReceive) = 0;
};
class UGV_02_Base_F: Tank_F {
// ED-1D and ED-1E are electrical
GVAR(canReceive) = 0;
};
2016-01-14 17:47:51 +00:00
class UAV: Plane {};
2016-01-14 17:47:51 +00:00
class UAV_02_base_F: UAV {
// Assuming similar YAHBON-R2
GVAR(fuelCapacity) = 270;
};
2016-01-14 17:47:51 +00:00
class Plane_Fighter_03_base_F: Plane_Base_F {
// L-159 ALCA
GVAR(fuelCapacity) = 1914;
};
// Vanilla fuel vehicles
2016-01-14 17:47:51 +00:00
class Truck_02_fuel_base_F: Truck_02_base_F {
2016-01-14 19:07:53 +00:00
GVAR(hooks)[] = {{0.99,-3.47,-0.67},{-1.04,-3.47,-0.67}};
GVAR(fuelCargo) = 10000;
2015-08-14 01:18:54 +00:00
};
class Truck_02_water_base_F: Truck_02_fuel_base_F {
GVAR(fuelCargo) = REFUEL_DISABLED_FUEL;
};
2016-01-14 17:47:51 +00:00
class B_Truck_01_fuel_F: B_Truck_01_mover_F {
GVAR(hooks)[] = {{0.28,-4.99,-0.3},{-0.25,-4.99,-0.3}};
GVAR(fuelCargo) = 10000;
2015-08-14 01:18:54 +00:00
};
2016-01-14 17:47:51 +00:00
class O_Truck_03_fuel_F: Truck_03_base_F {
GVAR(hooks)[] = {{1.3,-1.59,-0.62},{-1.16,-1.59,-0.62}};
GVAR(fuelCargo) = 10000;
};
2016-05-30 22:11:06 +00:00
class ReammoBox_F: ThingX {
class ACE_Actions {
2016-05-30 22:11:06 +00:00
class ACE_MainActions {};
};
2015-08-14 01:18:54 +00:00
};
2016-05-30 22:11:06 +00:00
class Slingload_base_F: ReammoBox_F {};
2016-05-30 22:11:06 +00:00
class Pod_Heli_Transport_04_base_F: Slingload_base_F {};
class Land_Pod_Heli_Transport_04_fuel_F: Pod_Heli_Transport_04_base_F {
GVAR(hooks)[] = {{-1.49,1.41,-0.3}};
GVAR(fuelCargo) = 10000;
2015-08-13 17:33:55 +00:00
};
2016-05-30 22:11:06 +00:00
class Slingload_01_Base_F: Slingload_base_F {};
class B_Slingload_01_Fuel_F: Slingload_01_Base_F {
GVAR(hooks)[] = {{0.55,3.02,-0.5},{-0.52,3.02,-0.5}};
GVAR(fuelCargo) = 10000;
2015-08-13 17:33:55 +00:00
};
2016-05-30 22:11:06 +00:00
class O_Heli_Transport_04_fuel_F: Heli_Transport_04_base_F {
GVAR(hooks)[] = {{-1.52,1.14,-1.18}};
GVAR(fuelCargo) = 10000;
2015-08-13 17:33:55 +00:00
};
// Vanilla fuel objects
2016-01-14 19:07:32 +00:00
class StorageBladder_base_F: NonStrategic {
class ACE_Actions {
class ACE_MainActions {
displayName = ECSTRING(interaction,MainAction);
position = "[-3.35,2.45,0.17]";
distance = 4;
condition = "true";
};
};
2016-01-14 17:48:16 +00:00
};
class Land_StorageBladder_01_F: StorageBladder_base_F {
XEH_INHERITED;
2016-01-14 19:07:32 +00:00
GVAR(hooks)[] = {{-3.35,2.45,0.17}};
GVAR(fuelCargo) = 60000;
2016-01-14 17:48:16 +00:00
};
class FlexibleTank_base_F: ThingX {
class ACE_Actions {
class ACE_MainActions {
displayName = ECSTRING(interaction,MainAction);
position = "[0, 0, 0.5]";
distance = 4;
condition = "true";
};
};
};
class Land_FlexibleTank_01_F: FlexibleTank_base_F {
GVAR(hooks)[] = {{0, 0, 0.5}};
GVAR(fuelCargo) = 300;
};
2015-08-13 17:33:55 +00:00
// Vanilla buildings
2016-01-14 17:47:51 +00:00
class Land_Fuelstation_Feed_F: House_Small_F {
XEH_INHERITED;
2016-01-14 19:07:53 +00:00
GVAR(hooks)[] = {{0,0,-0.5}};
GVAR(fuelCargo) = REFUEL_INFINITE_FUEL;
2015-08-13 17:33:55 +00:00
};
2016-01-14 17:47:51 +00:00
class Land_fs_feed_F: House_Small_F {
XEH_INHERITED;
GVAR(hooks)[] = {{-0.4,0.022,-0.23}};
GVAR(fuelCargo) = REFUEL_INFINITE_FUEL;
2015-08-13 17:33:55 +00:00
};
class Land_FuelStation_01_pump_F: House_F {
XEH_INHERITED;
GVAR(hooks)[] = {{0, 0.4, -0.5}, {0, -0.4, -0.5}};
GVAR(fuelCargo) = REFUEL_INFINITE_FUEL;
};
class Land_FuelStation_01_pump_malevil_F: House_F {
XEH_INHERITED;
GVAR(hooks)[] = {{0, 0.4, -0.5}, {0, -0.4, -0.5}};
GVAR(fuelCargo) = REFUEL_INFINITE_FUEL;
};
class Land_FuelStation_03_pump_F: House_F { // Enoch
XEH_INHERITED;
GVAR(hooks)[] = {{0, 0.4, -0.5}, {0, -0.4, -0.5}};
GVAR(fuelCargo) = REFUEL_INFINITE_FUEL;
};
// Helper object for non-AllVehicles objects
class GVAR(helper): Helicopter_Base_F {
scope = 1;
displayName = "Refuel Helper";
model = "\A3\Weapons_f\empty";
class ACE_Actions {};
class ACE_SelfActions {};
EGVAR(cargo,hasCargo) = 0;
EGVAR(cargo,space) = 0;
damageEffect = "";
destrType = "";
class HitPoints {};
class Turrets {};
class TransportItems {};
};
2015-08-20 20:10:26 +00:00
/* // Barrels found in config \
2016-01-14 17:47:51 +00:00
BarrelHelper: Misc_thing 100
BarrelBase: BarrelHelper 100
Barrels: BarrelBase 400
Barrel1: BarrelBase 100
Barrel2: BarrelBase 100
Barrel3: BarrelBase 100
Barrel4: BarrelBase 100
Barrel5: BarrelBase 100
Barrel6: BarrelBase 100
Wooden_barrel: BarrelBase 100
Wooden_barrels: Wooden_barrel 400
2015-08-13 17:33:55 +00:00
*/
// Trucks
// Src: HEMTT http://www.inetres.com/gp/military/cv/eng/M977.html 583L > 483km
// Src: https://en.wikipedia.org/wiki/Heavy_Expanded_Mobility_Tactical_Truck 587L > 483km
// Src: https://en.wikipedia.org/wiki/Kamaz_Typhoon ? > 1200km
// Src: https://en.wikipedia.org/wiki/Humvee 95L
// Src: https://en.wikipedia.org/wiki/RG-33 80 gal = 302
// Src: MTVR http://oshkoshdefense.com/wp-content/uploads/2013/08/MTVR_StndCargo_SS_6-13-11.pdf 295L
// Src: M1078 http://tarakia.weebly.com/ta-vehicles.html 219L
// Src: https://en.wikipedia.org/wiki/Ural-4320 360L
// Src: http://www.automobile-catalog.com/car/2012/1024400/gaz_233011_tigr.html 138L
// Src: https://en.wikipedia.org/wiki/UAZ-469 78L
// Src: https://en.wikipedia.org/wiki/GAZ-66 210L
// Tracked IFV
// Src: https://en.wikipedia.org/wiki/Marder_%28IFV%29 652L > 520km
// Src: https://en.wikipedia.org/wiki/Tanque_Argentino_Mediano ~250L > 500km (200L additional tank for 400km range boost)
// Src: https://en.wikipedia.org/wiki/ACEC_Cobra 309L > 600km
// Src: https://en.wikipedia.org/wiki/Egyptian_Infantry_Fighting_Vehicle 454L > 482km
// Src: https://en.wikipedia.org/wiki/Lazika 400L > 400-450km
// Src: https://en.wikipedia.org/wiki/Type_73_Armored_Personnel_Carrier 450L > 300km
// Src: https://en.wikipedia.org/wiki/BMP-1 462L > 500-600km
// Src: http://www.inetres.com/gp/military/cv/inf/BMP-1.html 460L > 600km
// Src: http://www.inetres.com/gp/military/cv/inf/BMP-2.html 460L > 600km
// Src: http://www.inetres.com/gp/military/cv/inf/M2.html 662L > 483-402km
// Src: https://en.wikipedia.org/wiki/2T_Stalker ? > 1000km
// Src: https://en.wikipedia.org/wiki/Namer ? > 500km
// Src: https://en.wikipedia.org/wiki/Warrior_tracked_armoured_vehicle ? > 660km
// Src: http://www.globalsecurity.org/military/systems/ground/m113-specs.htm 360L
// Src: http://afvdb.50megs.com/usa/m2bradley.html 746L
// Src: https://en.wikipedia.org/wiki/BMD-1 300L
// Trend: 1-2 L/km
// Wheeled IFV/APC
// Src: https://en.wikipedia.org/wiki/BTR-60 290L > 500km
// Src: http://www.inetres.com/gp/military/cv/inf/BTR-70.html 350L > 600km
// Src: http://www.inetres.com/gp/military/cv/inf/BTR-80.html 300L > 600km
// Src: https://en.wikipedia.org/wiki/Mowag_Piranha 4x4 200L > 700km
// Src: https://en.wikipedia.org/wiki/Mowag_Piranha 6x6 200L > 500km
// Src: https://en.wikipedia.org/wiki/ERC_90_Sagaie 242L > 700km
// Src: https://en.wikipedia.org/wiki/V%C3%A9hicule_de_l%27Avant_Blind%C3%A9 310L > 1200km
// Src: https://en.wikipedia.org/wiki/Panhard_M3 165L > 600km
// Src: https://fr.wikipedia.org/wiki/V%C3%A9hicule_blind%C3%A9_de_combat_d%27infanterie 400L > 750km
// Src: https://de.wikipedia.org/wiki/Sp%C3%A4hwagen_Fennek 230L > 460-1000km
// Src: http://www.inetres.com/gp/military/cv/inf/LAV.html 269L > 660km
// Src: http://www.inetres.com/gp/military/cv/inf/M1126.html 200L > 531km
// Src: https://en.wikipedia.org/wiki/Patria_AMV ? > 600-850km
// Src: https://en.wikipedia.org/wiki/Otokar_Arma ? > 700km
// Trend: 0.3-0.6 L/km
// MBT
// Src: http://www.inetres.com/gp/military/cv/tank/Leopard2.html 1200L > 550km
// Src: http://www.inetres.com/gp/military/cv/tank/M1.html 1909L > 479km
// Src: https://en.wikipedia.org/wiki/T-80 1100L > 335km
// Src: https://en.wikipedia.org/wiki/T-72 1200L > 490km
// Trend: 2-4 L/km
// Artillery
// Src: http://www.inetres.com/gp/military/cv/arty/M109.html 511L > 349km
// Src: https://en.wikipedia.org/wiki/2S3_Akatsiya 830L > 500km
// Other
// https://en.wikipedia.org/wiki/ZSU-23-4 515L
// Helicopter
// Src: http://www.bga-aeroweb.com/Defense/UH-1Y-Venom.html 1172kg / 0.81 kg/L = 1447L
// Src: http://www.bga-aeroweb.com/Defense/AH-1Z-Viper.html 1296kg / 0.81 kg/L = 1600L
// Src: http://www.army-technology.com/projects/black_hawk/ 1360L
// Src: http://www.bga-aeroweb.com/Defense/CH-47-Chinook.html 3914L
// Src: http://helicopters.axlegeeks.com/l/61/Boeing-AH-64-Apache 375 gal = 1420L
// Src: https://en.wikipedia.org/wiki/Mil_Mi-8 3700l
// Src: Google Ka-52 1870L
2015-12-21 16:54:52 +00:00
// Src: http://www.airforce-technology.com/projects/hind/ 1500kg / 0.81 kg/L = 1851L
// Src: https://en.wikipedia.org/wiki/MD_Helicopters_MH-6_Little_Bird 242L
// Src: http://www.globalsecurity.org/military/world/europe/aw159-specs.htm 1004L
// Src: https://en.wikipedia.org/wiki/AgustaWestland_AW101 3 * 1074L = 3222L
// Src: http://www.aviastar.org/helicopters_eng/ka-62.php 1450L
// Planes
// Src: http://www.theaviationzone.com/factsheets/c130j.asp 20820kg / 0.81 kg/L = 25704L
// Src: http://www.avialogs.com/viewer/avialogs-documentviewer.php?id=3298 p29 1644 gal = 6223L
// Src: http://www.airforce-technology.com/projects/su25/ 3600L
// Src: http://www.thaitechnics.com/aircraft/L159.html 1551kg / 0.81 kg/L = 1914L
// Src: https://en.wikipedia.org/wiki/Yakovlev_Yak-130 1700kg / 0.81 kg/L = 2099L
// Src: http://www.adcom-systems.com/ENG/UAV/YAHBON-R2/Overview.html 270L
2015-08-13 17:33:55 +00:00
};