config.cpp 12 KB

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