config.cpp 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299
  1. #include "../RD501_main/config_macros.hpp"
  2. class CfgPatches
  3. {
  4. class RD501_patch_zeus
  5. {
  6. requiredAddons[] = {
  7. macro_lvl2_req
  8. };
  9. requiredVersion = 0.1;
  10. units[] = {
  11. macro_new_ordnance(IonBomb),
  12. macro_new_ordnance(Orbit),
  13. macro_new_ordnance(ModuleSquadShield),
  14. macro_new_ordnance(ModuleDioxis),
  15. macro_new_ordnance(ModuleShadow),
  16. macro_new_ordnance(OrbitalLaser),
  17. rd501_moduleJammerSettings,
  18. rd501_moduleClearAllJammers,
  19. rd501_moduleVolatileSettings,
  20. };
  21. weapons[] = {};
  22. };
  23. };
  24. class CfgFunctions
  25. {
  26. class tts_beam
  27. {
  28. class beam
  29. {
  30. file = "\RD501_Zeus\functions";
  31. class beam {};
  32. class rayParticles {};
  33. class ragdollUnit {};
  34. class explosionDamage {};
  35. class explosionParticles {};
  36. class postProcessEffects {};
  37. class configMenu {};
  38. };
  39. };
  40. };
  41. class CfgSounds
  42. {
  43. class laser_impact
  44. {
  45. name = "laser_impact";
  46. sound[] = {"\RD501_Zeus\sounds\laser_impact.ogg", 50, 1, 5000};
  47. titles[] = {};
  48. };
  49. class laser
  50. {
  51. name = "laser";
  52. sound[] = {"\RD501_Zeus\sounds\laser.ogg", 50, 1, 5000};
  53. titles[] = {};
  54. };
  55. };
  56. class CfgFactionClasses {
  57. class Jammers {
  58. displayName = "Jammers";
  59. priority = 2;
  60. side = 7;
  61. };
  62. };
  63. class CfgVehicles
  64. {
  65. class Module_F;
  66. class ModuleOrdnance_F;
  67. class ModuleChemlight_F;
  68. class ModuleOrdnanceHowitzer_F;
  69. class rd501_moduleClearAllJammers: Module_F {
  70. author = "RD501";
  71. category = "Jammers";
  72. function = "rd501_zeus_fnc_moduleJammerClearAll";
  73. isGlobal = 1;
  74. isTriggerActivated = 0;
  75. scope = 1;
  76. scopeCurator = 2;
  77. curatorCanAttach = 1;
  78. displayName = "Clear All Jammers";
  79. portrait = "RD501_Zeus\ui\jammer_icon.paa";
  80. };
  81. class rd501_moduleJammerSettings: Module_F {
  82. author = "RD501";
  83. category = "Jammers";
  84. function = "ace_common_dummy";
  85. functionPriority = 1;
  86. isGlobal = 1;
  87. isTriggerActivated = 0;
  88. scope = 1;
  89. scopeCurator = 2;
  90. curatorCanAttach = 1;
  91. displayName = "Add Jammer";
  92. curatorInfoType = "RD501_RscJammerSettings";
  93. portrait = "RD501_Zeus\ui\jammer_icon.paa";
  94. };
  95. class rd501_moduleVolatileSettings: Module_F {
  96. author = "RD501";
  97. category = "Ordnance";
  98. function = "ace_common_dummy";
  99. functionPriority = 1;
  100. isGlobal = 1;
  101. isTriggerActivated = 0;
  102. scope = 1;
  103. scopeCurator = 2;
  104. curatorCanAttach = 1;
  105. displayName = "Make Volatile Cargo";
  106. curatorInfoType = "RD501_RscVolatileSettings";
  107. portrait = "RD501_Zeus\ui\explosion_zeus_icon_small.paa";
  108. };
  109. class macro_new_ordnance(ModuleSquadShield): ModuleChemlight_F
  110. {
  111. author = "RD501";
  112. _generalMacro = MACRO_QUOTE(macro_new_ordnance(ModuleSquadShield));
  113. scope = 1;
  114. scopeCurator = 2;
  115. category = "Ordnance";
  116. displayName = "Squad Shield";
  117. portrait = "RD501_Zeus\ui\wide_kite_64.paa";
  118. ammo = MACRO_QUOTE(macro_new_ammo(squad_shield_sigma));
  119. delete Arguments;
  120. };
  121. class macro_new_ordnance(ModuleDioxis): ModuleChemlight_F
  122. {
  123. author = "RD501";
  124. _generalMacro = MACRO_QUOTE(macro_new_ordnance(ModuleDioxis));
  125. scope = 1;
  126. scopeCurator = 2;
  127. category = "Ordnance";
  128. displayName = "Dioxis Cloud";
  129. portrait = "RD501_Zeus\ui\biohazard_64.paa";
  130. ammo = MACRO_QUOTE(macro_new_ordnance_ammo(Dioxis_long));
  131. delete Arguments;
  132. };
  133. class macro_new_ordnance(ModuleShadow): ModuleChemlight_F
  134. {
  135. author = "RD501";
  136. _generalMacro = MACRO_QUOTE(macro_new_ordnance(ModuleShadow));
  137. scope = 1;
  138. scopeCurator = 2;
  139. category = "Ordnance";
  140. displayName = "Shadow Virus";
  141. portrait = "RD501_Zeus\ui\biohazard_64.paa";
  142. ammo = MACRO_QUOTE(macro_new_ordnance_ammo(Shadow_long));
  143. delete Arguments;
  144. };
  145. class macro_new_ordnance(IonBomb): ModuleOrdnance_F
  146. {
  147. author = "RD501";
  148. _generalMacro = MACRO_QUOTE(macro_new_ordnance(IonBomb));
  149. isGlobal = 1;
  150. scope = 1;
  151. scopeCurator = 2;
  152. simulation = "house";
  153. category = "Ordnance";
  154. model = "\a3\Modules_F_Curator\Ordnance\surfacehowitzer.p3d";
  155. displayName = "Ion Mortar";
  156. portrait = "\a3\Modules_F_Curator\Data\portraitOrdnanceMortar_ca.paa";
  157. ammo = MACRO_QUOTE(macro_new_ordnance_ammo(IonBomb));
  158. delete Arguments;
  159. };
  160. class macro_new_ordnance(Orbit): ModuleOrdnance_F
  161. {
  162. author = "RD501";
  163. _generalMacro = MACRO_QUOTE(macro_new_ordnance(Orbit));
  164. displayName = "Orbital Strike";
  165. model = "\a3\Modules_F_Curator\Ordnance\surfacehowitzer.p3d";
  166. isGlobal = 1;
  167. scope = 1;
  168. scopeCurator = 2;
  169. simulation = "house";
  170. category = "Ordnance";
  171. portrait = "\a3\Modules_F_Curator\Data\portraitOrdnanceMortar_ca.paa";
  172. ammo = MACRO_QUOTE(macro_new_ordnance_ammo(Orbital));
  173. delete Arguments;
  174. };
  175. class macro_new_ordnance(OrbitalLaser): Module_F {
  176. author = "RD501";
  177. curatorCanAttach = 1;
  178. isGlobal = 1;
  179. scope = 1;
  180. scopeCurator = 2;
  181. isTriggerActivated = 0;
  182. category = "Ordnance";
  183. displayName = "Orbital Laser";
  184. function = "tts_beam_fnc_configMenu";
  185. portrait = "RD501_Zeus\ui\explosion_zeus_icon_small.paa";
  186. };
  187. };
  188. class CfgAmmo
  189. {
  190. class ModuleOrdnanceHowitzer_F_ammo;
  191. class ModuleOrdnanceMortar_F_ammo;
  192. class ModuleOrdnanceRocket_F_ammo;
  193. class macro_new_ammo(blueshadow);
  194. class macro_new_ammo(dioxis);
  195. class macro_new_ordnance_ammo(Dioxis_long): macro_new_ammo(dioxis)
  196. {
  197. timeToLive = 300;
  198. };
  199. class macro_new_ordnance_ammo(Shadow_long): macro_new_ammo(blueshadow)
  200. {
  201. timeToLive = 300;
  202. };
  203. class macro_new_ordnance_ammo(IonBomb): ModuleOrdnanceMortar_F_ammo
  204. {
  205. caliber = 1100;
  206. hit = 180;
  207. airFriction = 0;
  208. canLock = 0;
  209. deflecting = 0;
  210. explosive = 1;
  211. fuseDistance = 30;
  212. indirectHit = 70;
  213. indirectHitRange = 20;
  214. maxSpeed = 1100;
  215. typicalSpeed = 950;
  216. sideAirFriction = 0;
  217. simulation = "ShotShell";
  218. timeToLive = 180;
  219. model = "\ywing\pro_bomb.p3d";
  220. tracerStartTime = 0;
  221. supersonicCrackNear[] = {"A3\sounds_f\weapons\hits\sscrack1",1.0,1,40};
  222. supersonicCrackFar[] = {"A3\sounds_f\weapons\hits\sscrack2",1.0,1,100};
  223. CraterEffects = "HEShellCrater";
  224. effectFlare = "FlareShell";
  225. effectsMissileInit = "RocketBackEffectsStaticRPGBlue";
  226. EffectFly = "ArtilleryTrailsBlue";
  227. CraterWaterEffects = "ImpactEffectsWaterHE";
  228. ExplosionEffects = "ProtonbombAmmoExplosion";
  229. };
  230. class macro_new_ordnance_ammo(DioxisCluster): ModuleOrdnanceRocket_F_ammo
  231. {
  232. caliber = 1100;
  233. hit = 1;
  234. allowAgainstInfantry = 1;
  235. canLock = 0;
  236. explosive = 1;
  237. fuseDistance = 35;
  238. indirectHit = 3;
  239. indirectHitRange = 50;
  240. maxSpeed = 1100;
  241. typicalSpeed = 1050;
  242. sideAirFriction = 0;
  243. submunitionConeType[] = {"poissonDisc", 10};
  244. submunitionAmmo[] = {macro_new_ammo(dioxis),1};
  245. submunitionConeAngle = 50;
  246. simulation = "shotSubmunitions";
  247. timeToLive = 120;
  248. tracerStartTime = 0;
  249. visibleFire = 100;
  250. visibleFireTime = 300;
  251. CraterEffects = "HEShellCrater";
  252. effectsSmoke = "Dioxis_Smoke";
  253. effectFlare = "FlareShell";
  254. effectsMissileInit = "RocketBackEffectsStaticRPGBlue";
  255. EffectFly = "ArtilleryTrailsBlue";
  256. CraterWaterEffects = "ImpactEffectsWaterHE";
  257. ExplosionEffects = "ProtonbombAmmoExplosion";
  258. };
  259. class macro_new_ordnance_ammo(Orbital): ModuleOrdnanceHowitzer_F_ammo
  260. {
  261. caliber = 950;
  262. hit = 550;
  263. allowAgainstInfantry = 1;
  264. canLock = 0;
  265. explosive = 1;
  266. fuseDistance = 30;
  267. indirectHit = 300;
  268. indirectHitRange = 30;
  269. maxSpeed = 1100;
  270. typicalSpeed = 1050;
  271. sideAirFriction = 0;
  272. submunitionAmmo = "";
  273. submunitionConeAngle = 30;
  274. simulation = "shotSubmunitions";
  275. timeToLive = 120;
  276. tracerStartTime = 0;
  277. visibleFire = 100;
  278. visibleFireTime = 300;
  279. CraterEffects = "HEShellCrater";
  280. effectFlare = "FlareShell";
  281. effectsMissileInit = "RocketBackEffectsStaticRPGBlue";
  282. EffectFly = "ArtilleryTrailsBlue";
  283. CraterWaterEffects = "ImpactEffectsWaterHE";
  284. ExplosionEffects = "ProtonbombAmmoExplosion";
  285. };
  286. };
  287. class Extended_PreInit_EventHandlers
  288. {
  289. class RD501_Zeus_PreInit
  290. {
  291. init="call compileFinal preprocessFileLineNumbers 'RD501_Zeus\XEH_preInit.sqf'";
  292. };
  293. };
  294. #include "ui\RscAttributes.hpp"