Files
braf/braf_air/Braf_Helicopters/Braf_Caracal/Caracal_Base.hpp
T

2268 lines
60 KiB
C++

class braf_caracal_base: Helicopter_Base_H
{
author = "BRAF TEAM";
mapSize=22.459999;
scope=0;
scopeCurator=0;
side=2;
faction="braf_army";
displayName="HM-4 Caracal Base";
cost=2000000;
_generalMacro="braf_caracal_base";
model="braf\braf_air\braf_helicopters\braf_caracal\braf_caracal.p3d";
icon="braf\braf_air\braf_helicopters\braf_caracal\data\ui\map_caracal_ca.paa";
picture="braf\braf_air\braf_helicopters\braf_caracal\data\ui\icon_caracal_ca.paa";
editorSubcategory="EdSubcat_Helicopters";
memoryPointTaskMarker="TaskMarker_1_pos";
washDownStrength="1.5f";
washDownDiameter="45.0f";
minSmokeDamage=0.30000001;
maxSmokeDamage=0.99000001;
hideWeaponsDriver=1;
hideWeaponsGunner=1;
hideWeaponsCargo=1;
mainBladeCenter="mainRotor_center";
tailBladeCenter="tailRotor_center";
selectionHRotorStill="mainRotor_static";
selectionHRotorMove="mainRotor_blur";
selectionVRotorStill="tailRotor_static";
selectionVRotorMove="tailRotor_blur";
driverLeftHandAnimName="collective";
driverRightHandAnimName="cyclic_pilot";
driverLeftFootAnimName="pedals_left";
driverRightFootAnimName="pedals_right";
memoryPointsGetInDriver="pos_pilot";
memoryPointsGetInDriverDir="dir_pilot";
memoryPointSupply="supply";
numberPhysicalWheels=3;
driveOnComponent[]=
{
"Wheels"
};
accuracy=0.5;
nameSound="veh_helicopter";
fuelCapacity=2500;
fuelConsumptionRate=0.138;
armor=120;
maxFordingDepth=0.25;
tailBladeRadius=1.782;
mainBladeRadius=7.75;
class RotorLibHelicopterProperties
{
RTDconfig="braf\braf_air\braf_helicopters\braf_caracal\rtd_caracal.xml";
autoHoverCorrection[]={3.8399999,3.8900001,0};
defaultCollective=0.60500002;
retreatBladeStallWarningSpeed=92.583;
maxTorque=6930;
stressDamagePerSec=0.0033333332;
maxHorizontalStabilizerLeftStress=10000;
maxHorizontalStabilizerRightStress=10000;
maxVerticalStabilizerStress=10000;
horizontalWingsAngleCollMin=0;
horizontalWingsAngleCollMax=0;
maxMainRotorStress=260000;
maxTailRotorStress=42000;
};
maxSpeed=324;
enginePower=3560;
altFullForce=5000;
altNoForce=6095;
slingLoadMaxCargoMass=7600;
radarType=8;
liftForceCoef=2.5;
bodyFrictionCoef=0.9;
cyclicAsideForceCoef=0.5;
cyclicForwardForceCoef=0.5;
backRotorForceCoef=0.5;
gearRetracting=1;
gearsUpFrictionCoef=0.75;
gearUpTime=3.33;
gearDownTime=2;
driverDoor="";
cargoDoors[]={};
memoryPointsGetInCargo[]=
{
"pos_cargo_r",
"pos_cargo_l",
};
memoryPointsGetInCargoDir[]=
{
"dir_cargo_r",
"dir_cargo_l",
};
preciseGetInOut=1;
cargoPreciseGetInOut[]={1};
driverAction="BRAF_pantera_pilot";
driverInAction="pilot_Heli_Light_02";
getInRadius=1.7;
getInAction="pilot_Heli_Light_02_Enter";
getOutAction="pilot_Heli_Light_02_Exit";
memoryPointsGetInDriverPrecise="GetIn_Pilot";
memoryPointsGetInCargoPrecise[]=
{
"GetIn_Cargo1",
"GetIn_Cargo2"
};
cargoGetInAction[]=
{
"GetInLow"
};
cargoGetOutAction[]=
{
"GetOutLow"
};
crew="braf_characters_aviation_army_aviation_pilot";
cargoCompartments[]=
{
"Compartment2"
};
driverCompartments="Compartment1";
typicalCargo[]=
{
"braf_characters_aviation_army_aviation_pilot"
};
cargoAction[]=
{
"braf_fennec_cargo",
"braf_fennec_cargo",
"braf_fennec_cargo",
"passenger_flatground_generic05",
"passenger_flatground_generic04",
"passenger_flatground_leanright",
"passenger_flatground_generic03",
"passenger_flatground_generic04",
"passenger_flatground_crosslegs",
"passenger_flatground_generic02",
"passenger_flatground_crosslegs",
"passenger_flatground_leanleft",
"passenger_flatground_generic01",
"passenger_flatground_generic05",
"passenger_flatground_generic04",
"passenger_flatground_leanright",
"passenger_flatground_generic03",
"passenger_flatground_generic04",
"passenger_flatground_crosslegs",
"passenger_flatground_generic02",
"passenger_flatground_crosslegs",
"passenger_flatground_leanleft",
"passenger_flatground_generic01",
"passenger_flatground_generic02",
"passenger_flatground_crosslegs",
"passenger_flatground_leanleft",
"passenger_flatground_generic01"
};
proxyIndex=1;
transportSoldier=27;
cargoProxyIndexes[]={1,2,3,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31};
getInProxyOrder[]={1,2,3,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31};
maximumLoad=5000;
radarTargetSize=1.2;
visualTargetSize=1.2;
irTargetSize=1.2;
lockDetectionSystem="8+4";
incomingMissileDetectionSystem="8+16";
memoryPointCM[]=
{
"cm_1_pos",
"cm_2_pos"
};
memoryPointCMDir[]=
{
"cm_1_dir",
"cm_2_dir"
};
weapons[]={"CMFlareLauncher"};
magazines[]={"168Rnd_CMFlare_Chaff_Magazine"};
class TransportBackpacks
{
class _xx_B_Parachute
{
backpack="B_Parachute";
count=8;
};
};
class TransportMagazines
{
};
class TransportWeapons
{
};
class TransportItems
{
};
threat[]={0.80000001,0.1,0.60000002};
driverCanSee=31;
extCameraPosition[]={0,5.5,-30};
class ViewOptics: ViewOptics
{
initAngleX=0;
minAngleX=-30;
maxAngleX=30;
initAngleY=0;
minAngleY=-86;
maxAngleY=86;
minFov=0.25;
maxFov=1.25;
initFov=0.75;
};
gunnerUsesPilotView=1;
castCargoShadow=1;
cargoCanEject=1;
driverCanEject=0;
ejectDeadCargo=0;
memoryPointDriverOptics="slingCamera";
damageResistance=0.01039;
waterLeakiness=1500;
canFloat=0;
epeImpulseDamageCoef=20;
cameraBegin="rtd1_pos";
cameraEnd="rtd1_dir";
class RenderTargets
{
class Flir_Display
{
renderTarget="rendertarget0";
class CameraView
{
pointPosition="rendertarget0_pos";
pointDirection="rendertarget0_dir";
renderVisionMode=2;
renderQuality=2;
fov=0.093000002;
turret[]={1};
};
BBoxes[]=
{
"FLIR_TL",
"FLIR_TR",
"FLIR_BL",
"FLIR_BR"
};
};
};
class Reflectors
{
class Cabin_1
{
position="cabinlight_1_pos";
direction="cabinlight_1_dir";
hitpoint="cabinlight_1_hp";
selection="cabinlight_1";
color[]={50,0,0};
ambient[]={5,0,0};
intensity=4;
size=1;
innerAngle=15;
outerAngle=150;
coneFadeCoef=1;
useFlare=1;
flareSize=0.1;
flareMaxDistance=1;
dayLight=0;
class Attenuation
{
start=0;
constant=0;
linear=1;
quadratic=1;
hardLimitStart=1;
hardLimitEnd=2;
};
};
class Cabin_2: Cabin_1
{
position="cabinlight_2_pos";
direction="cabinlight_2_dir";
hitpoint="cabinlight_2_hp";
selection="cabinlight_2";
};
class Cabin_3: Cabin_1
{
position="cabinlight_3_pos";
direction="cabinlight_3_dir";
hitpoint="cabinlight_3_hp";
selection="cabinlight_3";
};
class Cabin_4: Cabin_1
{
position="cabinlight_4_pos";
direction="cabinlight_4_dir";
hitpoint="cabinlight_4_hp";
selection="cabinlight_4";
};
};
class AnimationSources: AnimationSources
{
class collisionlightred
{
source="MarkerLight";
markerLight="CollisionRed";
animPeriod=0;
initPhase=0;
};
class collisionlightwhite
{
source="MarkerLight";
markerLight="CollisionWhite";
animPeriod=0;
initPhase=0;
};
class NVG_Hide
{
source="user";
animPeriod=0;
initPhase=1;
};
class EFS_Cover_Hide
{
source="user";
animPeriod=0;
initPhase=0;
};
class EFS_Hide
{
source="user";
animPeriod=0;
initPhase=0;
};
class AH15_Hide
{
source="user";
animPeriod=0;
initPhase=0;
};
class UH15_Hide
{
source="user";
animPeriod=0;
initPhase=0;
};
class Hoist_Hide
{
source="user";
animPeriod=0;
initPhase=1;
};
class SAR_Hide
{
source="user";
animPeriod=0;
initPhase=1;
};
class SEAT_Hide
{
source="user";
animPeriod=0;
initPhase=1;
};
class Flir_Hide
{
source="user";
animPeriod=0;
initPhase=1;
};
class REVO_Hide
{
source="user";
animPeriod=0;
initPhase=1;
};
class polel
{
source="user";
animPeriod=1;
initPhase=0;
};
class poler
{
source="user";
animPeriod=1;
initPhase=0;
};
class Door_L
{
source="user";
animPeriod=1;
initPhase=0;
};
class Door_R
{
source="user";
animPeriod=1;
initPhase=0;
};
class Window_1
{
source="user";
animPeriod=1;
initPhase=0;
};
class Window_2
{
source="user";
animPeriod=1;
initPhase=0;
};
};
class UserActions
{
class Open_Door_Left
{
displayname="Open Left Door";
position="window_pos";
showWindow=1;
radius=5;
priority=0;
onlyForPlayer=0;
condition="this animationphase 'Door_L_1' < 0.1 AND this animationphase 'Door_L_2' < 0.1 AND (player in crew this)";
statement="this animate ['Door_L_1',1], this animate ['Door_L_2',1], this say3d ""Doors""";
};
class Close_Door_Left: Open_Door_Left
{
displayname="Close Left Door";
condition="this animationphase 'Door_L_1' > 0.9 AND this animationphase 'Door_L_2' > 0.9 AND (player in crew this)";
statement="this animate ['Door_L_1',0], this animate ['Door_L_2',0], this say3d ""Doors""";
};
class Open_Door_Right: Open_Door_Left
{
displayname="Open Right Door";
condition="this animationphase 'Door_R_1' < 0.1 AND this animationphase 'Door_R_2' < 0.1 AND (player in crew this)";
statement="this animate ['Door_R_1',1], this animate ['Door_R_2',1], this say3d ""Doors""";
};
class Close_Door_Right: Open_Door_Left
{
displayname="Close Right Door";
condition="this animationphase 'Door_R_1' > 0.9 AND this animationphase 'Door_R_2' > 0.9 AND (player in crew this)";
statement="this animate ['Door_R_1',0], this animate ['Door_R_2',0], this say3d ""Doors""";
};
class Open_Window_Left
{
displayname="Open Left Window";
position="window_pos";
showWindow=1;
radius=5;
priority=0;
onlyForPlayer=0;
condition="this animationphase 'Window_1' < 0.1 AND (player in crew this)";
statement="this animate ['Window_1',1]";
};
class Close_Window_Left: Open_Window_Left
{
displayname="Close Left Window";
condition="this animationphase 'Window_1' > 0.9 AND (player in crew this)";
statement="this animate ['Window_1',0]";
};
class Open_Window_Right: Open_Window_Left
{
displayname="Open Right Window";
condition="this animationphase 'Window_2' < 0.1 AND (player in crew this)";
statement="this animate ['Window_2',1]";
};
class Close_Window_Right: Open_Window_Left
{
displayname="Close Right Window";
condition="this animationphase 'Window_2' > 0.9 AND (player in crew this)";
statement="this animate ['Window_2',0]";
};
class NVG_ON
{
displayname="Turn NVG lights on";
position="window_pos";
showWindow=1;
radius=5;
priority=0;
onlyForPlayer=0;
condition="this animationphase 'NVG_Hide' > 0.9 AND (player in crew this)";
statement="this animate ['NVG_Hide',0]";
};
class NVG_OFF: NVG_ON
{
displayname="Turn NVG lights off";
condition="this animationphase 'NVG_Hide' < 0.1 AND (player in crew this)";
statement="this animate ['NVG_Hide',1]";
};
};
class MarkerLights
{
class PositionRed
{
color[]={0.8, 0, 0};
ambient[]={0.09, 0.015, 0.01};
intensity=55;
name="PositionLight_red_pos";
drawLight=1;
flareSize=0.5;
brightness=0.01;
drawLightSize=0.25;
drawLightCenterSize=0.08;
activeLight=0;
blinking=0;
dayLight=0;
useFlare=1;
//class Attenuation
//{
// start=0;
// constant=0;
// linear=25;
// quadratic=50;
// hardLimitStart=0.75;
// hardLimitEnd=1;
//};
};
class PositionGreen: PositionRed
{
color[]={0, 0.8, 0};
ambient[]={0.09, 0.015, 0.01};
name="PositionLight_green_pos";
};
class PositionWhite: PositionRed
{
color[]={1, 1, 1};
ambient[]={0.09, 0.015, 0.01};
name="PositionLight_white_pos";
drawLightSize=0.2;
};
class CollisionRed: PositionRed
{
color[] = {0.9, 0.15, 0.1};
ambient[] = {0.09, 0.015, 0.01};
name="collisionLight_red";
blinking=1;
};
class CollisionWhite: PositionRed
{
color[] = {1, 1, 1};
ambient[] = {0.09, 0.015, 0.01};
name="collisionLight_white";
blinking=1;
};
};
class Exhausts
{
class Exhaust1
{
position="exhaust1";
direction="exhaust1_dir";
effect="ExhaustsEffectHeliBig";
};
class Exhaust2
{
position="exhaust2";
direction="exhaust2_dir";
effect="ExhaustsEffectHeliBig";
};
};
class HitPoints: HitPoints
{
class HitFuel: HitFuel
{
visual="";
name="HP_fuel";
convexComponent="FG_fuel";
radius=0.1;
explosionShielding=2;
};
class HitHull: HitHull
{
armor=999;
name="HP_hull";
visual="zbytek";
convexComponent="hull";
depends="Total";
radius=0.01;
};
class HitEngine1
{
armor=1;
radius=0.4;
name="HP_engine_1";
explosionShielding=3;
minimalHit=0.2;
visual="";
passThrough=1;
convexComponent="FG_engine_1";
material=51;
};
class HitEngine2: HitEngine1
{
armor=1;
minimalHit=0.2;
name="HP_engine_2";
convexComponent="FG_engine_2";
};
class HitEngine: HitEngine
{
armor=999;
radius=0.050000001;
minimalHit=1;
depends="0.5 * (HitEngine1 + HitEngine2)";
};
class HitAvionics: HitAvionics
{
armor=2;
visual="";
name="HP_avionics";
convexComponent="FG_avionics";
radius=0.05;
explosionShielding=2;
};
class HitHRotor: HitHRotor
{
visual="mainRotor_static";
name="HP_mainRotor";
armor=4.5;
radius=0.3;
explosionShielding=2.5;
};
class HitVRotor: HitVRotor
{
visual="tailRotor_static";
name="HP_tailRotor";
armor=3;
radius=0.06;
explosionShielding=6;
};
class HitGlass: HitGlass1
{
visual="Glass";
name="HP_Glass";
convexComponent="FG_Glass";
armor=0.5;
radius=0.25;
};
};
hiddenSelections[]=
{
"camo1",
"camo2",
"camo3",
"camo4",
"camo5",
"camo6",
"glass"
};
hiddenSelectionsTextures[]=
{
"braf\braf_air\braf_helicopters\braf_caracal\data\camo1_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\1bavex_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo3_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo4_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo5_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo6_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\glass_ca.paa"
};
class TextureSources
{
class 1BAvEx
{
author = "BRAF TEAM";
side=2;
displayName="Brazilian Army 1st BAvEx";
textures[]=
{
"braf\braf_air\braf_helicopters\braf_caracal\data\camo1_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\1bavex_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo3_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo4_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo5_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo6_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\glass_ca.paa"
};
factions[]=
{
"braf_army"
};
};
class 4BAvEx
{
author = "BRAF TEAM";
side=2;
displayName="Brazilian Army 4th BAvEx";
textures[]=
{
"braf\braf_air\braf_helicopters\braf_caracal\data\camo1_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\4bavex_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo3_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo4_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo5_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo6_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\glass_ca.paa"
};
factions[]=
{
"braf_army"
};
};
class 100
{
author = "BRAF TEAM";
side=2;
displayName="Brazilian Army Aviation 100 years";
textures[]=
{
"braf\braf_air\braf_helicopters\braf_caracal\data\camo1_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\100_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo3_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo4_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo5_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo6_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\glass_ca.paa"
};
factions[]=
{
"braf_army"
};
};
class HU2
{
author = "BRAF TEAM";
side=3;
displayName="Brazilian Navy Pegasus Squadron";
textures[]=
{
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\camo1_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\hu2_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\camo3_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo4_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo5_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\camo6_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\glass_ca.paa"
};
factions[]=
{
"braf_navy"
};
};
class HU41
{
author = "BRAF TEAM";
side=3;
displayName="Brazilian Navy Hipogrifo Squadron";
textures[]=
{
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\camo1_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\hu41_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\camo3_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo4_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo5_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\camo6_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\glass_ca.paa"
};
factions[]=
{
"braf_navy"
};
};
class Falcao
{
author = "BRAF TEAM";
displayName="brazilian air force 1º/8º gav 'falcão' squadron";
textures[]=
{
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\camo1_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\falcao_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\camo3_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo4_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo5_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\camo6_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\glass_ca.paa"
};
factions[]=
{
"braf_fab"
};
};
class Puma
{
author = "BRAF TEAM";
displayName="brazilian air force 3º/8º gav 'puma' squadron";
textures[]=
{
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\camo1_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\puma_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\camo3_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo4_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo5_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\camo6_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\glass_ca.paa"
};
factions[]=
{
"braf_fab"
};
};
class FAB22
{
author = "BRAF TEAM";
side=3;
displayName="Brazilian Air Force 22º Dimension";
textures[]=
{
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\camo1_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\fab22_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\camo3_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo4_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo5_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\camo6_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\glass_ca.paa"
};
factions[]=
{
"braf_fab"
};
};
};
textureList[]=
{
"1BAvEx",0.33,
"4BAvEx",0.33,
"100",0.33
};
class Damage
{
tex[]={};
mat[]=
{
"braf\braf_air\braf_helicopters\braf_caracal\data\camo1.rvmat",
"braf\braf_air\braf_helicopters\braf_caracal\data\damage\camo1_damage.rvmat",
"braf\braf_air\braf_helicopters\braf_caracal\data\damage\destruct.rvmat",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo2.rvmat",
"braf\braf_air\braf_helicopters\braf_caracal\data\damage\camo2_damage.rvmat",
"braf\braf_air\braf_helicopters\braf_caracal\data\damage\destruct.rvmat",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo3.rvmat",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo3.rvmat",
"braf\braf_air\braf_helicopters\braf_caracal\data\damage\destruct.rvmat",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo4.rvmat",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo4.rvmat",
"braf\braf_air\braf_helicopters\braf_caracal\data\damage\destruct.rvmat",
"braf\braf_air\braf_helicopters\braf_caracal\data\glass.rvmat",
"braf\braf_air\braf_helicopters\braf_caracal\data\damage\glass_damage.rvmat",
"braf\braf_air\braf_helicopters\braf_caracal\data\damage\glass_damage.rvmat"
};
};
class ViewPilot: ViewPilot
{
initAngleX=-2.5;
};
class CargoTurret;
class Turrets: Turrets
{
class braf_copilotturret: CopilotTurret
{
gunnerAction="BRAF_pantera_pilot";
gunnerInAction="copilot_Heli_Light_02";
gunnerName="$STR_A3_COPILOT";
precisegetinout=1;
isCopilot=1;
gunnerGetInAction="copilot_Heli_Light_02_Enter";
gunnerGetOutAction="copilot_Heli_Light_02_Exit";
memoryPointsGetInGunner="pos_copilot";
memoryPointsGetInGunnerDir="dir_copilot";
memoryPointsGetInGunnerPrecise="GetIn_Copilot";
LODTurnedIn=1100;
LODTurnedOut=1100;
proxyIndex=1;
canEject=0;
selectionFireAnim="";
minElev=-50;
maxElev=30;
initElev=11;
minTurn=-170;
maxTurn=170;
initTurn=0;
gunnerLeftHandAnimName="collective";
gunnerRightHandAnimName="cyclic_copilot";
gunnerLeftFootAnimName="pedals_left";
gunnerRightFootAnimName="pedals_right";
gunnerCompartments="Compartment1";
weapons[]={"CMFlareLauncher"};
magazines[]={"168Rnd_CMFlare_Chaff_Magazine"};
soundServo[]={"",0.0099999998,1,30};
class Reflectors
{
class Right
{
color[]={7000,7500,10000};
ambient[]={70,75,100};
intensity=50;
size=1;
innerAngle=15;
outerAngle=65;
coneFadeCoef=10;
position="light_2_pos";
direction="light_2_dir";
hitpoint="light_2_hitpoint";
selection="light_2";
useFlare=1;
flareSize=15;
flareMaxDistance=250;
dayLight=0;
class Attenuation
{
start=0;
constant=0;
linear=1;
quadratic=1;
hardLimitStart=100;
hardLimitEnd=200;
};
};
class Left: Right
{
position="light_1_pos";
direction="light_1_dir";
hitpoint="light_1_hitpoint";
selection="light_1";
};
class Cabin_R
{
position="cabinlight_R_pos";
direction="cabinlight_R_dir";
hitpoint="cabinlight_R_hp";
selection="cabinlight_R";
color[]={50,0,0};
ambient[]={5,0,0};
intensity=2;
size=1;
innerAngle=15;
outerAngle=150;
coneFadeCoef=1;
useFlare=1;
flareSize=0.1;
flareMaxDistance=1;
dayLight=0;
class Attenuation
{
start=0;
constant=0;
linear=1;
quadratic=1;
hardLimitStart=1;
hardLimitEnd=2;
};
};
class Cabin_L: Cabin_R
{
position="cabinlight_L_pos";
direction="cabinlight_L_dir";
hitpoint="cabinlight_L_hp";
selection="cabinlight_L";
};
};
class Components
{
class VehicleSystemsDisplayManagerComponentLeft: VehicleSystemsTemplateLeftPilot
{
};
class VehicleSystemsDisplayManagerComponentRight: VehicleSystemsTemplateRightPilot
{
};
};
};
};
#include "Caracal_Sounds.hpp"
defaultUserMFDvalues[]={0,1,0.30000001,1};
#include "Caracal_MFD.hpp"
class Armory
{
description="HM-4 Jaguar";
};
class Components: Components
{
class SensorsManagerComponent
{
class Components
{
class PassiveRadarSensorComponent: SensorTemplatePassiveRadar
{
};
};
};
class VehicleSystemsDisplayManagerComponentLeft: VehicleSystemsTemplateLeftPilot
{
};
class VehicleSystemsDisplayManagerComponentRight: VehicleSystemsTemplateRightPilot
{
};
};
class PilotCamera
{
class OpticsIn
{
class Wide
{
opticsDisplayName="W";
initAngleX=0;
minAngleX=0;
maxAngleX=0;
initAngleY=0;
minAngleY=0;
maxAngleY=0;
initFov=0.5;
minFov=0.5;
maxFov=0.5;
directionStabilized=1;
visionMode[]=
{
"Normal",
"NVG"
};
thermalMode[]={0,1};
gunnerOpticsModel="a3\drones_f\weapons_f_gamma\reticle\uav_optics_gunner_wide_f.p3d";
};
showMiniMapInOptics=0;
showUAVViewpInOptics=0;
showSlingLoadManagerInOptics=1;
};
minTurn=0;
maxTurn=0;
initTurn=0;
minElev=80;
maxElev=80;
initElev=80;
maxXRotSpeed=0.5;
maxYRotSpeed=0.5;
pilotOpticsShowCursor=1;
controllable=0;
};
class EventHandlers: EventHandlers
{
init="if (local (_this select 0)) then {[(_this select 0), """", [], false] call bis_fnc_initVehicle;};";
};
ace_cargo_space=5;
};
class braf_caracal_ffv: braf_caracal_base
{
animationList[]=
{
"EFS_Hide",0,
"EFS_Cover_Hide",0,
"Door_L_1",1,
"Door_L_2",1,
"Door_R_1",1,
"Door_R_2",1,
"SAR_Hide",1,
"Pole_Hide",0,
"Hoist_Hide",0,
"SEAT_Hide",1,
"Flir_Hide",1,
"REVO_Hide",1,
"UH15_Hide",0,
"AH15_Hide",1
};
class UserActions
{
class Deploy_Left_Pole
{
displayname="<t color='#ffaa00'> deploy left pole </t>";
position="window_pos";
showWindow=1;
radius=5;
priority=1;
onlyForPlayer=0;
condition="this animationphase 'Pole_Hide' < 0.1 AND this animationphase 'Pole_L_Rot' < 0.1 AND (player in crew this) AND this animationphase 'Door_L_1' > 0.9";
statement="this animate ['Pole_L_Rot',1]";
};
class Recover_Left_Pole: Deploy_Left_Pole
{
displayname="<t color='#00ff22'> recover left pole </t>";
condition="this animationphase 'Pole_Hide' < 0.1 AND this animationphase 'Pole_L_Rot' > 0.9 AND (player in crew this) AND this animationphase 'Door_L_1' > 0.9";
statement="this animate ['Pole_L_Rot',0]";
};
class Deploy_Right_Pole: Deploy_Left_Pole
{
displayname="<t color='#ffaa00'> deploy right pole </t>";
condition="this animationphase 'Pole_Hide' < 0.1 AND this animationphase 'Pole_R_Rot' < 0.1 AND (player in crew this) AND this animationphase 'Door_R_1' > 0.9";
statement="this animate ['Pole_R_Rot',1]";
};
class Recover_Right_Pole: Deploy_Left_Pole
{
displayname="<t color='#00ff22'> recover right pole </t>";
condition="this animationphase 'Pole_Hide' < 0.1 AND this animationphase 'Pole_R_Rot' > 0.9 AND (player in crew this) AND this animationphase 'Door_R_1' > 0.9";
statement="this animate ['Pole_R_Rot',0]";
};
class Open_Window_Left
{
displayname="Open Left Window";
position="window_pos";
showWindow=1;
radius=5;
priority=0;
onlyForPlayer=0;
condition="this animationphase 'Window_1' < 0.1 AND (player in crew this)";
statement="this animate ['Window_1',1]";
};
class Close_Window_Left: Open_Window_Left
{
displayname="Close Left Window";
condition="this animationphase 'Window_1' > 0.9 AND (player in crew this)";
statement="this animate ['Window_1',0]";
};
class Open_Window_Right: Open_Window_Left
{
displayname="Open Window Door";
condition="this animationphase 'Window_2' < 0.1 AND (player in crew this)";
statement="this animate ['Window_2',1]";
};
class Close_Window_Right: Open_Window_Left
{
displayname="Close Right Window";
condition="this animationphase 'Window_2' > 0.9 AND (player in crew this)";
statement="this animate ['Window_2',0]";
};
class NVG_ON
{
displayname="Turn NVG lights on";
position="window_pos";
showWindow=1;
radius=5;
priority=0;
onlyForPlayer=0;
condition="this animationphase 'NVG_Hide' > 0.9 AND (player in crew this)";
statement="this animate ['NVG_Hide',0]";
};
class NVG_OFF: NVG_ON
{
displayname="Turn NVG lights off";
condition="this animationphase 'NVG_Hide' < 0.1 AND (player in crew this)";
statement="this animate ['NVG_Hide',1]";
};
};
ace_fastroping_enabled=1;
ace_fastroping_ropeOrigins[]=
{
"ropeOriginLeft",
"ropeOriginRight",
};
ace_fastroping_friesType="ACE_friesAnchorBar";
ace_fastroping_friesAttachmentPoint[]=
{
0.065,2.2,-0.15
};
ace_fastroping_onPrepare="ace_fastroping_fnc_onPrepareCommon";
ace_fastroping_onCut="ace_fastroping_fnc_onCutCommon";
class Attributes
{
class ace_fastroping_equipFRIES
{
property="ace_fastroping_equipFRIES";
control="Checkbox";
displayName="$STR_ace_fastroping_Eden_equipFRIES";
tooltip="$STR_ace_fastroping_Eden_equipFRIES_Tooltip";
expression="if (_value) then {[_this] call ace_fastroping_fnc_equipFRIES}";
typeName="BOOL";
condition="objectVehicle";
defaultValue=0;
};
};
transportSoldier=27;
cargoProxyIndexes[]={1,2,3,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31};
getInProxyOrder[]={1,2,3,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31};
class CargoTurret;
class Turrets: Turrets
{
class braf_copilotturret: braf_copilotturret{};
class braf_cargo_heli_r_1: CargoTurret
{
gunnerAction="passenger_inside_2";
gunnerName="Right Shooter 1";
gunnerGetInAction="GetInLow";
gunnerGetOutAction="GetOutLow";
memoryPointsGetInGunner="pos_gunner_r";
memoryPointsGetInGunnerDir="dir_gunner_r";
gunnerCompartments="Compartment2";
proxyIndex=4;
commanding=3;
isPersonTurret=1;
minTurn=-60;
maxTurn=60;
minElev=-50;
maxElev=28;
};
class braf_cargo_heli_r_2: braf_cargo_heli_r_1
{
gunnerName="Right Shooter 2";
memoryPointsGetInGunner="pos_gunner_r";
memoryPointsGetInGunnerDir="dir_gunner_r";
proxyIndex=5;
};
class braf_cargo_heli_l_1: braf_cargo_heli_r_1
{
gunnerName="Left Shooter 2";
memoryPointsGetInGunner="pos_gunner_l";
memoryPointsGetInGunnerDir="dir_gunner_l";
proxyIndex=6;
};
class braf_cargo_heli_l_2: braf_cargo_heli_r_1
{
gunnerName="Left Shooter 1";
memoryPointsGetInGunner="pos_gunner_l";
memoryPointsGetInGunnerDir="dir_gunner_l";
proxyIndex=7;
};
};
};
class braf_caracal_1: braf_caracal_ffv
{
author = "BRAF TEAM";
_generalMacro="braf_caracal_1";
scope=2;
side=2;
scopeCurator=2;
scopeArsenal=2;
displayName="HM-4 Jaguar (Fast Rope)";
editorPreview="\braf\braf_insignia\editorpreview\air\braf_caracal_1.jpg";
};
class braf_caracal_2: braf_caracal_base
{
author = "BRAF TEAM";
_generalMacro="braf_caracal_2";
scope=2;
side=2;
scopeCurator=2;
scopeArsenal=2;
displayName="HM-4 Jaguar (SAR)";
editorPreview="\braf\braf_insignia\editorpreview\air\braf_caracal_2.jpg";
transportSoldier=0;
typicalCargo[]={};
cargoAction[]={};
cargoProxyIndexes[]={};
getInProxyOrder[]={};
class CargoTurret;
animationList[]=
{
"EFS_Hide",0,
"EFS_Cover_Hide",0,
"SAR_Hide",0,
"Pole_Hide",1,
"Hoist_Hide",1,
"SEAT_Hide",1,
"Flir_Hide",0,
"REVO_Hide",1,
"UH15_Hide",0,
"AH15_Hide",1,
"Door_L_1",1,
"Door_L_2",1,
"Door_R_1",1,
"Door_R_2",1
};
class UserActions
{
class Deploy_Rescue_Seat
{
displayname="<t color='#ffaa00'> deploy rescue seat </t>";
position="window_pos";
showWindow=1;
radius=20;
priority=1;
onlyForPlayer=0;
condition="this animationphase 'Hoist_Hide' > 0.9 AND (player in crew this) AND this animationphase 'Door_R_1' > 0.9 AND !(""braf_rescue_seat"" in (this getVariable ['braf_hoist_spent_payloads', []]))";
statement="[this, ""deploy"", ""braf_rescue_seat""] call BRAF_fnc_hoist; this animate ['Hoist_Hide',-0.5]";
};
class Deploy_Rescue_Basket: Deploy_Rescue_Seat
{
displayname="<t color='#ffaa00'> deploy rescue basket </t>";
condition="this animationphase 'Hoist_Hide' > 0.9 AND (player in crew this) AND this animationphase 'Door_R_1' > 0.9 AND !(""braf_rescue_basket"" in (this getVariable ['braf_hoist_spent_payloads', []]))";
statement="[this, ""deploy"", ""braf_rescue_basket""] call BRAF_fnc_hoist; this animate ['Hoist_Hide',-0.5]";
};
class Deploy_Rescue_Stretcher: Deploy_Rescue_Seat
{
displayname="<t color='#ffaa00'> deploy rescue stretcher </t>";
condition="this animationphase 'Hoist_Hide' > 0.9 AND (player in crew this) AND this animationphase 'Door_R_1' > 0.9 AND !(""braf_rescue_stretcher"" in (this getVariable ['braf_hoist_spent_payloads', []]))";
statement="[this, ""deploy"", ""braf_rescue_stretcher""] call BRAF_fnc_hoist; this animate ['Hoist_Hide',-0.5]";
};
class Hoist_Down: Deploy_Rescue_Seat
{
displayname="<t color='#ffaa00'> extend cable hook </t>";
condition="this animationphase 'Hoist_Hide' < -0.4 AND this animationphase 'Hoist_Hide' > -0.6 AND (player in crew this) AND this animationphase 'Door_R_1' > 0.9";
statement="[this, ""down""] call BRAF_fnc_hoist; this animate ['Hoist_Hide',-1]; this say3d ""Winch""";
};
class Hoist_Up: Deploy_Rescue_Seat
{
displayname="<t color='#ffaa00'> recover cable hook </t>";
condition="this animationphase 'Hoist_Hide' < -0.9 AND (player in crew this) AND this animationphase 'Door_R_1' > 0.9";
statement="[this, ""up""] call BRAF_fnc_hoist; this animate ['Hoist_Hide',-0.5]; this say3d ""Winch""";
};
class Recover_Rescue_Seat: Deploy_Rescue_Seat
{
displayname="<t color='#ffaa00'> retrieve rescue payload </t>";
condition="(player in crew this) AND this animationphase 'Door_R_1' > 0.9 AND this animationphase 'Hoist_Hide' < -0.4 AND this animationphase 'Hoist_Hide' > -0.6";
statement="[this, ""recover""] call BRAF_fnc_hoist; this animate ['Hoist_Hide',1]";
};
class Hoist_Cut: Deploy_Rescue_Seat
{
displayname="<t color='#b31d00'> cut hoist hook cable </t>";
condition="(player in crew this) AND this animationphase 'Door_R_1' > 0.9 AND this animationphase 'Hoist_Hide' < 0";
statement="[this, ""cut""] call BRAF_fnc_hoist; this animate ['Hoist_Hide',1]";
};
class Open_Door_Left
{
displayname="Open Left Door";
position="window_pos";
showWindow=0;
radius=5;
priority=0;
onlyForPlayer=0;
condition="false";
statement="this animate ['Door_L_1',1], this animate ['Door_L_2',1], this say3d ""Doors""";
};
class Close_Door_Left: Open_Door_Left
{
displayname="Close Left Door";
condition="false";
statement="this animate ['Door_L_1',0], this animate ['Door_L_2',0], this say3d ""Doors""";
};
class Open_Door_Right: Open_Door_Left
{
displayname="Open Right Door";
condition="false";
statement="this animate ['Door_R_1',1], this animate ['Door_R_2',1], this say3d ""Doors""";
};
class Close_Door_Right: Open_Door_Left
{
displayname="Close Right Door";
condition="false";
statement="this animate ['Door_R_1',0], this animate ['Door_R_2',0], this say3d ""Doors""";
};
class Open_Window_Left
{
displayname="Open Left Window";
position="window_pos";
showWindow=1;
radius=5;
priority=0;
onlyForPlayer=0;
condition="this animationphase 'Window_1' < 0.1 AND (player in crew this)";
statement="this animate ['Window_1',1], this say3d ""Doors""";
};
class Close_Window_Left: Open_Window_Left
{
displayname="Close Left Window";
condition="this animationphase 'Window_1' > 0.9 AND (player in crew this)";
statement="this animate ['Window_1',0], this say3d ""Doors""";
};
class Open_Window_Right: Open_Window_Left
{
displayname="Open Right Window";
condition="this animationphase 'Window_2' < 0.1 AND (player in crew this)";
statement="this animate ['Window_2',1], this say3d ""Doors""";
};
class Close_Window_Right: Open_Window_Left
{
displayname="Close Right Window";
condition="this animationphase 'Window_2' > 0.9 AND (player in crew this)";
statement="this animate ['Window_2',0], this say3d ""Doors""";
};
class NVG_ON
{
displayname="Turn NVG lights on";
position="window_pos";
showWindow=1;
radius=5;
priority=0;
onlyForPlayer=0;
condition="this animationphase 'NVG_Hide' > 0.9 AND (player in crew this)";
statement="this animate ['NVG_Hide',0]";
};
class NVG_OFF: NVG_ON
{
displayname="Turn NVG lights off";
condition="this animationphase 'NVG_Hide' < 0.1 AND (player in crew this)";
statement="this animate ['NVG_Hide',1]";
};
};
class Turrets: Turrets
{
class braf_copilotturret: braf_copilotturret
{
class Reflectors: Reflectors
{
class Right: Right{};
class Left: Left{};
class Searchlight: Right
{
position="light_3_pos";
direction="light_3_dir";
hitpoint="light_3_hitpoint";
selection="light_3";
color[]={1900,1800,1700};
ambient[]={5,5,5};
size=1;
innerAngle=10;
outerAngle=35;
coneFadeCoef=10;
intensity=250;
useFlare=1;
daylight=1;
flareSize=4;
class Attenuation
{
start=0;
constant=0;
linear=0;
quadratic=0.05;
hardLimitStart=300;
hardLimitEnd=600;
};
};
};
};
class braf_crew_chief_turret: MainTurret
{
body="mainTurret";
gun="mainGun";
gunBeg="gunBeg";
gunEnd="gunEnd";
animationSourceBody="mainturret";
animationSourceGun="mainGun";
memoryPointsGetInGunner="pos_gunner";
memoryPointsGetInGunnerDir="dir_gunner";
stabilizedInAxes=3;
proxyIndex=2;
primaryGunner=1;
memoryPointGunnerOptics="rendertarget0_pos";
LODTurnedIn=1100;
LODTurnedOut=1100;
minElev=-120;
maxElev=30;
initElev=0;
minTurn=-180;
maxTurn=180;
initTurn=0;
gunnerName="Crew Chief";
isCopilot=0;
turretInfoType="braf_rscoptics_air_flir";
weapons[]=
{
"Laserdesignator_mounted"
};
soundServo[]=
{
"",
0.0099999998,
1,
30
};
magazines[]=
{
"Laserbatteries"
};
usePiP=1;
inGunnerMayFire=1;
gunnerAction="BRAF_pantera_pilot";
gunnerInAction="copilot_Heli_Light_02";
precisegetinout=1;
gunnerGetInAction="copilot_Heli_Light_02_Enter";
gunnerGetOutAction="copilot_Heli_Light_02_Exit";
gunnerOpticsEffect[]={};
gunnerOpticsModel="";
gunnerLeftHandAnimName="";
gunnerRightHandAnimName="";
gunnerLeftFootAnimName="";
gunnerRightFootAnimName="";
gunnerCompartments="Compartment2";
class OpticsIn
{
class Wide
{
opticsDisplayName="WFOV";
initAngleX=0;
minAngleX=-120;
maxAngleX=30;
initAngleY=0;
minAngleY=-180;
maxAngleY=180;
initFov=0.5236;
minFov=0.5236;
maxFov=0.5236;
visionMode[]=
{
"Normal",
"Ti"
};
thermalMode[]={0,1};
thermalNoise[]=
{
0.5,
1.25,
2.5,
0.75,
1,
0,
0,
0.95
};
gunnerOpticsModel="\braf\braf_optics_air\starsaphire\braf_starsaphire_w.p3d";
gunnerOpticsEffect[]={};
directionStabilized=1;
};
class Medium: Wide
{
opticsDisplayName="MFOV";
initFov=0.0593;
minFov=0.0593;
maxFov=0.0593;
gunnerOpticsModel="\braf\braf_optics_air\starsaphire\braf_starsaphire_m.p3d";
};
class Narrow: Wide
{
opticsDisplayName="NFOV";
gunnerOpticsModel="\braf\braf_optics_air\starsaphire\braf_starsaphire_n.p3d";
initFov=0.0140;
minFov=0.0140;
maxFov=0.0140;
};
class Narrower: Narrow
{
opticsDisplayName="NFOV 2X";
initFov=0.0070;
minFov=0.0070;
maxFov=0.0070;
};
class UltraNarrow: Narrow
{
opticsDisplayName="NFOV 4X";
initFov=0.0035;
minFov=0.0035;
maxFov=0.0035;
};
};
class OpticsOut
{
class Monocular
{
initAngleX=0;
minAngleX=-30;
maxAngleX=30;
initAngleY=0;
minAngleY=-100;
maxAngleY=100;
minFov=0.25;
maxFov=1.25;
initFov=0.75;
visionMode[]=
{
"Normal",
"NVG"
};
gunnerOpticsModel="";
gunnerOpticsEffect[]={};
};
};
class ViewGunner: ViewPilot
{
initAngleX=-15;
};
startEngine=0;
gunnerHasFlares=0;
class HitPoints
{
class HitTurret
{
armor=1;
material=-1;
name="flir_hit";
visual="mainTurret";
armorComponent="mainTurret";
passThrough=0.2;
radius=0.25;
};
class HitGun
{
armor=1;
material=-1;
name="flir_hit";
visual="mainGun";
armorComponent="mainGun";
passThrough=0.2;
radius=0.25;
};
};
class Components
{
class VehicleSystemsDisplayManagerComponentLeft: VehicleSystemsTemplateLeftPilot
{
};
class VehicleSystemsDisplayManagerComponentRight: VehicleSystemsTemplateRightPilot
{
};
};
};
class braf_sar_medic_r_1: CargoTurret
{
gunnerAction="passenger_inside_2";
gunnerName="Medical Rescuer 1";
gunnerGetInAction="GetInLow";
gunnerGetOutAction="GetOutLow";
memoryPointsGetInGunner="pos_gunner_r";
memoryPointsGetInGunnerDir="dir_gunner_r";
gunnerCompartments="Compartment2";
proxyIndex=4;
commanding=3;
isPersonTurret=1;
minTurn=-60;
maxTurn=60;
initTurn=0;
minElev=-50;
maxElev=28;
initElev=0;
};
class braf_sar_medic_r_2: braf_sar_medic_r_1
{
gunnerName="Medical Rescuer 2";
proxyIndex=5;
};
class braf_sar_medic_l_1: braf_sar_medic_r_1
{
gunnerName="Medical Rescuer 3";
memoryPointsGetInGunner="pos_gunner_l";
memoryPointsGetInGunnerDir="dir_gunner_l";
proxyIndex=6;
};
class braf_sar_medic_l_2: braf_sar_medic_l_1
{
gunnerName="Medical Rescuer 4";
proxyIndex=7;
};
};
};
class braf_caracal_3: braf_caracal_base
{
author = "BRAF TEAM";
_generalMacro="braf_caracal_3";
scope=2;
side=2;
scopeCurator=2;
scopeArsenal=2;
displayName="HM-4 Jaguar (Heavy Cargo)";
editorPreview="\braf\braf_insignia\editorpreview\air\braf_caracal_3.jpg";
transportSoldier=0;
typicalCargo[]={};
cargoProxyIndexes[]={};
getInProxyOrder[]={};
cargoAction[]={};
animationList[]=
{
"EFS_Hide",0,
"EFS_Cover_Hide",0,
"SAR_Hide",1,
"Pole_Hide",1,
"Hoist_Hide",0,
"SEAT_Hide",0,
"Flir_Hide",1,
"REVO_Hide",1,
"UH15_Hide",0,
"AH15_Hide",1
};
};
class braf_caracal_4: braf_caracal_1
{
author = "BRAF TEAM";
_generalMacro="braf_caracal_4";
displayName="UH-15 Super Cougar (Fast Rope)";
canFloat=1;
waterDamageEngine=0.2;
waterEffect="HeliWater";
waterLeakiness=50;
waterPPInVehicle=1;
waterResistance=1;
waterResistanceCoef=0.5;
class EventHandlers: EventHandlers
{
init="if (local (_this select 0)) then {[(_this select 0), """", [], false] call bis_fnc_initVehicle; [(_this select 0), ""Init""] call BRAF_fnc_efs;};";
};
class UserActions: UserActions
{
class Arm_EFS
{
displayname="<t color='#ffaa00'> arm efs </t>";
position="window_pos";
showWindow=1;
radius=10;
priority=1;
onlyForPlayer=0;
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'SAFE')";
statement="[this, ""arm""] call BRAF_fnc_efs";
};
class Disarm_EFS: Arm_EFS
{
displayname="<t color='#ffaa00'> disarm efs </t>";
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','ARMED']) == 'ARMED')";
statement="[this, ""disarm""] call BRAF_fnc_efs";
};
class Deploy_Floats: Arm_EFS
{
displayname="<t color='#b31d00'> deploy floats </t>";
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','ARMED']) == 'ARMED')";
statement="[this, ""deployfloats""] call BRAF_fnc_efs";
};
};
editorPreview="\braf\braf_insignia\editorpreview\air\braf_caracal_4.jpg";
faction="braf_navy";
crew="braf_characters_aviation_navy_pilot";
hiddenSelectionsTextures[]=
{
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\camo1_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\hu2_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\camo3_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo4_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo5_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\camo6_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\glass_ca.paa"
};
textureList[]=
{
"HU2",0.5,
"HU41",0.5
};
animationList[]=
{
"EFS_Hide",0,
"EFS_Cover_Hide",1,
"Door_L_1",1,
"Door_L_2",1,
"Door_R_1",1,
"Door_R_2",1,
"SAR_Hide",1,
"Pole_Hide",0,
"Hoist_Hide",0,
"SEAT_Hide",1,
"Flir_Hide",1,
"REVO_Hide",1,
"UH15_Hide",0,
"AH15_Hide",1
};
};
class braf_caracal_5: braf_caracal_2
{
author = "BRAF TEAM";
_generalMacro="braf_caracal_5";
displayName="UH-15A Super Cougar (SAR)";
editorPreview="\braf\braf_insignia\editorpreview\air\braf_caracal_5.jpg";
faction="braf_navy";
crew="braf_characters_aviation_navy_pilot";
canFloat=1;
waterDamageEngine=0.2;
waterEffect="HeliWater";
waterLeakiness=50;
waterPPInVehicle=1;
waterResistance=1;
waterResistanceCoef=0.5;
class EventHandlers: EventHandlers
{
init="if (local (_this select 0)) then {[(_this select 0), """", [], false] call bis_fnc_initVehicle; [(_this select 0), ""Init""] call BRAF_fnc_efs;};";
};
class UserActions: UserActions
{
class Arm_EFS
{
displayname="<t color='#ffaa00'> arm efs </t>";
position="window_pos";
showWindow=1;
radius=10;
priority=1;
onlyForPlayer=0;
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'SAFE')";
statement="[this, ""arm""] call BRAF_fnc_efs";
};
class Disarm_EFS: Arm_EFS
{
displayname="<t color='#ffaa00'> disarm efs </t>";
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','ARMED']) == 'ARMED')";
statement="[this, ""disarm""] call BRAF_fnc_efs";
};
class Deploy_Floats: Arm_EFS
{
displayname="<t color='#b31d00'> deploy floats </t>";
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','ARMED']) == 'ARMED')";
statement="[this, ""deployfloats""] call BRAF_fnc_efs";
};
};
animationList[]=
{
"EFS_Hide",0,
"EFS_Cover_Hide",1,
"SAR_Hide",0,
"Pole_Hide",1,
"Hoist_Hide",1,
"SEAT_Hide",1,
"Flir_Hide",0,
"REVO_Hide",1,
"UH15_Hide",0,
"AH15_Hide",1,
"Door_L_1",1,
"Door_L_2",1,
"Door_R_1",1,
"Door_R_2",1
};
hiddenSelectionsTextures[]=
{
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\camo1_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\hu2_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\camo3_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo4_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo5_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\camo6_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\glass_ca.paa"
};
textureList[]=
{
"HU2",0.5,
"HU41",0.5
};
};
class braf_caracal_6: braf_caracal_3
{
author = "BRAF TEAM";
_generalMacro="braf_caracal_6";
displayName="UH-15 Super Cougar (Heavy Cargo)";
editorPreview="\braf\braf_insignia\editorpreview\air\braf_caracal_6.jpg";
faction="braf_navy";
crew="braf_characters_aviation_navy_pilot";
canFloat=1;
waterDamageEngine=0.2;
waterEffect="HeliWater";
waterLeakiness=50;
waterPPInVehicle=1;
waterResistance=1;
waterResistanceCoef=0.5;
class EventHandlers: EventHandlers
{
init="if (local (_this select 0)) then {[(_this select 0), """", [], false] call bis_fnc_initVehicle; [(_this select 0), ""Init""] call BRAF_fnc_efs;};";
};
class UserActions: UserActions
{
class Arm_EFS
{
displayname="<t color='#ffaa00'> arm efs </t>";
position="window_pos";
showWindow=1;
radius=10;
priority=1;
onlyForPlayer=0;
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'SAFE')";
statement="[this, ""arm""] call BRAF_fnc_efs";
};
class Disarm_EFS: Arm_EFS
{
displayname="<t color='#ffaa00'> disarm efs </t>";
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','ARMED']) == 'ARMED')";
statement="[this, ""disarm""] call BRAF_fnc_efs";
};
class Deploy_Floats: Arm_EFS
{
displayname="<t color='#b31d00'> deploy floats </t>";
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','ARMED']) == 'ARMED')";
statement="[this, ""deployfloats""] call BRAF_fnc_efs";
};
};
animationList[]=
{
"EFS_Hide",0,
"EFS_Cover_Hide",1,
"SAR_Hide",1,
"Pole_Hide",1,
"Hoist_Hide",0,
"SEAT_Hide",0,
"Flir_Hide",1,
"REVO_Hide",1,
"UH15_Hide",0,
"AH15_Hide",1
};
hiddenSelectionsTextures[]=
{
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\camo1_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\hu2_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\camo3_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo4_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo5_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\mb\camo6_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\glass_ca.paa"
};
textureList[]=
{
"HU2",0.5,
"HU41",0.5
};
};
class braf_caracal_7: braf_caracal_1
{
author = "BRAF TEAM";
_generalMacro="braf_caracal_7";
displayName="H-36 Caracal (Fast Rope)";
editorPreview="\braf\braf_insignia\editorpreview\air\braf_caracal_7.jpg";
faction="braf_fab";
crew="braf_characters_aviation_air_force_pilot";
canFloat=1;
waterDamageEngine=0.2;
waterEffect="HeliWater";
waterLeakiness=50;
waterPPInVehicle=1;
waterResistance=1;
waterResistanceCoef=0.5;
class EventHandlers: EventHandlers
{
init="if (local (_this select 0)) then {[(_this select 0), """", [], false] call bis_fnc_initVehicle; [(_this select 0), ""Init""] call BRAF_fnc_efs;};";
};
class UserActions: UserActions
{
class Arm_EFS
{
displayname="<t color='#ffaa00'> arm efs </t>";
position="window_pos";
showWindow=1;
radius=10;
priority=1;
onlyForPlayer=0;
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'SAFE')";
statement="[this, ""arm""] call BRAF_fnc_efs";
};
class Disarm_EFS: Arm_EFS
{
displayname="<t color='#ffaa00'> disarm efs </t>";
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','ARMED']) == 'ARMED')";
statement="[this, ""disarm""] call BRAF_fnc_efs";
};
class Deploy_Floats: Arm_EFS
{
displayname="<t color='#b31d00'> deploy floats </t>";
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','ARMED']) == 'ARMED')";
statement="[this, ""deployfloats""] call BRAF_fnc_efs";
};
};
animationList[]=
{
"EFS_Hide",0,
"EFS_Cover_Hide",1,
"Door_L_1",1,
"Door_L_2",1,
"Door_R_1",1,
"Door_R_2",1,
"SAR_Hide",1,
"Pole_Hide",0,
"Hoist_Hide",0,
"SEAT_Hide",1,
"Flir_Hide",1,
"REVO_Hide",0,
"UH15_Hide",0,
"AH15_Hide",1
};
hiddenSelectionsTextures[]=
{
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\camo1_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\fab22_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\camo3_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo4_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo5_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\camo6_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\glass_ca.paa"
};
textureList[]=
{
"FAB22",0.33,
"Puma",0.33,
"Falcao",0.33
};
};
class braf_caracal_8: braf_caracal_2
{
author = "BRAF TEAM";
_generalMacro="braf_caracal_8";
displayName="H-36 Caracal (SAR)";
editorPreview="\braf\braf_insignia\editorpreview\air\braf_caracal_8.jpg";
faction="braf_fab";
crew="braf_characters_aviation_air_force_pilot";
canFloat=1;
waterDamageEngine=0.2;
waterEffect="HeliWater";
waterLeakiness=50;
waterPPInVehicle=1;
waterResistance=1;
waterResistanceCoef=0.5;
class EventHandlers: EventHandlers
{
init="if (local (_this select 0)) then {[(_this select 0), """", [], false] call bis_fnc_initVehicle; [(_this select 0), ""Init""] call BRAF_fnc_efs;};";
};
class UserActions: UserActions
{
class Arm_EFS
{
displayname="<t color='#ffaa00'> arm efs </t>";
position="window_pos";
showWindow=1;
radius=10;
priority=1;
onlyForPlayer=0;
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'SAFE')";
statement="[this, ""arm""] call BRAF_fnc_efs";
};
class Disarm_EFS: Arm_EFS
{
displayname="<t color='#ffaa00'> disarm efs </t>";
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','ARMED']) == 'ARMED')";
statement="[this, ""disarm""] call BRAF_fnc_efs";
};
class Deploy_Floats: Arm_EFS
{
displayname="<t color='#b31d00'> deploy floats </t>";
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','ARMED']) == 'ARMED')";
statement="[this, ""deployfloats""] call BRAF_fnc_efs";
};
};
hiddenSelectionsTextures[]=
{
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\camo1_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\fab22_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\camo3_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo4_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo5_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\camo6_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\glass_ca.paa"
};
textureList[]=
{
"FAB22",0.33,
"Puma",0.33,
"Falcao",0.33
};
animationList[]=
{
"EFS_Hide",0,
"EFS_Cover_Hide",1,
"SAR_Hide",0,
"Pole_Hide",1,
"Hoist_Hide",1,
"SEAT_Hide",1,
"Flir_Hide",0,
"REVO_Hide",1,
"UH15_Hide",0,
"AH15_Hide",1,
"Door_L_1",1,
"Door_L_2",1,
"Door_R_1",1,
"Door_R_2",1
};
};
class braf_caracal_9: braf_caracal_3
{
author = "BRAF TEAM";
_generalMacro="braf_caracal_9";
displayName="H-36 Caracal (Heavy Cargo)";
editorPreview="\braf\braf_insignia\editorpreview\air\braf_caracal_9.jpg";
faction="braf_fab";
crew="braf_characters_aviation_air_force_pilot";
canFloat=1;
waterDamageEngine=0.2;
waterEffect="HeliWater";
waterLeakiness=50;
waterPPInVehicle=1;
waterResistance=1;
waterResistanceCoef=0.5;
class EventHandlers: EventHandlers
{
init="if (local (_this select 0)) then {[(_this select 0), """", [], false] call bis_fnc_initVehicle; [(_this select 0), ""Init""] call BRAF_fnc_efs;};";
};
class UserActions: UserActions
{
class Arm_EFS
{
displayname="<t color='#ffaa00'> arm efs </t>";
position="window_pos";
showWindow=1;
radius=10;
priority=1;
onlyForPlayer=0;
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'SAFE')";
statement="[this, ""arm""] call BRAF_fnc_efs";
};
class Disarm_EFS: Arm_EFS
{
displayname="<t color='#ffaa00'> disarm efs </t>";
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','ARMED']) == 'ARMED')";
statement="[this, ""disarm""] call BRAF_fnc_efs";
};
class Deploy_Floats: Arm_EFS
{
displayname="<t color='#b31d00'> deploy floats </t>";
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','ARMED']) == 'ARMED')";
statement="[this, ""deployfloats""] call BRAF_fnc_efs";
};
};
hiddenSelectionsTextures[]=
{
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\camo1_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\fab22_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\camo3_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo4_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\camo5_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\fab\camo6_co.paa",
"braf\braf_air\braf_helicopters\braf_caracal\data\glass_ca.paa"
};
textureList[]=
{
"FAB22",0.33,
"Puma",0.33,
"Falcao",0.33
};
animationList[]=
{
"EFS_Hide",0,
"EFS_Cover_Hide",1,
"SAR_Hide",1,
"Pole_Hide",1,
"Hoist_Hide",0,
"SEAT_Hide",0,
"Flir_Hide",1,
"REVO_Hide",0,
"UH15_Hide",0,
"AH15_Hide",1
};
};
class braf_caracal_10: braf_caracal_2
{
author = "BRAF TEAM";
_generalMacro="braf_caracal_10";
displayName="AH-15B Super Cougar (ASW)";
//editorPreview="\braf\braf_insignia\editorpreview\air\braf_caracal_10.jpg";
faction="braf_navy";
canFloat=1;
waterDamageEngine=0.2;
waterEffect="HeliWater";
waterLeakiness=50;
waterPPInVehicle=1;
waterResistance=1;
waterResistanceCoef=0.5;
transportSoldier=0;
typicalCargo[]={};
cargoProxyIndexes[]={};
getInProxyOrder[]={};
class EventHandlers: EventHandlers
{
init="if (local (_this select 0)) then {[(_this select 0), """", [], false] call bis_fnc_initVehicle; [(_this select 0), ""Init""] call BRAF_fnc_efs;};";
};
class UserActions
{
class Arm_EFS
{
displayname="<t color='#ffaa00'> arm efs </t>";
position="window_pos";
showWindow=1;
radius=10;
priority=1;
onlyForPlayer=0;
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','SAFE']) == 'SAFE')";
statement="[this, ""arm""] call BRAF_fnc_efs";
};
class Disarm_EFS: Arm_EFS
{
displayname="<t color='#ffaa00'> disarm efs </t>";
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','ARMED']) == 'ARMED')";
statement="[this, ""disarm""] call BRAF_fnc_efs";
};
class Deploy_Floats: Arm_EFS
{
displayname="<t color='#b31d00'> deploy floats </t>";
condition="getNumber (configOf this >> 'canFloat') == 1 AND this animationphase 'EFS_Cover_Hide' > 0.9 AND (player in crew this) AND ((this getVariable ['braf_efs_state','ARMED']) == 'ARMED')";
statement="[this, ""deployfloats""] call BRAF_fnc_efs";
};
class NVG_ON
{
displayname="Turn NVG lights on";
position="window_pos";
showWindow=1;
radius=5;
priority=0;
onlyForPlayer=0;
condition="this animationphase 'NVG_Hide' > 0.9 AND (player in crew this)";
statement="this animate ['NVG_Hide',0]";
};
class NVG_OFF: NVG_ON
{
displayname="Turn NVG lights off";
condition="this animationphase 'NVG_Hide' < 0.1 AND (player in crew this)";
statement="this animate ['NVG_Hide',1]";
};
};
class Components: Components
{
class TransportPylonsComponent
{
class Pylons
{
class PylonLeft1
{
attachment="braf_mag_am39_pylon_1rnd";
priority=5;
turret[]={1};
hardpoints[]={"BRAF_AM39_PYLON"};
UIposition[]={0.06,0.4};
};
class PylonRight1: PylonLeft1
{
mirroredMissilePos=1;
UIposition[]={0.59,0.4};
};
};
class Presets
{
class Empty
{
displayName="$STR_empty";
attachment[]={};
};
class AM39
{
displayName="AM39 Exocet 2x";
attachment[]={
"braf_mag_am39_pylon_1rnd",
"braf_mag_am39_pylon_1rnd"
};
};
};
};
};
class CargoTurret;
class Turrets: Turrets
{
class braf_copilotturret: braf_copilotturret{};
class braf_am39_gunner_turret: braf_crew_chief_turret
{
gunnerName="Weapons Officer";
gunnerCompartments="Compartment2";
proxyIndex=3;
isCopilot=0;
startEngine=0;
weapons[]=
{
"Laserdesignator_mounted"
};
magazines[]=
{
"Laserbatteries"
};
};
};
textureList[]=
{
"HU2",1
};
animationList[]=
{
"EFS_Hide",0,
"EFS_Cover_Hide",1,
"SAR_Hide",1,
"Pole_Hide",1,
"Hoist_Hide",0,
"SEAT_Hide",1,
"Flir_Hide",0,
"REVO_Hide",1,
"UH15_Hide",1,
"AH15_Hide",0
};
};