config.cpp 9.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485
  1. #define COMPONENT weapons
  2. #include "../RD501_main/config_macros.hpp"
  3. #include "_common/common.hpp"
  4. class CfgPatches
  5. {
  6. class macro_patch_name(weapons)
  7. {
  8. author=DANKAUTHORS;
  9. requiredAddons[]=
  10. {
  11. macro_lvl1_req
  12. };
  13. requiredVersion=0.1;
  14. units[]={};
  15. weapons[]={
  16. macro_new_weapon(scope,dc_15a_x4),
  17. macro_new_weapon(scope,dc_15a_acog),
  18. macro_new_weapon(scope,dc_15a_x4_x8)
  19. };
  20. };
  21. };
  22. //scopes
  23. class CfgWeapons
  24. {
  25. class JLTS_stun_muzzle;
  26. class RD501_stun_muzzle: JLTS_stun_muzzle
  27. {
  28. magazines[]=
  29. {
  30. macro_new_mag(stun,5)
  31. };
  32. };
  33. };
  34. class CfgMagazineWells
  35. {
  36. class macro_new_magwell(GL_Mags)
  37. {
  38. macro_new_magwell(GL_flare)[]=
  39. {
  40. GL_flare_rounds
  41. };
  42. macro_new_magwell(GL_AP)[]=
  43. {
  44. macro_new_mag(AT_GL,2),
  45. macro_new_mag(UGL_AP,2)
  46. };
  47. macro_new_magwell(GL_HE)[]=
  48. {
  49. macro_new_mag(HE_GL,3),
  50. macro_new_mag(UGL_EMP,1),
  51. macro_new_mag(UGL_HE,3)
  52. };
  53. macro_new_magwell(smoke)[]=
  54. {
  55. "3Rnd_Smoke_Grenade_shell",
  56. "3Rnd_SmokeRed_Grenade_shell",
  57. "3Rnd_SmokeGreen_Grenade_shell",
  58. "3Rnd_SmokeYellow_Grenade_shell",
  59. "3Rnd_SmokePurple_Grenade_shell",
  60. "3Rnd_SmokeBlue_Grenade_shell",
  61. "3Rnd_SmokeOrange_Grenade_shell",
  62. "ACE_HuntIR_M203"
  63. };
  64. };
  65. class macro_new_magwell(DC17_GL_Mags)
  66. {
  67. macro_new_magwell(1rnd_GL_flare)[]=
  68. {
  69. MACRO_GL_flare_rounds_1rnd
  70. };
  71. macro_new_magwell(1rnd_smoke)[]=
  72. {
  73. "1Rnd_Smoke_Grenade_shell",
  74. "1Rnd_SmokeRed_Grenade_shell",
  75. "1Rnd_SmokeGreen_Grenade_shell",
  76. "1Rnd_SmokeYellow_Grenade_shell",
  77. "1Rnd_SmokePurple_Grenade_shell",
  78. "1Rnd_SmokeBlue_Grenade_shell",
  79. "1Rnd_SmokeOrange_Grenade_shell",
  80. "ACE_HuntIR_M203"
  81. };
  82. }
  83. class macro_new_magwell(DC15C_Shotgun)
  84. {
  85. macro_new_magwell(shotgun)[]=
  86. {
  87. macro_new_mag(shotgun_scatter,6),
  88. macro_new_mag(shotgun_HE,6),
  89. macro_new_mag(shotgun_EMP,2)
  90. };
  91. };
  92. class macro_new_magwell(DC_15a_energy)
  93. {
  94. macro_new_magwell(DC_15a_energy)[]=
  95. {
  96. macro_new_mag(DC15a_Med,30),
  97. macro_new_mag(DC15a_High,15),
  98. macro_new_mag(DC15a_Low,60)
  99. };
  100. };
  101. class macro_new_magwell(rocket_RPS)
  102. {
  103. macro_new_magwell(rocket_RPS)[]=
  104. {
  105. macro_new_mag(RPS_AT,1),
  106. macro_new_mag(RPS_AA,1)
  107. };
  108. };
  109. };
  110. class CfgMagazines
  111. {
  112. class CA_Magazine;
  113. class UGL_FlareWhite_F;
  114. class 1Rnd_HE_Grenade_shell;
  115. class macro_new_mag(AT_GL,2): CA_Magazine
  116. {
  117. author = "RD501";
  118. scope = 2;
  119. type = 16;
  120. displayName = "2 Rnd LR AP DC-15A Grenades";
  121. displayNameShort = "2 Rnd LR AP DC-15A";
  122. picture = "\A3\Weapons_f\Data\ui\gear_UGL_slug_CA.paa";
  123. ammo = macro_new_ammo(GL_AT)
  124. initSpeed = 220;//120;
  125. count = 2;
  126. nameSound = "";
  127. descriptionShort = "2Rnd LR AP DC-15A Grenade";
  128. //mass = 30;
  129. mass = 15;
  130. };
  131. class macro_new_mag(HE_GL,3): macro_new_mag(AT_GL,2)
  132. {
  133. displayName = "3 Rnd LR HE DC-15A Grenades";
  134. displayNameShort = "3 RndLR HE DC-15A";
  135. count=3;
  136. ammo = macro_new_ammo(GL_HE)
  137. descriptionShort = "3Rnd LR HE DC-15A Grenade";
  138. initSpeed = 120;
  139. };
  140. class Titan_AA;
  141. class CA_LauncherMagazine;
  142. class Titan_AT;
  143. class macro_new_mag(RPS_AT,1): Titan_AT
  144. {
  145. scope = 2;
  146. displayName = "RPS 6 AT Rocket";
  147. ammo = macro_new_ammo(RPS_AT);
  148. type = "2 * 256";
  149. count = 1;
  150. initSpeed = 60;
  151. maxLeadSpeed = 60;
  152. mass = 70;
  153. };
  154. class macro_new_mag(RPS_AA,1): Titan_AA
  155. {
  156. author = "Bohemia Interactive";
  157. scope = 2;
  158. displayName = "RPS 6 AA Rocket";
  159. displayNameShort = "AA";
  160. ammo = macro_new_ammo(RPS_AA);
  161. type = "6 * 256";
  162. picture = "\A3\Weapons_F_beta\Launchers\titan\Data\UI\gear_titan_missile_atl_CA.paa";
  163. model = "\A3\Weapons_F_beta\Launchers\titan\titan_missile_atl";
  164. initSpeed = 18;
  165. maxLeadSpeed = 277.778;
  166. descriptionShort = "Type: Anti-Air<br />Rounds: 1<br />Used in: Titan MPRL";
  167. mass = 100;
  168. };
  169. class SmokeShell;
  170. class smoke_meme_mag: SmokeShell
  171. {
  172. author = "Bohemia Interactive";
  173. displayNameShort = "Yeet Smoke";
  174. ammo = "smoke_meme";
  175. picture = "\A3\Weapons_f\data\ui\gear_smokegrenade_blue_ca.paa";
  176. model = "\A3\Weapons_f\ammo\smokegrenade_blue";
  177. descriptionShort = "Type: Smoke Grenade - Blue<br />Rounds: 1<br />Used in: Hand";
  178. displayName = "[]M18 Smoke Grenade (Yeet)";
  179. };
  180. class 3AS_Chaingun_Drum_Mag;
  181. class macro_new_mag(z1000,3000) : 3AS_Chaingun_Drum_Mag
  182. {
  183. count = 3000;
  184. tracersEvery=1;
  185. ammo = macro_new_ammo(z1000)
  186. displayName="3000Rnd Z1000 Chaingun Drum";
  187. initSpeed=860;
  188. weight=1;
  189. scope=1;
  190. };
  191. };
  192. class CfgAmmo
  193. {
  194. class GrenadeHand;
  195. class M_Titan_AT;
  196. class R_PG32V_F;
  197. class R_TBG32V_F;
  198. class LaserAmmo_Minigun;
  199. class FlareBase;
  200. class G_40mm_HE;
  201. class ATMine_Range_Ammo;
  202. class PipeBombBase;
  203. class A_RocketHH15Clone_HEAT_FireForget;
  204. class M_Titan_AA;
  205. class DH17_Blaster_Ammo;
  206. class 3AS_Chaingun_Ammo;
  207. class M_Titan_AT;
  208. class macro_new_ammo(GL_AT): G_40mm_HE
  209. {
  210. hit = 350;
  211. indirectHit = 0;
  212. indirectHitRange = .1;
  213. timeToLive =30;
  214. model="\3AS\3AS_Equipment\model\3AS_coredetonator.p3d";
  215. fuseDistance = 3;
  216. explosive = 0.0001;
  217. deflecting = 5;
  218. caliber = 5;
  219. ace_frag_enabled = 0;
  220. ace_frag_force = 0;
  221. ace_frag_classes[] = {""};
  222. ace_frag_metal = 0;
  223. ace_frag_charge = 0;
  224. ace_frag_gurney_c = 0;
  225. ace_frag_gurney_k = "0";
  226. ace_rearm_caliber = 0;
  227. };
  228. class macro_new_ammo(GL_HE): G_40mm_HE
  229. {
  230. hit = 60;
  231. indirectHit = 50;
  232. indirectHitRange = 5;
  233. timeToLive =30;
  234. model="\3AS\3AS_Equipment\model\3AS_thermaldet.p3d";
  235. fuseDistance = 3;
  236. };
  237. class UNSC_Mine_Ammo: ATMine_Range_Ammo
  238. {
  239. hit = 2500;
  240. indirectHit = 2500;
  241. indirectHitRange = 20;
  242. };
  243. class TermMineA: PipeBombBase
  244. {
  245. hit = 400;
  246. indirectHit = 400;
  247. indirectHitRange = 25;
  248. };
  249. class TermMineC: PipeBombBase
  250. {
  251. hit = 2500;
  252. indirectHit = 2500;
  253. indirectHitRange = 15;
  254. };
  255. class macro_new_ammo(RPS_AT):M_Titan_AT
  256. {
  257. aiAmmoUsageFlags = "128 + 256 +512";
  258. hit = 95;
  259. thrust = 130;//130;
  260. thrustTime = 3.5;
  261. timeToLive = 20;
  262. indirectHit = 20;
  263. indirectHitRange = 2;
  264. };
  265. class macro_new_ammo(RPS_AA) : M_Titan_AA
  266. {
  267. hit = 800;
  268. indirectHit = 400;
  269. indirectHitRange = 1;
  270. };
  271. //212th stuff
  272. class SCI_PLX1_R : M_Titan_AT
  273. {
  274. hit = 95;
  275. indirectHit = 20;
  276. indirectHitRange = 2;
  277. };
  278. class SCI_RPS6_HEAA_R : R_PG32V_F
  279. {
  280. hit = 800;
  281. indirectHit = 400;
  282. indirectHitRange = 1;
  283. };
  284. class SCI_RPS6_HEDP_R : R_TBG32V_F
  285. {
  286. hit = 50;
  287. indirectHit = 60;
  288. indirectHitRange = 8;
  289. };
  290. class B_127x108_APDS;
  291. class SmokeShell;
  292. class smoke_meme: SmokeShell
  293. {
  294. model = "\A3\Weapons_f\ammo\smokegrenade_blue_throw";
  295. smokeColor[] = {0.1183, 0.1867, 1, 1};
  296. effectsSmoke = "smoke_yeet";
  297. };
  298. //LOOK HERE $$$
  299. class macro_new_ammo(z1000) : 3AS_Chaingun_Ammo
  300. {
  301. hit=57.45;
  302. caliber=3.5999999;
  303. indirectHit = 3;
  304. indirectHitRange = 0.5;
  305. explosive = 0.4;
  306. ACE_caliber=1;
  307. typicalSpeed=860;
  308. model="RD501_Vehicle_Weapons\_ammo\data\laser_small_blue.p3d";
  309. };
  310. };
  311. class smoke_yeet
  312. {
  313. class SmokeShell
  314. {
  315. simulation = "particles";
  316. type = "SMOKEEFFECT_MEME";
  317. position[] = {0, 0, 0};
  318. intensity = 1;
  319. interval = 1;
  320. };
  321. class SmokeShell2
  322. {
  323. simulation = "particles";
  324. type = "SmokeShellWhite2";
  325. position[] = {0, 0, 0};
  326. intensity = 1;
  327. interval = 1;
  328. };
  329. class SmokeShellUW
  330. {
  331. simulation = "particles";
  332. type = "SmokeShellWhiteUW";
  333. position[] = {0, 0, 0};
  334. intensity = 1;
  335. interval = 1;
  336. };
  337. class SmokeShell2UW
  338. {
  339. simulation = "particles";
  340. type = "SmokeShellWhite2UW";
  341. position[] = {0, 0, 0};
  342. intensity = 1;
  343. interval = 1;
  344. };
  345. };
  346. class CfgCloudlets
  347. {
  348. class Default;
  349. class SMOKEEFFECT_MEME: Default
  350. {
  351. animationSpeedCoef = 1;
  352. colorCoef[] = {"colorR", "colorG", "colorB", "colorA"};
  353. sizeCoef = 1;
  354. position[] = {0, 0, 0};
  355. interval = 0.03;
  356. circleRadius = 0;
  357. circleVelocity[] = {0, 0, 0};
  358. particleShape = "\A3\data_f\ParticleEffects\Universal\Universal";
  359. particleFSNtieth = 16;
  360. particleFSIndex = 7;
  361. particleFSFrameCount = 48;
  362. particleFSLoop = 1;
  363. angleVar = 0.1;
  364. animationName = "";
  365. particleType = "Billboard";
  366. timerPeriod = 1;
  367. lifeTime = 20;
  368. moveVelocity[] = {0.0, 0.0, 0.0};//{0.2, 0.1, 0.1};
  369. rotationVelocity = 1;
  370. weight = 1.2777;
  371. volume = 1;
  372. rubbing = 0.05;
  373. size[] = {6, 16};//{0.1, 2, 6};
  374. color[] = {{0.6, 0.6, 0.6, 0.2}, {0.6, 0.6, 0.6, 0.05}, {0.6, 0.6, 0.6, 0}};
  375. animationSpeed[] = {1.5, 0.5};
  376. randomDirectionPeriod = 1;
  377. randomDirectionIntensity = 0.04;
  378. onTimerScript = "";
  379. beforeDestroyScript = "";
  380. destroyOnWaterSurface = 1;
  381. destroyOnWaterSurfaceOffset = -0.6;
  382. lifeTimeVar = 2;
  383. positionVar[] = {0, 0, 0};
  384. MoveVelocityVar[] = {0.25, 0.25, 0.25};
  385. rotationVelocityVar = 20;
  386. sizeVar = 0.5;
  387. colorVar[] = {0, 0, 0, 0.35};
  388. randomDirectionPeriodVar = 0;
  389. randomDirectionIntensityVar = 0;
  390. };
  391. };
  392. class CfgRecoils
  393. {
  394. class recoil_default;
  395. class Default;
  396. class macro_new_recoil(westar_pistol): recoil_default
  397. {
  398. muzzleOuter[] = {"0.05", ".5", "0.1", "0.2"};
  399. kickBack[] = {"0.04", "0.08"};
  400. temporary = "0.06";
  401. };
  402. class macro_new_recoil(dc15_rb): Default
  403. {
  404. muzzleOuter[] = {"0.3*0.2", "6", "0.3*1", ".6"};
  405. muzzleInner[] = {0, 0, 0.1, 0.1};
  406. kickBack[] = {"0.03*2", "0.06*2.5"};
  407. permanent = "0.1*1.8";
  408. temporary = "0.01*1.2";
  409. };
  410. class Valken_Super_auto_recoil: Default
  411. {
  412. muzzleOuter[] = {".08*0.25", ".08*0.25", "0.3*0.25", ".1*0.25"};
  413. muzzleInner[] = {0, 0, 0.1, 0.1};
  414. kickBack[] = {"0.03*0.25", "0.03*0.25"};
  415. permanent = "0.1*0.25";
  416. temporary = "0.01*0.25";
  417. };
  418. };