config.cpp 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484
  1. #define COMPONENT vehicle_weapons
  2. #include "../RD501_main/config_macros.hpp"
  3. #include "_common/common.hpp"
  4. class CfgPatches
  5. {
  6. class macro_patch_name(vehicle_weapons)
  7. {
  8. author=DANKAUTHORS;
  9. requiredAddons[]=
  10. {
  11. macro_lvl1_req,
  12. "3AS_LAAT"
  13. };
  14. requiredVersion=0.1;
  15. units[]={};
  16. weapons[]={
  17. macro_new_weapon(pylon_laser,v_wing),
  18. macro_new_weapon(pylon_generic,kannon)
  19. };
  20. };
  21. };
  22. //scopes
  23. class CfgWeapons
  24. {
  25. class macro_new_weapon(laser,v_wing);
  26. class macro_new_weapon(pylon_laser,v_wing) : macro_new_weapon(laser,v_wing)
  27. {
  28. displayName = "Laser gun (Pylon)";
  29. displayNameShort = "Laser";
  30. magazines[]={macro_new_mag(pylon_generic_aircraft_gun_asg,3000)};
  31. };
  32. };
  33. class CfgMagazineWells
  34. {
  35. class macro_new_magwell(generic_aircraft_laser)
  36. {
  37. macro_new_magwell(generic_aircraft_colors)[]=
  38. {
  39. macro_new_mag(generic_aircraft_gun,1000),
  40. macro_new_mag(generic_aircraft_gun_blue,1000),
  41. macro_new_mag(generic_aircraft_gun_green,1000),
  42. macro_new_mag(generic_aircraft_gun_purple,1000),
  43. macro_new_mag(generic_aircraft_gun_preatorian,1000)
  44. };
  45. };
  46. class macro_new_magwell(generic_aircraft_cannon)
  47. {
  48. macro_new_magwell(generic_aircraft_colors)[]=
  49. {
  50. macro_new_mag(generic_aircraft_cannon_red,1000),
  51. macro_new_mag(generic_aircraft_cannon_green,1000),
  52. macro_new_mag(generic_aircraft_cannon_blue,1000),
  53. macro_new_mag(generic_aircraft_cannon_plasma_red,1000),
  54. macro_new_mag(generic_aircraft_cannon_plasma_blue,1000),
  55. macro_new_mag(generic_aircraft_cannon_purple,1000)
  56. };
  57. };
  58. };
  59. class CfgMagazines
  60. {
  61. class 500Rnd_Cannon_ARCback;
  62. class 500Rnd_Cannon_30mm_Plane_CAS_02_F;
  63. //laser gun + kannon
  64. #include "_mags/aircraft_laser_gun.hpp"
  65. //laser cannon
  66. #include "_mags/aircraft_laser_cannon.hpp"
  67. class OPTRE_6Rnd_ASGM2_rockets;
  68. class macro_new_mag(MRLS_M80,2): OPTRE_6Rnd_ASGM2_rockets
  69. {
  70. count = 2;
  71. };
  72. class SWOP_e11_Mag;
  73. #include "_mags/super_mg.hpp"
  74. class 100Rnd_TXLaser_Cannon_mag;
  75. #include "_mags/tank_cannons.hpp"
  76. class og9_Laser_Cannon_mag;
  77. class macro_new_mag(homing_spider,10): og9_Laser_Cannon_mag
  78. {
  79. displayNameShort = "Blaster Cannon.";
  80. ammo = macro_new_ammo(homing_spider)
  81. count = 10;
  82. tracersEvery = 1;
  83. initSpeed =800;
  84. maxLeadSpeed = 30000;
  85. nameSound = "cannon";
  86. };
  87. #include "_mags/aa_gun.hpp"
  88. class 4Rnd_AAA_missiles;
  89. class 7Rnd_Rocket_04_AP_F;
  90. class magazine_Missile_rim116_x21;
  91. class magazine_Missile_rim162_x8;
  92. class PylonRack_12Rnd_PG_missiles;
  93. class 4Rnd_LG_Jian;
  94. class PylonRack_1Rnd_Missile_AGM_01_F;
  95. #include "_mags/missiles.hpp"
  96. class 4Rnd_BombCluster_02_F;
  97. class PylonRack_Bomb_SDB_x4;
  98. class 2Rnd_GBU12_LGB;
  99. class macro_new_mag(cluster_bomb,4) : 4Rnd_BombCluster_02_F
  100. {
  101. ammo = macro_new_ammo(cluster_bomb)
  102. count = 4;
  103. DisplayName = "Thunderstorm CB";
  104. displayNameShort = "Thunderstorm CB";
  105. tracersEvery=1;
  106. };
  107. class macro_new_mag(cluster_bomb,2) : macro_new_mag(cluster_bomb,4)
  108. {
  109. count = 2;
  110. };
  111. class macro_new_mag(cluster_emp,2) : macro_new_mag(cluster_bomb,4)
  112. {
  113. ammo = macro_new_ammo(cluster_emp)
  114. DisplayName = "Lightning EMP CB";
  115. displayNameShort = "Lightning EMP CB";
  116. count = 2;
  117. };
  118. class macro_new_mag(sdb_bomb,4) : PylonRack_Bomb_SDB_x4
  119. {
  120. ammo = macro_new_ammo(sdb_bomb)
  121. count = 4;
  122. DisplayName = "Wrath PGB";
  123. displayNameShort = "Wrath PGB";
  124. tracersEvery=1;
  125. };
  126. class macro_new_mag(lgb_bomb,4) : 2Rnd_GBU12_LGB
  127. {
  128. ammo = macro_new_ammo(lgb_bomb)
  129. count = 4;
  130. DisplayName = "Ruinscape GB";
  131. displayNameShort = "Ruinscape GB";
  132. tracersEvery=1;
  133. };
  134. class 1000Rnd_Laser_Cannon_LAAT;
  135. class macro_new_mag(laat_cannon,100) : 1000Rnd_Laser_Cannon_LAAT
  136. {
  137. displayNameShort = "";
  138. ammo = macro_new_ammo(laat_cannon)
  139. count = 100;
  140. tracersEvery = 1;
  141. initSpeed = 2000;
  142. brightness = 100;
  143. magazineReloadTime=10;
  144. macro_no_muzzle_impulse
  145. };
  146. class macro_new_mag(laat_cannon_double,100): macro_new_mag(laat_cannon,100)
  147. {
  148. ammo = macro_new_ammo(laat_cannon_double);
  149. };
  150. class 500Rnd_Cannon_ARCback;
  151. class macro_new_mag(voltic,200):500Rnd_Cannon_ARCback
  152. {
  153. displayNameShort = "";
  154. ammo = macro_new_ammo(voltic)
  155. count = 200;
  156. tracersEvery = 1;
  157. initSpeed = 1036;
  158. maxLeadSpeed = 300;
  159. macro_no_muzzle_impulse
  160. };
  161. class Laser_Battery_F;
  162. class macro_new_mag(laat_ball_beam,300): Laser_Battery_F
  163. {
  164. displayName = "Laat Ball Turret Mag";
  165. displayNameShort = "Ball Turret Mag";
  166. count = 300;
  167. ammo = macro_new_ammo(ball_beam)
  168. };
  169. class 1000Rnd_Laser_Cannon_EWEBSWBF_REP;
  170. class macro_new_mag(laat_ball_turret,200): 1000Rnd_Laser_Cannon_EWEBSWBF_REP
  171. {
  172. displayName = "Laat Ball Turret Mag";
  173. displayNameShort = "Ball Turret Mag";
  174. ammo =macro_new_ammo(ball_turret)
  175. count = 300;
  176. tracersEvery = 1;
  177. initSpeed = 1036;
  178. maxLeadSpeed = 300;
  179. muzzleImpulseFactor = 0;
  180. scope = 1;
  181. };
  182. class 2Rnd_Bomb_03_F;
  183. class macro_new_mag(carpet_I_bomb_mag,20): 2Rnd_Bomb_03_F
  184. {
  185. dlc = "RD501";
  186. scope = 2;
  187. displayName = "20 Rnd Carpet I Bomb";
  188. displayNameShort = "20 Rnd Bomb";
  189. count = 20;
  190. ammo = macro_new_ammo(carpet_I_bomb);
  191. initSpeed = 0;
  192. maxLeadSpeed = 1000;
  193. };
  194. };
  195. #include "_common/sensor_templates.hpp"
  196. class CfgAmmo
  197. {
  198. class B_35mm_AA_Tracer_Red;
  199. class LaserAmmo_Minigun;
  200. class SWOP_DTL19_BlasterRifle_Ammo;
  201. class TurboLaser_Laserx2;
  202. class ATTE_Laser;
  203. class M_Air_AA;
  204. class Rocket_04_AP_F;
  205. class ammo_Missile_rim162;
  206. class M_PG_AT;
  207. class M_Jian_AT;
  208. class ammo_Missile_rim116;
  209. class TurboLaser_Laserx2;
  210. class 3AS_ATT_redPlasma_AT;
  211. //laser gun + kannon
  212. #include "_ammo/aircraft_laser_gun.hpp"
  213. //laser cannon
  214. #include "_ammo/aircraft_laser_cannon.hpp"
  215. #include "_ammo/super_mg.hpp"
  216. #include "_ammo/tank_cannons.hpp"
  217. class macro_new_ammo(homing_spider): TurboLaser_Laserx2//og9_Laser
  218. {
  219. hit = 185;
  220. indirectHit = 75;
  221. indirectHitRange = 1;
  222. visibleFire = 32;
  223. audibleFire = 32;
  224. visibleFireTime = 6;
  225. explosionSoundEffect = "DefaultExplosion";
  226. effectFly = "og9_Laser_Effect";
  227. explosive = 0.5;
  228. airLock = 1;
  229. CraterEffects = "ExploAmmoLaserCrater";
  230. explosionEffects = "ExploAmmoLaserCannon";
  231. model = "\SpiderDroid\Laserog9";
  232. caliber = 20;
  233. };
  234. #include "_ammo/missiles.hpp"
  235. class BombCluster_02_Ammo_F;
  236. class ammo_Bomb_SDB;
  237. class Bo_GBU12_LGB;
  238. class macro_new_ammo(cluster_bomb) : BombCluster_02_Ammo_F
  239. {
  240. DisplayName = "Thunderstorm CB";
  241. displayNameShort = "Thunderstorm CB";
  242. //effectFly = "RD501_Effect_Violet";
  243. //effectsFire = "RD501_Effect_Violet";
  244. //effectsMissileInit = "RD501_laat_PylonBackEffectsFFAR";
  245. //effectsMissile = "RD501_FX_Missile_AA";
  246. muzzleEffect = "";
  247. //effectsSmoke = "RD501_Effect_Violet";
  248. tracerColor[] = {"blue"};
  249. brightness = 20000;
  250. lightColor[] = {0, 0, 1, 1};
  251. triggerTime = 0.1;
  252. ExplosionEffects = "ProtonbombAmmoExplosion";
  253. hit = 650;
  254. indirectHit =325;
  255. indirectHitRange = 6;
  256. };
  257. class Mo_cluster_Bomb_02_F;
  258. class macro_new_ammo(cluster_emp_sub): Mo_cluster_Bomb_02_F
  259. {
  260. hit = 0.1;
  261. indirectHit = 0.01;
  262. indirectHitRange=40;
  263. JLTS_isEMPAmmo=1;
  264. explosionEffects="JLTS_fx_exp_EMP";
  265. SoundSetExplosion[]=
  266. {
  267. "JLTS_GrenadeEMP_Exp_SoundSet",
  268. "JLTS_GrenadeEMP_Tail_SoundSet",
  269. "Explosion_Debris_SoundSet"
  270. };
  271. class CamShakeExplode
  272. {
  273. distance=10;
  274. duration=1;
  275. frequency=20;
  276. power=0;
  277. };
  278. };
  279. class macro_new_ammo(cluster_emp) : BombCluster_02_Ammo_F
  280. {
  281. DisplayName = "Lightning EMP CB";
  282. displayNameShort = "Lightning EMP CB";
  283. muzzleEffect = "";
  284. tracerColor[] = {"blue"};
  285. brightness = 20000;
  286. lightColor[] = {0, 0, 1, 1};
  287. triggerTime = 0.1;
  288. hit = 50;
  289. indirectHitRange = 0;
  290. submunitionAmmo[]=
  291. {
  292. macro_new_ammo(cluster_emp_sub),
  293. 1.0
  294. };
  295. submunitionConeType[]=
  296. {
  297. "randomcenter",
  298. 45
  299. };
  300. };
  301. class macro_new_ammo(sdb_bomb) : ammo_Bomb_SDB
  302. {
  303. DisplayName = "Wrath PGB";
  304. displayNameShort = "Wrath PGB";
  305. // effectFly = "RD501_Effect_Violet";
  306. // effectsFire = "RD501_Effect_Violet";
  307. // effectsMissileInit = "RD501_laat_PylonBackEffectsFFAR";
  308. // effectsMissile = "RD501_FX_Missile_AA";
  309. muzzleEffect = "";
  310. //effectsSmoke = "RD501_Effect_Violet";
  311. tracerColor[] = {"blue"};
  312. brightness = 20000;
  313. lightColor[] = {0, 0, 1, 1};
  314. triggerTime = 0.1;
  315. ExplosionEffects = "ProtonbombAmmoExplosion";
  316. hit = 2000;
  317. indirectHit = 1000;
  318. indirectHitRange = 3;
  319. };
  320. class macro_new_ammo(lgb_bomb) : Bo_GBU12_LGB
  321. {
  322. DisplayName = "Ruin GBU";
  323. displayNameShort = "Ruin GBU";
  324. // effectFly = "RD501_Effect_Violet";
  325. // effectsFire = "RD501_Effect_Violet";
  326. // effectsMissileInit = "RD501_laat_PylonBackEffectsFFAR";
  327. // effectsMissile = "RD501_FX_Missile_AA";
  328. muzzleEffect = "";
  329. // effectsSmoke = "RD501_Effect_Violet";
  330. tracerColor[] = {"blue"};
  331. brightness = 20000;
  332. lightColor[] = {0, 0, 1, 1};
  333. triggerTime = 0.1;
  334. ExplosionEffects = "ProtonbombAmmoExplosion";
  335. hit = 650;
  336. indirectHit =650;
  337. indirectHitRange = 25;
  338. };
  339. class macro_new_ammo(laat_cannon): TurboLaser_Laserx2//TurboLaser_Laserx2//SW_SpeederBikeCanon_Ammo//swop_bywingCannonammo//LAAT_Laser
  340. {
  341. explosive = 0.5;
  342. hit = 1000;
  343. indirectHit =800;
  344. indirectHitRange = 6;
  345. caliber = 1;
  346. timeToLive=9;
  347. ACE_caliber=1;
  348. craterEffects = "ImpactEffectsMedium";
  349. explosionSoundEffect = "DefaultExplosion";
  350. ExplosionEffects = "ExploAmmoExplosion";
  351. model="a3\weapons_f\data\bullettracer\tracer_green";
  352. tracerScale = 10;
  353. effectFly = "SWOP_greenLaserEffect";
  354. aiAmmoUsageFlags = "64 + 128 + 256 + 512";
  355. allowAgainstInfantry = 1;
  356. cost = 1;
  357. soundSetBulletFly[] = {"SWOP_HEAVYBullet_FlyBy_SoundSet"};
  358. SoundSetExplosion[] = {"Mortar_Exp_SoundSet","Mortar_Tail_SoundSet","Explosion_Debris_SoundSet"};
  359. soundSetSonicCrack[] = {"bulletSonicCrack_SoundSet","bulletSonicCrackTail_SoundSet"};
  360. supersonicCrackFar[] = {"\ca\Weapons\Data\Sound\supersonic_crack_50meters.wss", 1, 50};
  361. supersonicCrackNear[] = {"\ca\Weapons\Data\Sound\supersonic_crack_close.wss", 1, 50};
  362. };
  363. class macro_new_ammo(laat_cannon_double): macro_new_ammo(laat_cannon)
  364. {
  365. model = "\TIE\tracer_green.p3d";
  366. tracerScale = 1;
  367. }
  368. class swop_bywingCannonammo;
  369. class macro_new_ammo(voltic):swop_bywingCannonammo
  370. {
  371. hit = 400;
  372. indirectHit = 150;
  373. indirectHitRange = 6;
  374. explosive = 0.2;
  375. caliber = 9;
  376. aiAmmoUsageFlags = "64 + 128 + 256 + 512";
  377. allowAgainstInfantry = 1;
  378. };
  379. class laserAmmo_F;
  380. class macro_new_ammo(ball_beam): laserAmmo_F
  381. {
  382. hit = 600;
  383. indirectHit = 400;
  384. indirectHitRange = 1;
  385. explosive = 1;
  386. caliber = 6;
  387. ACE_caliber = 0;
  388. aiAmmoUsageFlags = "64 + 128 + 256 + 512";
  389. allowAgainstInfantry = 1;
  390. airLock=1;
  391. };
  392. class macro_new_ammo(ball_turret):TurboLaser_Laserx2//SW_SpeederBikeCanon_Ammo//Vwing_ammo
  393. {
  394. hit = 600;
  395. timeToLive = 5;
  396. indirectHit = 400;
  397. indirectHitRange = 1;
  398. explosive = 1;
  399. caliber = 6;
  400. ACE_caliber = 0;
  401. tracerScale = 1;
  402. aiAmmoUsageFlags = "64 + 128 + 256 + 512";
  403. allowAgainstInfantry = 1;
  404. model = "\SWOP_Main\Effects\Tracer\Lasergreen";
  405. cost = 1;
  406. CraterEffects = "-";
  407. CraterWaterEffects = "ImpactEffectsWaterHE";
  408. ExplosionEffects ="SWOP_LaserExploSmallblue2";
  409. soundHit1[] = {"SWOP_Main\FlyBy\impactosheavy\impactosheavy1.ogg", 1.2, 1, 50};
  410. soundHit2[] = {"SWOP_Main\FlyBy\impactosheavy\impactosheavy2.ogg", 1.2, 1, 50};
  411. soundHit3[] = {"SWOP_Main\FlyBy\impactosheavy\impactosheavy3.ogg", 1.2, 1, 50};
  412. soundHit4[] = {"SWOP_Main\FlyBy\impactosheavy\impactosheavy4.ogg", 1.2, 1, 50};
  413. multiSoundHit[] = {"soundHit1", 0.25, "soundHit2", 0.25, "soundHit3", 0.25, "soundHit4", 0.25};
  414. };
  415. class Bo_Mk82;
  416. class macro_new_ammo(carpet_I_bomb): Bo_Mk82
  417. {
  418. model = "OPTRE_weapons\Aircraft\500lb_bomb_fly.p3d";
  419. hit = 10000;
  420. indirectHit = 10000;
  421. indirectHitRange = 30;
  422. caliber = 3;
  423. explosive = 1;
  424. timeToLive = 240;
  425. triggerTime=5;
  426. triggerOnImpact=true;
  427. //ExplosionEffects = "ProtonbombAmmoExplosionOrangeRD501";//"ProtonbombAmmoExplosionPurpleRD501";//"ProtonbombAmmoExplosionYellowRD501";//"ProtonbombAmmoExplosion";
  428. //explosionTime = 20;
  429. };
  430. };