422 lines
9.3 KiB
C++
422 lines
9.3 KiB
C++
class CfgPatches
|
|
{
|
|
class braf_naval_weapons
|
|
{
|
|
name = "BRAF Naval Weapons";
|
|
author = "BRAF TEAM";
|
|
requiredVersion = 1.82;
|
|
requiredAddons[] =
|
|
{
|
|
"A3_Weapons_F",
|
|
"A3_Data_F",
|
|
"A3_Data_F_ParticleEffects"
|
|
};
|
|
units[] =
|
|
{
|
|
"braf_seasnake_30mm_static_f"
|
|
};
|
|
weapons[] =
|
|
{
|
|
"braf_weapon_am39_asm",
|
|
"braf_weapon_seasnake_30mm"
|
|
};
|
|
magazines[] =
|
|
{
|
|
"braf_mag_am39_1rnd",
|
|
"braf_mag_am39_pylon_1rnd",
|
|
"braf_mag_seasnake_30mm_tp_t",
|
|
"braf_mag_seasnake_30mm_ketf",
|
|
"braf_mag_seasnake_30mm_ketf_impact"
|
|
};
|
|
ammo[] =
|
|
{
|
|
"braf_ammo_am39_asm",
|
|
"braf_ammo_seasnake_30mm_tp_t",
|
|
"braf_ammo_seasnake_30mm_ketf",
|
|
"braf_ammo_seasnake_30mm_ketf_sub",
|
|
"braf_ammo_seasnake_30mm_ketf_impact"
|
|
};
|
|
};
|
|
};
|
|
class CfgFunctions
|
|
{
|
|
class BRAF
|
|
{
|
|
class NavalWeapons
|
|
{
|
|
class ASMEngineSmoke
|
|
{
|
|
file = "\braf\braf_weapons_naval\braf_functions\fn_asmenginesmoke.sqf";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
class braf_asm_engineeffects
|
|
{
|
|
class RocketBackfire1
|
|
{
|
|
simulation = "particles";
|
|
type = "PylonBackfire";
|
|
start = "(density interpolate [0.019,0.02,1,0])";
|
|
lifeTime = 2;
|
|
};
|
|
};
|
|
class CfgAmmo
|
|
{
|
|
class ammo_Missile_CruiseBase;
|
|
class B_30mm_MP;
|
|
class B_30mm_APFSDS;
|
|
class braf_ammo_asm_cruise_base: ammo_Missile_CruiseBase
|
|
{
|
|
scope = 0;
|
|
cameraViewAvailable = 1;
|
|
initTime = 1.5;
|
|
coefGravity = 1;
|
|
braf_asm = 1;
|
|
effectsMissileInit = "braf_asm_engineeffects";
|
|
effectsMissile = "EmptyEffect";
|
|
muzzleEffect = "";
|
|
};
|
|
class braf_ammo_am39_asm: braf_ammo_asm_cruise_base
|
|
{
|
|
scope = 2;
|
|
displayName = "AM39 Exocet";
|
|
author = "BRAF TEAM";
|
|
model = "braf\braf_weapons_naval\braf_asm\exocet\am39\braf_am39_fly.p3d";
|
|
proxyShape = "braf\braf_weapons_naval\braf_asm\exocet\am39\braf_am39.p3d";
|
|
};
|
|
class braf_ammo_seasnake_30mm_tp_t: B_30mm_MP
|
|
{
|
|
scope = 2;
|
|
displayName = "30x173 mm TP-T";
|
|
author = "BRAF TEAM";
|
|
typicalSpeed = 1065;
|
|
hit = 0;
|
|
indirectHit = 0;
|
|
indirectHitRange = 0;
|
|
explosive = 0;
|
|
};
|
|
class braf_ammo_seasnake_30mm_ketf_sub: B_30mm_APFSDS
|
|
{
|
|
scope = 1;
|
|
displayName = "KETF tungsten subprojectile";
|
|
author = "BRAF TEAM";
|
|
typicalSpeed = 1065;
|
|
hit = 5;
|
|
caliber = 0.20;
|
|
indirectHit = 0;
|
|
indirectHitRange = 0;
|
|
explosive = 0;
|
|
};
|
|
class braf_ammo_seasnake_30mm_ketf: B_30mm_MP
|
|
{
|
|
scope = 2;
|
|
displayName = "30x173 mm KETF / ABM";
|
|
author = "BRAF TEAM";
|
|
submunitionAmmo = "braf_ammo_seasnake_30mm_ketf_sub";
|
|
submunitionConeType[] = {"poissondisc", 162};
|
|
triggerTime = 0.12;
|
|
timeToLive = 8.2;
|
|
hit = 0;
|
|
indirectHit = 0;
|
|
indirectHitRange = 0;
|
|
explosive = 0;
|
|
};
|
|
class braf_ammo_seasnake_30mm_ketf_impact: B_30mm_APFSDS
|
|
{
|
|
scope = 2;
|
|
displayName = "30x173 mm KETF / impact mode";
|
|
author = "BRAF TEAM";
|
|
typicalSpeed = 1065;
|
|
hit = 70;
|
|
caliber = 1.25;
|
|
indirectHit = 0;
|
|
indirectHitRange = 0;
|
|
explosive = 0;
|
|
};
|
|
};
|
|
class CfgMagazines
|
|
{
|
|
class 8Rnd_LG_scalpel;
|
|
class PylonMissile_1Rnd_LG_scalpel;
|
|
class 140Rnd_30mm_MP_shells;
|
|
class 60Rnd_30mm_APFSDS_shells;
|
|
class braf_mag_am39_1rnd: 8Rnd_LG_scalpel
|
|
{
|
|
scope = 2;
|
|
displayName = "AM39 Exocet (1 missile)";
|
|
author = "BRAF TEAM";
|
|
count = 1;
|
|
initSpeed = 12;
|
|
ammo = "braf_ammo_am39_asm";
|
|
};
|
|
class braf_mag_am39_pylon_1rnd: PylonMissile_1Rnd_LG_scalpel
|
|
{
|
|
scope = 2;
|
|
displayName = "AM39 Exocet Pylon Store";
|
|
author = "BRAF TEAM";
|
|
count = 1;
|
|
initSpeed = 0;
|
|
model="\a3\weapons_f\dynamicloadout\pylonmissile_1x_bomb_02_f.p3d";
|
|
ammo = "braf_ammo_am39_asm";
|
|
pylonWeapon = "braf_weapon_am39_asm";
|
|
hardpoints[] = {"BRAF_AM39_PYLON"};
|
|
ejectSpeed[] = {0,0,0};
|
|
};
|
|
class braf_mag_seasnake_30mm_tp_t: 140Rnd_30mm_MP_shells
|
|
{
|
|
scope = 2;
|
|
displayName = "Sea Snake 30 - 30x173 TP-T";
|
|
author = "BRAF TEAM";
|
|
ammo = "braf_ammo_seasnake_30mm_tp_t";
|
|
initSpeed = 1065;
|
|
tracersEvery = 1;
|
|
};
|
|
class braf_mag_seasnake_30mm_ketf: 140Rnd_30mm_MP_shells
|
|
{
|
|
scope = 2;
|
|
displayName = "Sea Snake 30 - 30x173 KETF / ABM";
|
|
author = "BRAF TEAM";
|
|
ammo = "braf_ammo_seasnake_30mm_ketf";
|
|
initSpeed = 1065;
|
|
};
|
|
class braf_mag_seasnake_30mm_ketf_impact: 60Rnd_30mm_APFSDS_shells
|
|
{
|
|
scope = 2;
|
|
displayName = "Sea Snake 30 - KETF impact mode";
|
|
author = "BRAF TEAM";
|
|
ammo = "braf_ammo_seasnake_30mm_ketf_impact";
|
|
initSpeed = 1065;
|
|
};
|
|
};
|
|
class CfgWeapons
|
|
{
|
|
class missiles_SCALPEL;
|
|
class RocketPods;
|
|
class autocannon_30mm;
|
|
class autocannon_Base_F;
|
|
class braf_weapon_asm_air_base: missiles_SCALPEL
|
|
{
|
|
scope = 0;
|
|
author = "BRAF TEAM";
|
|
magazines[] = {};
|
|
modes[] = {"Cruise"};
|
|
class Cruise: RocketPods
|
|
{
|
|
displayName = "$STR_A3_firemode_terrain0";
|
|
textureType = "terrain";
|
|
reloadTime = 0.1;
|
|
magazineReloadTime = 0.1;
|
|
sounds[] = {"StandardSound"};
|
|
class StandardSound
|
|
{
|
|
begin1[] = {"a3\sounds_f\weapons\rockets\missile_1",1.1220185,1.3,1000};
|
|
soundBegin[] = {"begin1",1};
|
|
};
|
|
lockingTargetSound[] = {"a3\sounds_f\weapons\rockets\locked_1",0.56234133,1};
|
|
lockedTargetSound[] = {"a3\sounds_f\weapons\rockets\locked_3",0.56234133,2.5};
|
|
aiRateOfFire = 5.0;
|
|
aiRateOfFireDistance = 500;
|
|
showToPlayer = 1;
|
|
minRange = 500;
|
|
minRangeProbab = 0.2;
|
|
midRange = 2000;
|
|
midRangeProbab = 0.96;
|
|
maxRange = 32000;
|
|
maxRangeProbab = 0.92;
|
|
};
|
|
class EventHandlers
|
|
{
|
|
fired = "_this call BRAF_fnc_ASMEngineSmoke";
|
|
};
|
|
};
|
|
class braf_weapon_am39_asm: braf_weapon_asm_air_base
|
|
{
|
|
scope = 2;
|
|
displayName = "AM39 Exocet";
|
|
author = "BRAF TEAM";
|
|
magazines[] =
|
|
{
|
|
"braf_mag_am39_1rnd",
|
|
"braf_mag_am39_pylon_1rnd"
|
|
};
|
|
};
|
|
class braf_weapon_seasnake_30mm: autocannon_30mm
|
|
{
|
|
scope = 2;
|
|
displayName = "Rheinmetall Sea Snake 30 / SeaVision";
|
|
author = "BRAF TEAM";
|
|
muzzles[] = {"HE"};
|
|
magazines[] =
|
|
{
|
|
"braf_mag_seasnake_30mm_tp_t",
|
|
"braf_mag_seasnake_30mm_ketf",
|
|
"braf_mag_seasnake_30mm_ketf_impact"
|
|
};
|
|
reloadTime = 0.0545455;
|
|
class HE: autocannon_Base_F
|
|
{
|
|
magazines[] =
|
|
{
|
|
"braf_mag_seasnake_30mm_tp_t",
|
|
"braf_mag_seasnake_30mm_ketf",
|
|
"braf_mag_seasnake_30mm_ketf_impact"
|
|
};
|
|
reloadTime = 0.0545455;
|
|
class player: player
|
|
{
|
|
reloadTime = 0.0545455;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
class SensorTemplateIR;
|
|
class SensorTemplateVisual;
|
|
class SensorTemplateDataLink;
|
|
class LandVehicle;
|
|
class StaticWeapon: LandVehicle
|
|
{
|
|
class Turrets;
|
|
class HitPoints;
|
|
};
|
|
class StaticMGWeapon: StaticWeapon
|
|
{
|
|
class Turrets: Turrets
|
|
{
|
|
class MainTurret;
|
|
};
|
|
class Components;
|
|
};
|
|
|
|
class CfgVehicles
|
|
{
|
|
class braf_ciws_static_base_f: StaticMGWeapon
|
|
{
|
|
author = "BRAF TEAM";
|
|
scope = 0;
|
|
scopeCurator = 0;
|
|
vehicleClass = "Autonomous";
|
|
hasDriver = 0;
|
|
hasGunner = 1;
|
|
isUav = 1;
|
|
getInRadius = 0;
|
|
unitInfoType = "RscUnitInfoTank";
|
|
canFloat = 0;
|
|
animated = 1;
|
|
enableGPS = 1;
|
|
irScanRangeMin = 500;
|
|
irScanRangeMax = 4000;
|
|
irScanToEyeFactor = 2;
|
|
laserScanner = 1;
|
|
showAllTargets = 4;
|
|
visualTarget = 1;
|
|
visualTargetSize = 1.2;
|
|
irTarget = 1;
|
|
irTargetSize = 0.5;
|
|
reportRemoteTargets = 1;
|
|
receiveRemoteTargets = 1;
|
|
reportOwnPosition = 1;
|
|
lockDetectionSystem = 0;
|
|
incomingMissileDetectionSystem = 16;
|
|
uavCameraGunnerPos = "pos_gunner_view";
|
|
uavCameraGunnerDir = "pos_gunner_view_dir";
|
|
memoryPointGun = "pos_barrel_end";
|
|
|
|
class Components: Components
|
|
{
|
|
class SensorsManagerComponent
|
|
{
|
|
class Components
|
|
{
|
|
class IRSensorComponent: SensorTemplateIR
|
|
{
|
|
class AirTarget
|
|
{
|
|
minRange = 500;
|
|
maxRange = 4000;
|
|
objectDistanceLimitCoef = -1;
|
|
viewDistanceLimitCoef = 1;
|
|
};
|
|
class GroundTarget
|
|
{
|
|
minRange = 500;
|
|
maxRange = 3500;
|
|
objectDistanceLimitCoef = 1;
|
|
viewDistanceLimitCoef = 1;
|
|
};
|
|
typeRecognitionDistance = 3500;
|
|
maxTrackableSpeed = 600;
|
|
angleRangeHorizontal = 60;
|
|
angleRangeVertical = 40;
|
|
animDirection = "mainGun";
|
|
aimDown = -0.5;
|
|
};
|
|
class VisualSensorComponent: SensorTemplateVisual
|
|
{
|
|
class AirTarget
|
|
{
|
|
minRange = 500;
|
|
maxRange = 4000;
|
|
objectDistanceLimitCoef = -1;
|
|
viewDistanceLimitCoef = 1;
|
|
};
|
|
class GroundTarget
|
|
{
|
|
minRange = 500;
|
|
maxRange = 3500;
|
|
objectDistanceLimitCoef = 1;
|
|
viewDistanceLimitCoef = 1;
|
|
};
|
|
typeRecognitionDistance = 3500;
|
|
maxTrackableSpeed = 600;
|
|
angleRangeHorizontal = 360;
|
|
angleRangeVertical = 95;
|
|
animDirection = "mainGun";
|
|
aimDown = -0.5;
|
|
};
|
|
class DataLinkSensorComponent: SensorTemplateDataLink{};
|
|
};
|
|
};
|
|
};
|
|
|
|
class Turrets: Turrets
|
|
{
|
|
class MainTurret: MainTurret
|
|
{
|
|
hasGunner = 1;
|
|
primary = 1;
|
|
primaryGunner = 1;
|
|
startEngine = 0;
|
|
enableManualFire = 1;
|
|
forceHideGunner = 1;
|
|
gunnerForceOptics = 1;
|
|
gunnerOutForceOptics = 1;
|
|
viewGunnerInExternal = 0;
|
|
outGunnerMayFire = 1;
|
|
inGunnerMayFire = 1;
|
|
castGunnerShadow = 0;
|
|
showAllTargets = 2;
|
|
body = "MainTurret";
|
|
gun = "MainGun";
|
|
animationSourceBody = "MainTurret";
|
|
animationSourceGun = "MainGun";
|
|
gunbeg = "pos_barrel_end";
|
|
gunend = "pos_barrel";
|
|
uavCameraGunnerPos = "pos_gunner_view";
|
|
uavCameraGunnerDir = "pos_gunner_view_dir";
|
|
memoryPointGunnerOptics = "pos_gunner_view";
|
|
particlespos = "pos_fx";
|
|
particlesdir = "pos_fx_dir";
|
|
selectionFireAnim = "zasleh";
|
|
gunnerlefthandanimname = "";
|
|
gunnerrighthandanimname = "";
|
|
optics = 1;
|
|
turretinfotype = "RscOptics_APC_Tracked_01_gunner";
|
|
gunnerOpticsModel = "\a3\weapons_f\reticle\Optics_Gunner_AAA_01_w_F";
|
|
};
|
|
};
|
|
};
|
|
|
|
#include "braf_ciws\braf_seasnake\seasnake.hpp"
|
|
};
|