//Get this addons macro //get the macro for the air subaddon //get generlized macros #include "../../../RD501_main/config_macros.hpp" //General name of the vehicle // #define vehicle_addon ARC_170 // #define patch_name MODNAME##vehicle_addon##_Patches // #define vehicle_classname MODNAME##_##vehicle_addon // #define new_arc170_class(name) vehicle_classname##_##name class CfgPatches { class macro_patch_name(ARC_170) { addonRootClass=macro_patch_name(vehicles) requiredAddons[]= { macro_patch_name(vehicles) }; requiredVersion=0.1; units[]= { macro_new_vehicle(ARC_170,MKII) }; weapons[]= { }; }; }; #include "../../common/sensor_templates.hpp" class CfgVehicles { class Plane_Base_F; class Xarc: Plane_Base_F { class Turrets; }; class swop_arc_t: Xarc { class Turrets:Turrets { class MainTurret; class CopilotTurret; }; class Components; class ACE_SelfActions; class EventHandlers{}; }; class macro_new_vehicle(ARC_170,MKII):swop_arc_t { scope=2; scopeCurator=2; side=1; displayName = "ARC-170"; forceInGarage = 1; ballisticsComputer = 1+8; faction = macro_republic_faction editorSubcategory = macro_editor_cat_air(Republic_vtol) vehicleClass = macro_editor_vehicle_type_air(Republic) visualTarget = 1; visualTargetSize = 10; reportOwnPosition = true; radarTargetSize = 10; radarTarget = 1; nvTarget = 1; laserTarget = 1; laserScanner = 1; irTarget = 1; irTargetSize = 10; countermeasureActivationRadius = 2000; armor = 500; vtol=4; scopeCurator=2; altFullForce = 16000; altNoForce = 19000; driverIsCommander = true; enableManualFire = 0; memoryPointGun[] = {"cannon1","cannon2",""}; muzzleEnd[] = {"cannon1","cannon2",""}; muzzlePos[] = {"cannon1","cannon2",""}; draconicTorqueXCoef = 0;// memoryPointLRocket = ""; memoryPointRRocket = ""; memoryPointLMissile = ""; memoryPointRMissile = ""; weaponLockSystem = 31; maxSpeed = 2000; lightOnGear = 0; rudderInfluence = 0.1;//0.766 rudderCoef[] = {0.2, 0.7, 1.5, 2, 2, 2.1, 2.4, 2.5, 2.6, 2.7, 2.7, 2.7, 2.7};//0.2, 0.7, 1.5, 2, 2, 2.1, 2.4, 2.5, 2.6, 2.7, 2.7, 2.7, 2.7 rudderControlsSensitivityCoef = 4; aileronSensitivity = 1*2; gearsUpFrictionCoef = 0; elevatorSensitivity = 1*2; airBrakeFrictionCoef = 80.4; VTOLYawInfluence = 3*1.5*2; VTOLPitchInfluence = 2*1.5*1.0; VTOLRollInfluence = 3*2*1; weapons[] = { macro_basic_air_weapons, macro_new_weapon(generic,republic_aircraft_cannon), macro_new_weapon(generic,kannon), macro_new_weapon(wynd,a2a), macro_new_weapon(wynd,agm), macro_new_weapon(wynd,ugm) }; magazines[] = { macro_new_mag(generic_aircraft_cannon_green,1000), macro_new_mag(a2a,4), macro_new_mag(agm,6), macro_new_mag(ugm,10), macro_basic_air_mags, macro_new_mag(Kannon,100) }; gunnerUsesPilotView = 1; class Turrets:Turrets { //gunner class MainTurret:MainTurret { stabilizedInAxes = 4; weaponLockSystem = 31; allowTabLock = 1; showCrewAim = 4; canUseScanner = 1; weapons[] = { macro_basic_air_weapons, macro_new_weapon(generic,republic_aircraft_cannon) }; magazines[] = { macro_basic_air_mags, macro_new_mag(generic_aircraft_cannon_green,1000) }; memoryPointLRocket = "muzzle_tail"; memoryPointRRocket = "muzzle_tail"; memoryPointLMissile = "muzzle_tail"; memoryPointRMissile = "muzzle_tail"; class OpticsIn { class Wide { opticsDisplayName = "W"; initAngleX = 0; minAngleX = -360; maxAngleX = 360; initAngleY = 0; minAngleY = -350; maxAngleY = 350; initFov = 0.7; minFov = 0.03; maxFov = 1.2; directionStabilized = 0; horizontallyStabilized = 0; stabilizedInAxes = 3; visionMode[] = {"Normal", "NVG", "Ti"}; thermalMode[] = { 1,7}; gunnerOpticsModel = "A3\drones_f\Weapons_F_Gamma\Reticle\UGV_01_Optics_Gunner_F.p3d"; }; class Medium: Wide { opticsDisplayName = "M"; initFov = 0.093; minFov = 0.093; maxFov = 0.093; gunnerOpticsModel = "\A3\Weapons_F_Beta\Reticle\Heli_Attack_01_Optics_Gunner_medium_F"; directionStabilized = 1; horizontallyStabilized = 1; stabilizedInAxes = 3; }; class Narrow: Wide { opticsDisplayName = "N"; gunnerOpticsModel = "\A3\Weapons_F_Beta\Reticle\Heli_Attack_01_Optics_Gunner_narrow_F"; initFov = 0.029; minFov = 0.029; maxFov = 0.029; directionStabilized = 1; horizontallyStabilized = 1; stabilizedInAxes = 3; }; }; minElev = -15;//-10 maxElev = 60;//45 }; //navigator class CopilotTurret:CopilotTurret { //stabilizedInAxes = 4; animationSourceHatch = ""; // minElev = -5; // maxElev = 40; // initElev = -120; // minTurn = -360; // maxTurn = 360; // initTurn = 0; weaponLockSystem = 31; minElev = -90; maxElev = 5; initElev = 0//-45; minTurn = -300; maxTurn = 300; initTurn = 0; maxHorizontalRotSpeed = 1.2*2; maxVerticalRotSpeed = 1.2*2; ballisticsComputer = 1+8; allowTabLock = 1; showCrewAim = 4; canUseScanner = 1; stabilizedInAxes = 3; maxXRotSpeed=0.30000001; maxYRotSpeed=0.30000001; pilotOpticsShowCursor=1; controllable=1; memoryPointGunnerOptics = "PilotCamera_Pos"; memoryPointDriverOptics = "PilotCamera_Pos"; memoryPointGunnerOutOptics = "PilotCamera_Pos"; weapons[] = { //macro_new_weapon(generic,republic_aircraft_cannon), //macro_new_weapon(bomb,SDB), //macro_new_weapon(bomb,cluster), //macro_new_weapon(bomb,LGB), //macro_basic_air_weapons }; magazines[] = { //macro_new_mag(generic_aircraft_cannon_green,1000), //macro_basic_air_mags, //macro_new_mag(sdb_bomb,4), //macro_new_mag(cluster_bomb,4), //macro_new_mag(lgb_bomb,4) }; memoryPointGun = "kulas"; muzzleEnd[] = {"cannon1","cannon2"}; muzzlePos[] = {"cannon1","cannon2"}; controllable=0; gunBeg = "gun_begin"; gunEnd = "gun_end"; primary = 0; primaryGunner = 0; enableManualFire = 0; class Viewoptics { minAngleX = 0; maxAngleX = 0; initAngleX = 0; minAngleY = -15; maxAngleY = 15; initAngleY = 0; initFov = 0.75; minFov = 0.25; maxFov = 0.75; visionMode[]= { "Normal", "NVG", "Ti" }; thermalMode[]={0,1,7}; }; class OpticsIn { class Wide { initAngleX = 0; minAngleX = 0; maxAngleX = 0; initAngleY = 0; minAngleY = -15; maxAngleY = 15; initFov = 0.466; minFov = 0.466; maxFov = 0.466; opticsDisplayName = "W"; visionMode[]= { "Normal", "NVG", "Ti" }; thermalMode[]={0,1,7}; gunnerOpticsModel = "\A3\Weapons_F_Beta\Reticle\Heli_Attack_01_Optics_Gunner_wide_F"; }; class Medium: Wide { initFov = 0.093; minFov = 0.093; maxFov = 0.093; opticsDisplayName = "M"; gunnerOpticsModel = "\A3\Weapons_F_Beta\Reticle\Heli_Attack_01_Optics_Gunner_medium_F"; }; class Narrow: Wide { initFov = 0.029; minFov = 0.029; maxFov = 0.029; opticsDisplayName = "N"; gunnerOpticsModel = "\A3\Weapons_F_Beta\Reticle\Heli_Attack_01_Optics_Gunner_narrow_F"; }; }; }; }; class pilotCamera { class OpticsIn { class Wide { opticsDisplayName = "WFOV"; initAngleX = 0; minAngleX = 0; maxAngleX = 0; initAngleY = 0; minAngleY = 0; maxAngleY = 0; initFov=0.42;//"(30 / 120)"; minFov=0.42;//"(30 / 120)"; maxFov=0.42;//"(30 / 120)"; directionStabilized = 1; visionMode[] = {"Normal","NVG", "Ti"}; thermalMode[] = {0,1,2,3,4,5}; gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_wide_F.p3d"; opticsPPEffects[] = {"OpticsCHAbera2", "OpticsBlur2"}; }; class Medium: Wide { opticsDisplayName = "MFOV"; initFov="0.42/4";//"(30 / 120)"; minFov="0.42/4";//"(30 / 120)"; maxFov="0.42/4";//"(30 / 120)"; gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_medium_F.p3d"; }; class Narrow: Wide { opticsDisplayName = "NFOV"; initFov="0.42/8";//"(30 / 120)"; minFov="0.42/8";//"(30 / 120)"; maxFov="0.42/8";//"(30 / 120)"; gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d"; }; class NarrowX16: Wide { opticsDisplayName = "NFOV"; initFov="0.42/16";//"(30 / 120)"; minFov="0.42/16";//"(30 / 120)"; maxFov="0.42/16";//"(30 / 120)"; gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d"; }; class NarrowX24: Wide { opticsDisplayName = "NFOV"; initFov="0.42/24";//"(30 / 120)"; minFov="0.42/24";//"(30 / 120)"; maxFov="0.42/24";//"(30 / 120)"; gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d"; }; class NarrowX36: Wide { opticsDisplayName = "NFOV"; initFov="0.42/36";//"(30 / 120)"; minFov="0.42/36";//"(30 / 120)"; maxFov="0.42/36";//"(30 / 120)"; gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d"; }; class NarrowX48: Wide { opticsDisplayName = "NFOV"; initFov="0.42/48";//"(30 / 120)"; minFov="0.42/48";//"(30 / 120)"; maxFov="0.42/48";//"(30 / 120)"; gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d"; }; class NarrowX60: Wide { opticsDisplayName = "NFOV"; initFov="0.42/60";//"(30 / 120)"; minFov="0.42/60";//"(30 / 120)"; maxFov="0.42/60";//"(30 / 120)"; gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d"; }; class NarrowX80: Wide { opticsDisplayName = "NFOV"; initFov="0.42/80";//"(30 / 120)"; minFov="0.42/80";//"(30 / 120)"; maxFov="0.42/80";//"(30 / 120)"; gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d"; }; class NarrowX100: Wide { opticsDisplayName = "NFOV"; initFov="0.42/100";//"(30 / 120)"; minFov="0.42/100";//"(30 / 120)"; maxFov="0.42/100";//"(30 / 120)"; gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d"; }; showMiniMapInOptics = 1; showUAVViewInOptics = 0; showSlingLoadManagerInOptics = 0; }; minTurn = -190; maxTurn = 180; initTurn = 0; minElev = -10; maxElev = 90; initElev = 0; maxXRotSpeed = 0.3; maxYRotSpeed = 0.3; pilotOpticsShowCursor = 1; controllable = 1; }; class UserActions { class Wing_Close { condition = "this animationPhase ""wing_1_up_A"" == 1 and this animationPhase ""wing_2_up_A"" == 1 and this animationPhase ""wing_1_down_A"" == 1 and this animationPhase ""wing_2_down_A"" == 1"; displayName = "[Close S-foils]"; displayNameDefault = ""; hideonuse = 1; onlyForPlayer = 1; position = "pilotview"; priority = 1e+011; radius = 3; shortcut = ""; statement = "this animate [""wing_1_up_A"",0];this animate [""wing_2_up_A"",0];this animate [""wing_1_down_A"",0];this animate [""wing_2_down_A"",0]; this say3d ""arcfoils"""; textToolTip = "Close wing"; }; class Wing_Open { condition = "this animationPhase ""wing_1_up_A"" == 0 and this animationPhase ""wing_2_up_A"" == 0 and this animationPhase ""wing_1_down_A"" == 0 and this animationPhase ""wing_2_down_A"" == 0"; displayName = "[Open S-foils]"; displayNameDefault = ""; hideonuse = 1; onlyForPlayer = 1; position = "pilotview"; priority = 1e+011; radius = 3; shortcut = ""; statement = "this animate [""wing_1_up_A"",1];this animate [""wing_2_up_A"",1];this animate [""wing_1_down_A"",1];this animate [""wing_2_down_A"",1]; this say3d ""arcfoils"""; }; #include "../../common/universal_dmg_report.hpp" }; class ACE_SelfActions:ACE_SelfActions { #include "../../common/universal_hud_color_changer.hpp" }; #include "../../common/universal_mfd.hpp" class Components: Components { class SensorsManagerComponent { class Components { class IRSensorComponent:SensorTemplateIR { class AirTarget { //minRange = 500; //maxRange = 3000; minRange = 5; maxRange = 8000; objectDistanceLimitCoef = -1; viewDistanceLimitCoef = 1; }; class GroundTarget { //minRange = 500; //maxRange = 2000; minRange = 5; maxRange = 8000; objectDistanceLimitCoef = 1; viewDistanceLimitCoef = 1; }; maxTrackableSpeed = 700; //maxTrackableSpeed = 70; animDirection = "mainGun"; //angleRangeHorizontal = 46; //angleRangeVertical = 34; angleRangeHorizontal = 170; angleRangeVertical = 170; aimdown = -0.25; }; class VisualSensorComponent:SensorTemplateVisual { class AirTarget { //minRange = 500; //maxRange = 2000; minRange = 5; maxRange = 8000; objectDistanceLimitCoef = -1; viewDistanceLimitCoef = 1; }; class GroundTarget { //minRange = 500; maxRange = 1500; minRange = 5; //maxRange = 7000; objectDistanceLimitCoef = 1; viewDistanceLimitCoef = 1; }; //maxTrackableSpeed = 70; maxTrackableSpeed = 700; animDirection = "mainGun"; //angleRangeHorizontal = 46; //angleRangeVertical = 34; angleRangeHorizontal = 170; angleRangeVertical = 170; aimdown = -0.25; }; class ActiveRadarSensorComponent:SensorTemplateActiveRadar { class AirTarget { //minRange = 5000; //maxRange = 5000; minRange = 5; maxRange = 7000; objectDistanceLimitCoef = -1; viewDistanceLimitCoef = -1; }; class GroundTarget { //minRange = 4000; //maxRange = 4000; minRange = 4; maxRange = 4000; objectDistanceLimitCoef = -1; viewDistanceLimitCoef = -1; }; maxTrackableSpeed = 1250; //maxTrackableSpeed = 125; angleRangeHorizontal = 180; //angleRangeVertical = 90; angleRangeVertical = 180; groundNoiseDistanceCoef = -1; maxGroundNoiseDistance = -1; minSpeedThreshold = 0; maxSpeedThreshold = 0; aimDown = 30; }; class PassiveRadarSensorComponent:SensorTemplatePassiveRadar { }; class LaserSensorComponent:SensorTemplateLaser { }; class NVSensorComponent:SensorTemplateNV { }; }; }; class VehicleSystemsDisplayManagerComponentLeft: DefaultVehicleSystemsDisplayManagerLeft { class Components: Components { class VehiclePrimaryGunnerDisplay { componentType = "TransportFeedDisplayComponent"; source = "PrimaryGunner"; }; class VehicleMissileDisplay { componentType = "TransportFeedDisplayComponent"; source = "Missile"; }; class SensorDisplay { componentType = "SensorsDisplayComponent"; range[] = {4000, 2000, 16000, 8000}; resource = "RscCustomInfoSensors"; }; }; }; class VehicleSystemsDisplayManagerComponentRight: DefaultVehicleSystemsDisplayManagerRight { defaultDisplay = "SensorDisplay"; class Components: Components { class VehiclePrimaryGunnerDisplay { componentType = "TransportFeedDisplayComponent"; source = "PrimaryGunner"; }; class VehicleMissileDisplay { componentType = "TransportFeedDisplayComponent"; source = "Missile"; }; class SensorDisplay { componentType = "SensorsDisplayComponent"; range[] = {4000, 2000, 16000, 8000}; resource = "RscCustomInfoSensors"; }; }; }; }; }; };