config.cpp 9.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413
  1. #include "..\script_component.hpp"
  2. class CfgPatches
  3. {
  4. class RD501_patch_staticturret
  5. {
  6. addonRootClass=MACRO_QUOTE(RD501_patch_vehicles);
  7. requiredAddons[]=
  8. {
  9. RD501_patch_vehicles
  10. };
  11. requiredVersion=0.1;
  12. units[]=
  13. {
  14. macro_new_vehicle(stat,reweb),
  15. macro_new_vehicle(stat,ragl40),
  16. macro_new_vehicle(stat,Striker),
  17. macro_new_vehicle(stat,Railgun)
  18. };
  19. weapons[]=
  20. {
  21. macro_new_weapon(stat,eweb),
  22. macro_new_weapon(stat,ragl40),
  23. macro_new_weapon(stat,aap4),
  24. macro_new_weapon(stat,mar1)
  25. };
  26. };
  27. };
  28. class CfgVehicles
  29. {
  30. class StaticMGWeapon;
  31. class LandVehicle;
  32. class StaticWeapon : LandVehicle
  33. {
  34. class Turrets;
  35. };
  36. class StaticAAWeapon:StaticWeapon
  37. {
  38. class Turrets;
  39. };
  40. class OPTRE_LAU65D_pod:StaticAAWeapon
  41. {
  42. class Turrets:Turrets{
  43. class MainTurret;};
  44. };
  45. class 3AS_HeavyRepeater_base:StaticMGWeapon
  46. {
  47. class Turrets;
  48. };
  49. class 3AS_HeavyRepeater_Unarmoured: 3AS_HeavyRepeater_base
  50. {
  51. class Turrets: Turrets
  52. {
  53. class MainTurret;
  54. };
  55. };
  56. class 3AS_HeavyRepeater_Armoured:3AS_HeavyRepeater_base
  57. {
  58. class Turrets: Turrets
  59. {
  60. class MainTurret;
  61. };
  62. };
  63. class OPTRE_Static_M41:StaticMGWeapon
  64. {
  65. class Turrets;
  66. };
  67. class OPTRE_Static_Gauss : OPTRE_Static_M41
  68. {
  69. class Turrets: Turrets
  70. {
  71. class MainTurret;
  72. };
  73. };
  74. class macro_new_vehicle(stat,reweb): 3AS_HeavyRepeater_Unarmoured
  75. {
  76. armor=50;
  77. scope = 2;
  78. author="501st Aux Mod";
  79. displayName = "Republic Heavy E-Web";
  80. faction = MACRO_QUOTE(macro_faction(republic));
  81. editorSubcategory = MACRO_QUOTE(macro_editor_cat(turrets));
  82. vehicleClass = MACRO_QUOTE(macro_editor_vehicle_type(turrets));
  83. ace_cargo_size = 1;
  84. class Turrets: Turrets
  85. {
  86. class MainTurret: MainTurret
  87. {
  88. weapons[]=
  89. {
  90. macro_new_weapon(stat,eweb)
  91. };
  92. magazines[]=
  93. {
  94. macro_new_mag(eweb,1000)
  95. };
  96. };
  97. };
  98. class assembleInfo
  99. {
  100. dissasembleTo[]=
  101. {
  102. macro_new_vehicle(stat,reweb_bag)
  103. };
  104. };
  105. };
  106. class macro_new_vehicle(stat,ragl40): 3AS_HeavyRepeater_Armoured
  107. {
  108. armor=50;
  109. scope = 2;
  110. author="501st Aux Mod";
  111. displayName = "RAGL40 'Boomer'";
  112. faction = MACRO_QUOTE(macro_faction(republic));
  113. editorSubcategory = MACRO_QUOTE(macro_editor_cat(turrets));
  114. vehicleClass = MACRO_QUOTE(macro_editor_vehicle_type(turrets));
  115. ace_cargo_size = 1;
  116. class Turrets: Turrets
  117. {
  118. class MainTurret: MainTurret
  119. {
  120. weapons[]=
  121. {
  122. macro_new_weapon(stat,ragl40)
  123. };
  124. magazines[]=
  125. {
  126. macro_new_mag(ragl40he,40)
  127. };
  128. };
  129. };
  130. class assembleInfo
  131. {
  132. dissasembleTo[]=
  133. {
  134. macro_new_vehicle(stat,ragl40_bag)
  135. };
  136. };
  137. };
  138. class macro_new_vehicle(stat,Striker): OPTRE_LAU65D_pod
  139. {
  140. armor=50;
  141. scope = 2;
  142. author="501st Aux Mod";
  143. displayName = "AAP4 'Striker'";
  144. faction = MACRO_QUOTE(macro_faction(republic));
  145. editorSubcategory = MACRO_QUOTE(macro_editor_cat(turrets));
  146. vehicleClass = MACRO_QUOTE(macro_editor_vehicle_type(turrets));
  147. model = "\OPTRE_Weapons\static\LAU65D\LAU65D_pod.p3d";
  148. ace_cargo_size = 1;
  149. class Turrets: Turrets
  150. {
  151. class MainTurret: MainTurret
  152. {
  153. animationSourceBody = "Turret_rot";
  154. animationSourceCamElev = "camElev";
  155. animationSourceGun = "camElev";
  156. memoryPointsGetInGunner = "pos_gunner";
  157. memoryPointsGetInGunnerDir = "pos_gunner_dir";
  158. body = "Turret_rot";
  159. discreteDistanceCameraPoint[] = {"eye"};
  160. stabilizedInAxes = "StabilizedInAxesNone";
  161. gunnerAction = "Gunner_OPTRE_Lau";
  162. maxTurn = 360;
  163. weapons[] = {macro_new_weapon(stat,aap4)};
  164. magazines[] = {macro_new_mag(aap,4)};
  165. //weapons[]={"ace_javelin_Titan_Static"};
  166. //magazines[]={"1Rnd_GAT_missiles"};
  167. turretInfoType = "ACE_RscOptics_javelin";
  168. gunnerOpticsColor[] = {0,0,0,1};
  169. gunnerOpticsEffect[] = {};
  170. gunnerOpticsModel = "\z\ace\addons\javelin\data\reticle_titan.p3d";
  171. gunnerOpticsShowCursor = 0;
  172. };
  173. };
  174. class assembleInfo
  175. {
  176. dissasembleTo[]=
  177. {
  178. macro_new_vehicle(stat,Striker_bag)
  179. };
  180. };
  181. };
  182. class macro_new_vehicle(stat,Railgun): OPTRE_Static_Gauss
  183. {
  184. armor=50;
  185. scope = 2;
  186. author="501st Aux Mod";
  187. displayName = "MAR1 'Driver'";
  188. faction = MACRO_QUOTE(macro_faction(republic));
  189. editorSubcategory = MACRO_QUOTE(macro_editor_cat(turrets));
  190. vehicleClass = MACRO_QUOTE(macro_editor_vehicle_type(turrets));
  191. ace_cargo_size = 1;
  192. class Turrets: Turrets
  193. {
  194. class MainTurret: MainTurret
  195. {
  196. weapons[]=
  197. {
  198. macro_new_weapon(stat,mar1)
  199. };
  200. magazines[]=
  201. {
  202. macro_new_mag(mar,1)
  203. };
  204. class Viewoptics
  205. {
  206. initAngleX = 0;
  207. initAngleY = 0;
  208. initFov = 0.75;
  209. maxAngleX = 30;
  210. maxAngleY = 100;
  211. maxFov = 1.1;
  212. maxMoveX = 0;
  213. maxMoveY = 0;
  214. maxMoveZ = 0;
  215. minAngleX = -30;
  216. minAngleY = -100;
  217. minFov = 0.0125;
  218. minMoveX = 0;
  219. minMoveY = 0;
  220. minMoveZ = 0;
  221. opticsZoomInit = 0.75;
  222. opticsZoomMax = 0.75;
  223. opticsZoomMin = 0.25;
  224. thermalMode[] = {5,6};
  225. visionMode[] = {"Normal","NVG","Ti"};
  226. };
  227. };
  228. };
  229. class assembleInfo
  230. {
  231. dissasembleTo[]=
  232. {
  233. macro_new_vehicle(stat,Railgun_bag)
  234. };
  235. };
  236. };
  237. class Weapon_bag_base;
  238. class JLTS_UAV_prowler_gar_backpack:Weapon_bag_base
  239. {
  240. class assembleInfo;
  241. };
  242. class macro_new_vehicle(stat,reweb_bag):JLTS_UAV_prowler_gar_backpack
  243. {
  244. displayName="Republic E-Web Bag";
  245. hiddenSelectionsTextures[]=
  246. {
  247. "\RD501_Vehicles\static\data\rd501_backpack_staticweapons_eweb.paa"
  248. };
  249. class assembleInfo: assembleInfo
  250. {
  251. displayName="E-Web";
  252. assembleTo = macro_new_vehicle(stat,reweb);
  253. };
  254. };
  255. class macro_new_vehicle(stat,ragl40_bag):JLTS_UAV_prowler_gar_backpack
  256. {
  257. displayName="RAGL40 'Boomer' Bag";
  258. hiddenSelectionsTextures[]=
  259. {
  260. "\RD501_Vehicles\static\data\rd501_backpack_staticweapons_grenade.paa"
  261. };
  262. class assembleInfo: assembleInfo
  263. {
  264. displayName="Boomer";
  265. assembleTo = macro_new_vehicle(stat,ragl40);
  266. };
  267. };
  268. class macro_new_vehicle(stat,Striker_bag):JLTS_UAV_prowler_gar_backpack
  269. {
  270. displayName="AAP4 'Striker' Bag";
  271. hiddenSelectionsTextures[]=
  272. {
  273. "\RD501_Vehicles\static\data\rd501_backpack_staticweapons_rocket.paa"
  274. };
  275. class assembleInfo: assembleInfo
  276. {
  277. displayName="Striker";
  278. assembleTo = macro_new_vehicle(stat,Striker);
  279. };
  280. };
  281. class macro_new_vehicle(stat,Railgun_bag):JLTS_UAV_prowler_gar_backpack
  282. {
  283. displayName="MAR1 'Driver' Bag";
  284. hiddenSelectionsTextures[]=
  285. {
  286. "\RD501_Vehicles\static\data\rd501_backpack_staticweapons_sniper.paa"
  287. };
  288. class assembleInfo: assembleInfo
  289. {
  290. displayName="Driver";
  291. assembleTo = macro_new_vehicle(stat,Railgun);
  292. };
  293. };
  294. };
  295. class CfgWeapons
  296. {
  297. class 3AS_HeavyRepeater;
  298. class 3AS_BlasterTurret_Repeater:3AS_HeavyRepeater
  299. {
  300. class manual;
  301. };
  302. class macro_new_weapon(stat,eweb):3AS_BlasterTurret_Repeater
  303. {
  304. magazineReloadTime=2;
  305. class manual: manual
  306. {
  307. dispersion=0.011;
  308. reloadTime=0.05;
  309. };
  310. magazines[]=
  311. {
  312. macro_new_mag(eweb,1000)
  313. };
  314. };
  315. class macro_new_weapon(stat,ragl40):3AS_BlasterTurret_Repeater
  316. {
  317. magazineReloadTime=2;
  318. class manual: manual
  319. {
  320. multiplier=1;
  321. };
  322. magazines[]=
  323. {
  324. macro_new_mag(ragl40he,40)
  325. };
  326. };
  327. class ace_javelin_Titan_Static;
  328. class macro_new_weapon(stat,aap4):ace_javelin_Titan_Static
  329. {
  330. magazineReloadTime=2;
  331. ace_javelin_enabled = 1; // Enable Javelin-style locking (0-disabled, 1-enabled)
  332. weaponInfoType = "ACE_RscOptics_javelin"; // Inteface
  333. modelOptics = "\z\ace\addons\javelin\data\reticle_titan.p3d"; // Optics model
  334. canLock = 0; // Disable vanilla locking (0-disabled, 1-enabled)
  335. lockingTargetSound[] = {"", 0, 1}; // Locking sound
  336. lockedTargetSound[] = {"", 0, 1}; // Target acquired sound
  337. hiddenSelectionsTextures[]=
  338. {
  339. "RD501_Vehicles\textures\static\warthog_addons_grey_co.paa"
  340. };
  341. magazines[]=
  342. {
  343. macro_new_mag(aap,4)
  344. };
  345. };
  346. class macro_new_weapon(stat,mar1):3AS_BlasterTurret_Repeater
  347. {
  348. magazineReloadTime=2;
  349. class manual: manual
  350. {
  351. dispersion=0.00001;
  352. };
  353. magazines[]=
  354. {
  355. macro_new_mag(mar,1)
  356. };
  357. };
  358. };
  359. class CfgMagazines
  360. {
  361. class 3AS_500_Rnd_BlasterTurret_mag;
  362. class 40Rnd_20mm_G_belt;
  363. class 1Rnd_GAT_missiles;
  364. class macro_new_mag(eweb,1000): 3AS_500_Rnd_BlasterTurret_mag
  365. {
  366. scope=2;
  367. scopeArsenal = 2;
  368. type=256;
  369. picture="\RD501_Vehicles\static\data\rd501_icon_mag_staticeweb.paa";
  370. displayName= "Republic E-Web Charge";
  371. count=1000;
  372. ammo=macro_new_ammo(z1000);
  373. weaponpoolavailable=1;
  374. };
  375. class macro_new_mag(ragl40he,40): 40Rnd_20mm_G_belt
  376. {
  377. scope=2;
  378. scopeArsenal = 2;
  379. type=256;
  380. picture="\RD501_Vehicles\static\data\rd501_icon_mag_staticgl.paa";
  381. muzzleImpulseFactor[] = {0,0};
  382. displayName= "RAGL40 'Boomer' belt";
  383. count=40;
  384. ammo=macro_new_ammo(UGL_HE);
  385. weaponpoolavailable=1;
  386. };
  387. class macro_new_mag(aap,4): 1Rnd_GAT_missiles
  388. {
  389. scope=2;
  390. scopeArsenal = 2;
  391. type=256;
  392. picture="\RD501_Vehicles\static\data\rd501_icon_mag_staticaap.paa";
  393. displayName= "AAP4 'Striker' Pod";
  394. count=4;
  395. ammo="ACE_Javelin_FGM148_Static";
  396. //ammo=macro_new_ammo(striker)
  397. weaponpoolavailable=1;
  398. };
  399. class macro_new_mag(mar,1): 3AS_500_Rnd_BlasterTurret_mag
  400. {
  401. scope=2;
  402. scopeArsenal = 2;
  403. type=256;
  404. picture="\RD501_Vehicles\static\data\rd501_icon_mag_staticrailgun.paa";
  405. displayName= "MAR1 'Driver' Slug";
  406. count=1;
  407. initSpeed=1500;
  408. ammo=macro_new_ammo(mar1);
  409. weaponpoolavailable=1;
  410. };
  411. };