//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 V_Wing
#define patch_name MODNAME##vehicle_addon##_Patches
#define vehicle_classname MODNAME##_##vehicle_addon
#define new_v_wing_class(name) vehicle_classname##_##name
class CfgPatches
{
class macro_patch_name(V_Wing)
{
addonRootClass=macro_patch_name(vehicles)
requiredAddons[]=
{
macro_patch_name(vehicles)
};
requiredVersion=0.1;
units[]=
{
macro_new_vehicle(v_wing,MKII)
};
weapons[]=
{
};
};
};
#include "../../common/sensor_templates.hpp"
class CfgVehicles
{
class Plane_Base_F;
class swop_Vwing:Plane_Base_F
{
class Components;
class ACE_SelfActions;
};
class macro_new_vehicle(v_wing,MKII):swop_Vwing
{
side=1;
scope=2;
scopeCurator=2;
displayName = "V-Wing Mk.II";
forceInGarage = 1;
//dmg stuff
armor=1925;
armorStructural = 1;
vtol = 4;
faction = macro_republic_faction
editorSubcategory = macro_editor_cat_air(Republic_vtol)
vehicleClass = macro_editor_vehicle_type_air(Republic)
ballisticsComputer = 1+8;
visualTarget = 1;
visualTargetSize = 1;
reportOwnPosition = true;
radarTargetSize = 1;
radarTarget = 1;
nvTarget = 1;
laserTarget = 1;
laserScanner = 0;
irTarget = 1;
irTargetSize = 1;
countermeasureActivationRadius = 2000;
//flight model
maxSpeed=1100;
aileronSensitivity=0.41;
elevatorSensitivity=0.41;
airBrakeFrictionCoef=120;
brakeDistance = 80;
noseDownCoef = 0;
acceleration = 225;
draconicForceXCoef=15;
draconicForceYCoef=6;
draconicForceZCoef=12;
altFullForce=18000;
altNoForce=19000;
draconicTorqueXCoef[]={2.0,1.5,1.0,0.9,1.0,0.9,0.75,0.8,0.9,0.95,1.0};
draconicTorqueYCoef[]={1.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
VTOLYawInfluence="3.5";
VTOLPitchInfluence="10";
VTOLRollInfluence="9";
rudderInfluence=0.9;
envelope[] = {0.5,2.11,2.43,1.97,1.72,2.69,3.87,5.27,6.89,8.72,9.7,9.6,9.2,8.5,8.2,8};
thrustCoef[] = {1.5,3.69,3.62,3.68,3.74,3.81,3.89,3.95,3.96,3.96,3.92,3.4,0.4,0,0,0};
elevatorCoef[] = {0.3,0.5,0.66,0.52,0.49,0.46,0.43,0.4,0.35,0.3,0.25,0.18,0.17,0.16,0.15,0.15};
aileronCoef[] = {0.4,0.5,0.8,0.95,1.02,1.04,1.03,1.01,1,0.7,0.6,0.55,0.5,0.45,0.4,0.35};
rudderCoef[]={0,0.6,0.9,1.0,1.1,1.0,0.9,0.8,0.6,0.35,0.3,0.25,0.2};
rudderControlsSensitivityCoef=4.5;
gearsUpFrictionCoef=0;
class EventHandlers{};
class UserActions
{
class AfterburnerOn
{
displayName = "[Afterburner On]";
shortcut = "";
condition = "speed this >50 and (!(this getVariable 'AfterBurnervwing'))";
statement = "this setVariable ['AfterBurnervwing',true,true];this spawn nes4day_afterburnervwing";
priority = 1e+011;
displayNameDefault = "";
position = "pilotview";
radius = 10;
onlyforplayer = 1;
shortcut="User19"
};
class AfterburnerOff
{
displayName = "[Afterburner Off]";
shortcut = "";
condition = "(this getVariable ['AfterBurnervwing',true])";
statement = "this setVariable ['AfterBurnervwing',false,true]";
priority = 1e+011;
displayNameDefault = "";
position = "pilotview";
radius = 10;
onlyforplayer = 1;
shortcut="User20"
};
#include "../../common/universal_dmg_report.hpp"
}
class ACE_SelfActions:ACE_SelfActions
{
#include "../../common/universal_hud_color_changer.hpp"
};
#include "../../common/universal_mfd.hpp"
weapons[] = {
macro_new_weapon(laser,v_wing),
macro_new_weapon(wynd,a2a),
macro_new_weapon(wynd,lgm1),
macro_basic_air_weapons
};
magazines[] = {
macro_basic_air_mags,
macro_new_mag(generic_aircraft_gun_asg,3000),
macro_new_mag(a2a,4),
macro_new_mag(a2a,4),
macro_new_mag(a2a,4),
macro_new_mag(lgm,1)
};
class pilotCamera
{
class OpticsIn
{
class Wide
{
opticsDisplayName="WFOV";
initAngleX=0;
minAngleX=-10;
maxAngleX=90;
initAngleY=0;
minAngleY=-90;
maxAngleY=90;
initFov=0.425;//"(30 / 120)";
minFov=0.425;//"(30 / 120)";
maxFov=0.425;//"(30 / 120)";
directionStabilized=1;
thermalMode[] = {0,1,2,3,4,5};
visionMode[]=
{
"Normal",
"NVG",
"Ti"
};
gunnerOpticsModel="\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_wide_F.p3d";
opticsPPEffects[]=
{
"OpticsCHAbera2",
"OpticsBlur2"
};
};
class zoomx4: Wide
{
opticsDisplayName="NFOV";
initFov="(0.425/4)";//"(3.75 / 120)";
minFov="(0.425/4)";//"(3.75 / 120)";
maxFov="(0.425/4)";//"(3.75 / 120)";
gunnerOpticsModel="\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d";
};
class zoomX8: Wide
{
opticsDisplayName="NFOV";
initFov="(0.42/8)";//"(.375 / 120)";
minFov="(0.42/8)";//"(.375 / 120)";
maxFov="(0.42/8)";//"(.375 / 120)";
gunnerOpticsModel="\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d";
};
class zoomX20: Wide
{
opticsDisplayName="NFOV";
initFov="(0.42/20)";//"(.375 / 120)";
minFov="(0.42/20)";//"(.375 / 120)";
maxFov="(0.42/20)";//"(.375 / 120)";
gunnerOpticsModel="\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d";
};
class zoomX50: Wide
{
opticsDisplayName="NFOV";
initFov="(0.42/50)";//"(.375 / 120)";
minFov="(0.42/50)";//"(.375 / 120)";
maxFov="(0.42/50)";//"(.375 / 120)";
gunnerOpticsModel="\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d";
};
class zoomX70: Wide
{
opticsDisplayName="NFOV";
initFov="(0.42/70)";//"(.375 / 120)";
minFov="(0.42/70)";//"(.375 / 120)";
maxFov="(0.42/70)";//"(.375 / 120)";
gunnerOpticsModel="\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d";
};
showMiniMapInOptics=1;
showUAVViewInOptics=0;
showSlingLoadManagerInOptics=1;
};
minTurn=-180;
maxTurn=180;
initTurn=0;
minElev=-10;
maxElev=90;
initElev=-10;
maxXRotSpeed=0.30000001;
maxYRotSpeed=0.30000001;
pilotOpticsShowCursor=1;
controllable=1;
};
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 = 12000;
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 = 12000;
objectDistanceLimitCoef = -1;
viewDistanceLimitCoef = -1;
};
class GroundTarget
{
//minRange = 4000;
//maxRange = 4000;
minRange = 4;
maxRange = 8000;
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";
};
};
};
};
};
};