config.cpp 11 KB

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