config.cpp 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474
  1. //Get this addons macro
  2. //get the macro for the air subaddon
  3. //get generlized macros
  4. #include "../../../RD501_main/config_macros.hpp"
  5. //General name of the vehicle
  6. #define vehicle_addon drones
  7. #define patch_name MODNAME##vehicle_addon##_Patches
  8. #define vehicle_classname MODNAME##_##vehicle_addon
  9. #define new_drone_class(name) vehicle_classname##_##name
  10. class CfgPatches
  11. {
  12. class macro_patch_name(drones)
  13. {
  14. addonRootClass=macro_patch_name(vehicles)
  15. requiredAddons[]=
  16. {
  17. "A3_data_F",
  18. "A3_anims_F",
  19. "A3_weapons_F",
  20. "A3_characters_F",
  21. macro_patch_name(vehicles)
  22. };
  23. requiredVersion=0.1;
  24. units[]=
  25. {
  26. macro_new_vehicle(drone,cis_Hover_Droid),
  27. macro_new_vehicle(drone,Interrogation_Droid),
  28. macro_new_vehicle(drone,CIS_Dio_Droid),
  29. macro_new_vehicle(drone,Rebel_Dio_Droid),
  30. macro_new_vehicle(drone,Clone_Recon_Droid),
  31. macro_new_vehicle(drone,Clone_Recon_Droid_ATTE),
  32. macro_new_vehicle(drone,rep_stealth_fixedwing),
  33. macro_new_vehicle(drone,cis_stealth_fixedwing),
  34. macro_new_vehicle(drone,razor_stealth_fixedwing),
  35. macro_new_vehicle(drone,razor_recon),
  36. macro_new_vehicle(drone,razor_recon_bag),
  37. macro_new_vehicle(drone,Clone_Recon_bag)
  38. };
  39. weapons[]=
  40. {
  41. };
  42. };
  43. };
  44. #include "../../common/sensor_templates.hpp"
  45. class CBA_Extended_EventHandlers_base;
  46. class CfgVehicles
  47. {
  48. #include "inheritance.hpp"
  49. class macro_new_vehicle(drone,cis_Hover_Droid): swcishoverdroid
  50. {
  51. scope=2
  52. forceInGarage = 1;
  53. displayName = "CIS Hover Droid MK.II";
  54. armor = 0.1;
  55. cost = 20000;
  56. altFullForce = 1000;
  57. altNoForce = 1100;
  58. LODTurnedIn = -1;
  59. hiddenselectionstextures[] = {"SW_CloneWarsWeapons\Recon\hover_droid_diff.paa"};
  60. faction = macro_cis_faction
  61. class EventHandlers {
  62. class CBA_Extended_EventHandlers: CBA_Extended_EventHandlers_base {};
  63. };
  64. class Turrets: Turrets
  65. {
  66. class MainTurret:MainTurret
  67. {
  68. weapons[] = {"Laserdesignator_mounted","heavyrepeater"};
  69. magazines[] = {
  70. "Laserbatteries",
  71. "SWOP_HeavyRepeater_Mag",
  72. "SWOP_HeavyRepeater_Mag",
  73. "SWOP_HeavyRepeater_Mag","SWOP_HeavyRepeater_Mag",
  74. "SWOP_HeavyRepeater_Mag","SWOP_HeavyRepeater_Mag",
  75. "SWOP_HeavyRepeater_Mag","SWOP_HeavyRepeater_Mag"
  76. };
  77. }
  78. }
  79. };
  80. class macro_new_vehicle(drone,Interrogation_Droid): SWOP_interrogationdroid
  81. {
  82. author = "RD501";
  83. scope=2
  84. forceInGarage = 1;
  85. displayName = "Interrogation Droid MK.II";
  86. altFullForce = 1000;
  87. altNoForce = 1100;
  88. faction = macro_cis_faction
  89. class EventHandlers {
  90. class CBA_Extended_EventHandlers: CBA_Extended_EventHandlers_base {};
  91. };
  92. };
  93. class macro_new_vehicle(drone,CIS_Dio_Droid): SWOP_Dio_Droid
  94. {
  95. author = "RD501";
  96. scope=2
  97. forceInGarage = 1;
  98. displayName = "ID10 Droid MK.II";
  99. altFullForce = 1000;
  100. altNoForce = 1100;
  101. faction = macro_cis_faction
  102. class EventHandlers {
  103. class CBA_Extended_EventHandlers: CBA_Extended_EventHandlers_base {};
  104. };
  105. };
  106. class macro_new_vehicle(drone,Rebel_Dio_Droid): SWOP_Rebel_Dio_Droid
  107. {
  108. author = "RD501";
  109. scope=2
  110. forceInGarage = 1;
  111. displayName = "Rebel ID10 Droid MK.II";
  112. altFullForce = 1000;
  113. altNoForce = 1100;
  114. faction = macro_rebel_faction
  115. class EventHandlers {
  116. class CBA_Extended_EventHandlers: CBA_Extended_EventHandlers_base {};
  117. };
  118. };
  119. class macro_new_vehicle(drone,Clone_Recon_bag):JLTS_UAV_prowler_gar_backpack
  120. {
  121. displayName="R-2 Drone Bag";
  122. hiddenSelectionsTextures[]=
  123. {
  124. "\RD501_Vehicles\air\drones\Clone_backpack_uav.paa"
  125. };
  126. class assembleInfo: assembleInfo
  127. {
  128. displayName="R2 Drone Bag";
  129. assembleTo = macro_new_vehicle(drone,Clone_Recon_Droid)
  130. };
  131. };
  132. #define ARR_2(a,b) a,b
  133. class macro_new_vehicle(drone,Clone_Recon_Droid): swclonerecondroid
  134. {
  135. author = "RD501";
  136. scope=2
  137. forceInGarage = 1;
  138. displayName = "R-2 Recon Droid";
  139. altFullForce = 100;
  140. altNoForce = 1000;
  141. fuelCapacity = 90;
  142. fuelConsumptionRate = 1;
  143. faction = macro_republic_faction;
  144. /* model = "\SW_CloneWarsWeapons\Recon\swclonerecon.p3d";
  145. hiddenSelections[]=
  146. {
  147. "camo"
  148. };
  149. hiddenSelectionsTextures[]=
  150. {
  151. "\SW_CloneWarsWeapons\Recon\com_weap_probedroid.paa"
  152. };*/
  153. class ACE_Actions: ACE_Actions {
  154. class ACE_MainActions: ACE_MainActions {
  155. condition = macro_quote(true);
  156. class RD501_Drone_Refuel
  157. {
  158. displayName = "Refuel Drone";
  159. distance = 4;
  160. condition = macro_quote([ARR_2(_player,_target)] call macro_fnc_name(canRefuel));
  161. statement = macro_quote([ARR_2(_player,_target)] call macro_fnc_name(refuelUAVDrone));
  162. position = macro_quote(call ace_interaction_fnc_getVehiclePos);
  163. };
  164. };
  165. };
  166. class assembleInfo
  167. {
  168. dissasembleTo[]=
  169. {
  170. macro_new_vehicle(drone,Clone_Recon_bag)
  171. };
  172. };
  173. };
  174. class macro_new_vehicle(drone,Clone_Recon_Droid_ATTE):swclonerecondroid
  175. {
  176. displayname = "AT-TE Commander Camera";
  177. scope=2
  178. forceInGarage = 1;
  179. author = "RD501";
  180. faction = macro_republic_faction
  181. class EventHandlers {
  182. class CBA_Extended_EventHandlers: CBA_Extended_EventHandlers_base {};
  183. };
  184. };
  185. class macro_new_vehicle(drone,rep_stealth_fixedwing):B_UAV_05_F
  186. {
  187. displayname = "GAR Phantom";
  188. scope=2;
  189. forceInGarage = 1;
  190. author = "RD501";
  191. faction = macro_republic_faction
  192. hiddenSelections[] = {"camo1","camo2"};
  193. hiddenSelectionsMaterials[] = {"\RD501_Vehicles\textures\sentinel\phantom_fuselage_01.rvmat",""};
  194. hiddenSelectionsTextures[] = {"\RD501_Vehicles\textures\sentinel\phantom_fuselage_01_gar_co.paa",""};
  195. weapons[] = {
  196. macro_basic_air_weapons,
  197. macro_new_weapon(generic,ion_aircraft_cannon)
  198. };
  199. magazines[] = {
  200. macro_basic_air_mags,
  201. macro_new_mag(generic_aircraft_cannon_blue,1000),
  202. macro_new_mag(generic_aircraft_cannon_blue,1000)
  203. };
  204. class pilotCamera
  205. {
  206. class OpticsIn
  207. {
  208. class Wide
  209. {
  210. opticsDisplayName = "WFOV";
  211. initAngleX = 0;
  212. minAngleX = 0;
  213. maxAngleX = 0;
  214. initAngleY = 0;
  215. minAngleY = 0;
  216. maxAngleY = 0;
  217. initFov=0.42;//"(30 / 120)";
  218. minFov=0.42;//"(30 / 120)";
  219. maxFov=0.42;//"(30 / 120)";
  220. directionStabilized = 1;
  221. visionMode[] = {"Normal","NVG", "Ti"};
  222. thermalMode[] = {0,1,2,3,4,5};
  223. gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_wide_F.p3d";
  224. opticsPPEffects[] = {"OpticsCHAbera2", "OpticsBlur2"};
  225. };
  226. class Medium: Wide
  227. {
  228. opticsDisplayName = "MFOV";
  229. initFov="0.42/4";//"(30 / 120)";
  230. minFov="0.42/4";//"(30 / 120)";
  231. maxFov="0.42/4";//"(30 / 120)";
  232. gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_medium_F.p3d";
  233. };
  234. class Narrow: Wide
  235. {
  236. opticsDisplayName = "NFOV";
  237. initFov="0.42/8";//"(30 / 120)";
  238. minFov="0.42/8";//"(30 / 120)";
  239. maxFov="0.42/8";//"(30 / 120)";
  240. gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d";
  241. };
  242. class NarrowX16: Wide
  243. {
  244. opticsDisplayName = "NFOV";
  245. initFov="0.42/16";//"(30 / 120)";
  246. minFov="0.42/16";//"(30 / 120)";
  247. maxFov="0.42/16";//"(30 / 120)";
  248. gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d";
  249. };
  250. class NarrowX24: Wide
  251. {
  252. opticsDisplayName = "NFOV";
  253. initFov="0.42/24";//"(30 / 120)";
  254. minFov="0.42/24";//"(30 / 120)";
  255. maxFov="0.42/24";//"(30 / 120)";
  256. gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d";
  257. };
  258. class NarrowX36: Wide
  259. {
  260. opticsDisplayName = "NFOV";
  261. initFov="0.42/36";//"(30 / 120)";
  262. minFov="0.42/36";//"(30 / 120)";
  263. maxFov="0.42/36";//"(30 / 120)";
  264. gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d";
  265. };
  266. class NarrowX48: Wide
  267. {
  268. opticsDisplayName = "NFOV";
  269. initFov="0.42/48";//"(30 / 120)";
  270. minFov="0.42/48";//"(30 / 120)";
  271. maxFov="0.42/48";//"(30 / 120)";
  272. gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d";
  273. };
  274. class NarrowX60: Wide
  275. {
  276. opticsDisplayName = "NFOV";
  277. initFov="0.42/60";//"(30 / 120)";
  278. minFov="0.42/60";//"(30 / 120)";
  279. maxFov="0.42/60";//"(30 / 120)";
  280. gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d";
  281. };
  282. class NarrowX80: Wide
  283. {
  284. opticsDisplayName = "NFOV";
  285. initFov="0.42/80";//"(30 / 120)";
  286. minFov="0.42/80";//"(30 / 120)";
  287. maxFov="0.42/80";//"(30 / 120)";
  288. gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d";
  289. };
  290. class NarrowX100: Wide
  291. {
  292. opticsDisplayName = "NFOV";
  293. initFov="0.42/100";//"(30 / 120)";
  294. minFov="0.42/100";//"(30 / 120)";
  295. maxFov="0.42/100";//"(30 / 120)";
  296. gunnerOpticsModel = "\A3\Drones_F\Weapons_F_Gamma\Reticle\UAV_Optics_Gunner_narrow_F.p3d";
  297. };
  298. showMiniMapInOptics = 1;
  299. showUAVViewInOptics = 0;
  300. showSlingLoadManagerInOptics = 0;
  301. };
  302. minTurn = -190;
  303. maxTurn = 180;
  304. initTurn = 0;
  305. minElev = -10;
  306. maxElev = 90;
  307. initElev = 0;
  308. maxXRotSpeed = 0.3;
  309. maxYRotSpeed = 0.3;
  310. pilotOpticsShowCursor = 1;
  311. controllable = 1;
  312. };
  313. class EventHandlers
  314. {
  315. class CBA_Extended_EventHandlers: CBA_Extended_EventHandlers_base
  316. {};
  317. };
  318. class Components:Components
  319. {};
  320. class GunClouds:GunClouds
  321. {};
  322. class GunFire:GunFire
  323. {};
  324. class HitPoints:HitPoints
  325. {};
  326. class MGunClouds:MGunClouds
  327. {};
  328. class OpticsIn:OpticsIn
  329. {};
  330. class OpticsOut:OpticsOut
  331. {};
  332. class Reflectors:Reflectors
  333. {};
  334. class TurnIn:TurnIn
  335. {};
  336. class TurnOut:TurnOut
  337. {};
  338. class Turrets:Turrets
  339. {
  340. class MainTurret:MainTurret
  341. {};
  342. };
  343. class TurretSpec:TurretSpec
  344. {};
  345. class ViewGunner:ViewGunner
  346. {};
  347. class ViewOptics:ViewOptics
  348. {};
  349. };
  350. class macro_new_vehicle(drone,razor_stealth_fixedwing): macro_new_vehicle(drone,rep_stealth_fixedwing)
  351. {
  352. displayname = "GAR Phantom (Razor)";
  353. hiddenSelectionsTextures[] = {"\RD501_Vehicles\textures\sentinel\phantom_fuselage_01_razor_co.paa",""};
  354. };
  355. class macro_new_vehicle(drone,cis_stealth_fixedwing):B_UAV_05_F
  356. {
  357. displayname = "CIS Phantom";
  358. scope=2;
  359. forceInGarage = 1;
  360. side=0;
  361. author = "RD501";
  362. faction = macro_cis_faction
  363. crew = "SWOP_CIS_droid_crew";
  364. hiddenSelections[] = {"camo1","camo2"};
  365. hiddenSelectionsMaterials[] = {"\RD501_Vehicles\textures\sentinel\phantom_fuselage_01.rvmat",""};
  366. hiddenSelectionsTextures[] = {"\RD501_Vehicles\textures\sentinel\phantom_fuselage_01_cis_co",""};
  367. weapons[] = {
  368. macro_basic_air_weapons,
  369. macro_new_weapon(generic,cis_aircraft_cannon)
  370. };
  371. magazines[] = {
  372. macro_basic_air_mags,
  373. macro_new_mag(generic_aircraft_cannon_red,1000),
  374. macro_new_mag(generic_aircraft_cannon_red,1000),
  375. };
  376. class EventHandlers
  377. {
  378. class CBA_Extended_EventHandlers: CBA_Extended_EventHandlers_base
  379. {};
  380. };
  381. class Components:Components
  382. {};
  383. class GunClouds:GunClouds
  384. {};
  385. class GunFire:GunFire
  386. {};
  387. class HitPoints:HitPoints
  388. {};
  389. class MGunClouds:MGunClouds
  390. {};
  391. class OpticsIn:OpticsIn
  392. {};
  393. class OpticsOut:OpticsOut
  394. {};
  395. class Reflectors:Reflectors
  396. {};
  397. class TurnIn:TurnIn
  398. {};
  399. class TurnOut:TurnOut
  400. {};
  401. class Turrets:Turrets
  402. {
  403. class MainTurret:MainTurret
  404. {};
  405. };
  406. class TurretSpec:TurretSpec
  407. {};
  408. class ViewGunner:ViewGunner
  409. {};
  410. class ViewOptics:ViewOptics
  411. {};
  412. };
  413. class macro_new_vehicle(drone,razor_recon_bag):JLTS_UAV_prowler_gar_backpack
  414. {
  415. displayName="Hummingbird Recon Drone";
  416. hiddenSelectionsTextures[]=
  417. {
  418. "\RD501_Vehicles\air\drones\Clone_backpack_uav.paa"
  419. };
  420. class assembleInfo: assembleInfo
  421. {
  422. displayName="Hummingbird Drone Bag";
  423. assembleTo = macro_new_vehicle(drone,razor_recon)
  424. };
  425. };
  426. class macro_new_vehicle(drone,razor_recon): JLTS_UAV_prowler_gar
  427. {
  428. displayName = "Hummingbird Recon Drone"
  429. faction = macro_republic_faction
  430. scope=2;
  431. forceInGarage = 1;
  432. altFullForce = 1000;
  433. altNoForce = 1100;
  434. hiddenSelectionsTextures[]=
  435. {
  436. "\RD501_Vehicles\air\drones\prowler_co.paa"
  437. };
  438. class assembleInfo
  439. {
  440. dissasembleTo[]=
  441. {
  442. macro_new_vehicle(drone,razor_recon_bag)
  443. };
  444. };
  445. };
  446. };