config.cpp 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503
  1. //Get this addons macro
  2. //get the macro for the air macro_patch_name(vehicles)
  3. //get generlized macros
  4. #include "../../../RD501_main/config_macros.hpp"
  5. //General name of the vehicle
  6. #define vehicle_addon aat
  7. #define patch_name MODNAME##vehicle_addon##_Patches
  8. #define vehicle_classname MODNAME##_##vehicle_addon
  9. #define new_aat_class(name) vehicle_classname##_##name
  10. #define macro_enable_rotation\
  11. minElev = -10;\
  12. maxElev = 40;\
  13. initElev = 0;\
  14. minTurn = -5;\
  15. maxTurn = 5;\
  16. initTurn = 0;
  17. #define macro_new_medium_aat(classname,display_name,texturebody,texturegun)\
  18. class classname:macro_new_vehicle(AAT,Medium_MkII)\
  19. {\
  20. displayname=display_name;\
  21. forceInGarage = 1;\
  22. hiddenSelectionsTextures[] = {\
  23. macro_vehicle_textures##\AAT\##texturebody,\
  24. macro_vehicle_textures##\AAT\##texturegun\
  25. };\
  26. }
  27. #define macro_new_king_aat(classname,display_name,texturebody,texturegun)\
  28. class classname:macro_new_vehicle(AAT,King_MkII)\
  29. {\
  30. displayname=display_name;\
  31. forceInGarage = 1;\
  32. hiddenSelectionsTextures[] = {\
  33. macro_vehicle_textures##\AAT\##texturebody,\
  34. macro_vehicle_textures##\AAT\##texturegun\
  35. };\
  36. }
  37. class CfgPatches
  38. {
  39. class macro_patch_name(AAT)
  40. {
  41. addonRootClass=macro_patch_name(vehicles)
  42. requiredAddons[]=
  43. {
  44. macro_patch_name(vehicles)
  45. };
  46. requiredVersion=0.1;
  47. units[]=
  48. {
  49. macro_new_vehicle(AAT,Light_MkII),
  50. macro_new_vehicle(AAT,Medium_MkII),
  51. macro_new_vehicle(AAT,King_MkII),
  52. macro_new_vehicle(AAT,Medium_tropical_MkII),
  53. macro_new_vehicle(AAT,Medium_urban_MkII),
  54. macro_new_vehicle(AAT,Medium_snow_MkII),
  55. macro_new_vehicle(AAT,King_red_MkII),
  56. macro_new_vehicle(AAT,King_green_MkII),
  57. macro_new_vehicle(AAT,Light_MkIII),
  58. macro_new_vehicle(AAT,Medium_MkIII),
  59. macro_new_vehicle(AAT,King_MkIII)
  60. };
  61. weapons[]=
  62. {
  63. };
  64. };
  65. };
  66. #include "../../common/sensor_templates.hpp"
  67. class DefaultEventhandlers ;
  68. class CfgVehicles
  69. {
  70. #include "inheritance.hpp"
  71. class macro_new_vehicle(AAT,Light_MkII):O_SWOP_AAT_1
  72. {
  73. scope=2
  74. armor = 250;
  75. forceInGarage = 1;
  76. displayName="Light AAT Mk.II";
  77. hiddenSelectionsTextures[] = {
  78. macro_vehicle_textures\AAT\light_aat\saturated\king_AAT_body.paa,
  79. macro_vehicle_textures\AAT\light_aat\saturated\king_AAT_gun.paa
  80. };\
  81. faction = macro_cis_faction
  82. editorSubcategory = macro_editor_cat(tank)
  83. vehicleClass = macro_editor_vehicle_type(tank)
  84. crew=macro_new_unit_class(opfor,B1_crew)
  85. class Turrets:Turrets
  86. {
  87. class MainTurret:MainTurret
  88. {
  89. class Turrets:Turrets
  90. {
  91. class CommanderOptics:CommanderOptics
  92. {
  93. weapons[] = {"Cannon_AAT_mc"};
  94. magazines[] = {"100Rnd_Laser_Cannon_AAT_m", "100Rnd_Laser_Cannon_AAT_m", "100Rnd_Laser_Cannon_AAT_m"};
  95. macro_enable_rotation
  96. };
  97. };
  98. maxHorizontalRotSpeed = 1.2*2;
  99. maxVerticalRotSpeed = 1.2*2;
  100. weapons[] = {"Cannon_EWEBSWBFgun"};
  101. magazines[] =
  102. {
  103. "1000Rnd_Laser_Cannon_EWEBSWBF",
  104. "1000Rnd_Laser_Cannon_EWEBSWBF",
  105. "1000Rnd_Laser_Cannon_EWEBSWBF",
  106. "1000Rnd_Laser_Cannon_EWEBSWBF"
  107. };
  108. };
  109. };
  110. class EventHandlers :DefaultEventhandlers {};
  111. };
  112. class macro_new_vehicle(AAT,Medium_MkII):O_SWOP_AAT_1
  113. {
  114. scope=2
  115. forceInGarage = 1;
  116. displayName="Medium AAT Mk.II";
  117. armor = 500;
  118. maxSpeed = 75;
  119. crew=macro_new_unit_class(opfor,B1_crew)
  120. faction = macro_cis_faction
  121. editorSubcategory = macro_editor_cat(tank)
  122. vehicleClass = macro_editor_vehicle_type(tank)
  123. class Turrets:Turrets
  124. {
  125. class MainTurret:MainTurret
  126. {
  127. class Turrets:Turrets
  128. {
  129. //commanders guns,the side ones
  130. class CommanderOptics:CommanderOptics
  131. {
  132. weapons[] = {"Cannon_ITTLaser"};
  133. magazines[] = {"10000Rnd_ITTLaser_Cannon_Minigun","10000Rnd_ITTLaser_Cannon_Minigun"};
  134. macro_enable_rotation
  135. };
  136. };
  137. //main turret guns
  138. weapons[] = {
  139. macro_new_weapon(aat_cannon,mbt),
  140. "Cannon_ITTLaser"
  141. };
  142. magazines[] =
  143. {
  144. macro_new_mag(aat_mbt,50),
  145. macro_new_mag(aat_mbt,50),
  146. macro_new_mag(aat_mbt,50),
  147. macro_new_mag(aat_mbt,50),
  148. "10000Rnd_ITTLaser_Cannon_Minigun"
  149. };
  150. maxHorizontalRotSpeed = 1.2;
  151. maxVerticalRotSpeed = 1.2;
  152. };
  153. };
  154. class EventHandlers :DefaultEventhandlers {};
  155. };
  156. class macro_new_vehicle(AAT,King_MkII):O_SWOP_AAT_1
  157. {
  158. scope=2
  159. forceInGarage = 1;
  160. displayName="King AAT Mk.II";
  161. armor = 1000;
  162. //enginePower = 4;//405
  163. maxSpeed = 30;//75
  164. crew=macro_new_unit_class(opfor,B1_crew)
  165. faction = macro_cis_faction
  166. editorSubcategory = macro_editor_cat(tank)
  167. vehicleClass = macro_editor_vehicle_type(tank)
  168. class Turrets:Turrets
  169. {
  170. class MainTurret:MainTurret
  171. {
  172. class Turrets:Turrets
  173. {
  174. class CommanderOptics:CommanderOptics
  175. {
  176. maxHorizontalRotSpeed = .1;//1.8
  177. maxVerticalRotSpeed = .1;//1.8
  178. macro_enable_rotation
  179. weapons[] = {"Cannon_AAT_mc","Cannon_ATST"};
  180. magazines[] = {"1000Rnd_Laser_Cannon_Minigun","1000Rnd_Laser_Cannon_Minigun","100Rnd_Laser_Cannon_AAT_m", "100Rnd_Laser_Cannon_AAT_m", "100Rnd_Laser_Cannon_AAT_m"};
  181. };
  182. };
  183. maxHorizontalRotSpeed = 1.2/3;
  184. maxVerticalRotSpeed = 1.2/3;
  185. weapons[] = {
  186. macro_new_weapon(aat_cannon,king),
  187. "Cannon_EWEBSWBFgun"
  188. };
  189. magazines[] = {
  190. "1000Rnd_Laser_Cannon_EWEBSWBF",
  191. macro_new_mag(aat_mbt,10),
  192. macro_new_mag(aat_mbt,10),
  193. macro_new_mag(aat_mbt,10)
  194. };
  195. };
  196. };
  197. hiddenSelectionsTextures[] = {
  198. macro_vehicle_textures\AAT\king_AAT\blue\king_AAT_body.paa,
  199. macro_vehicle_textures\AAT\king_AAT\blue\king_AAT_gun.paa
  200. };
  201. class EventHandlers :DefaultEventhandlers {};
  202. };
  203. macro_new_medium_aat(macro_new_vehicle(AAT,Medium_tropical_MkII),"Medium (Tropical Thunder) AAT MKII",medium_aat\tropical\Trop_aat2.paa,medium_aat\tropical\Trop_aat1.paa)
  204. macro_new_medium_aat(macro_new_vehicle(AAT,Medium_urban_MkII),"Medium (Urban Warfighter) AAT MKII",medium_aat\urban\king_AAT_body.paa,medium_aat\urban\king_AAT_gun.paa)
  205. macro_new_medium_aat(macro_new_vehicle(AAT,Medium_snow_MkII),"Medium (Snow White) AAT MKII",medium_aat\white\king_AAT_body.paa,medium_aat\white\king_AAT_gun.paa)
  206. macro_new_king_aat(macro_new_vehicle(AAT,King_red_MkII),"King (Red Bull) AAT MKII",king_AAT\red\king_AAT_body.paa,king_AAT\red\king_AAT_gun.paa)
  207. macro_new_king_aat(macro_new_vehicle(AAT,King_green_MkII),"King (Green Bean) AAT MKII",king_AAT\green\king_AAT_body.paa,king_AAT\green\king_AAT_gun.paa)
  208. // 3AS AATs
  209. class LandVehicle;
  210. class Tank: LandVehicle
  211. {
  212. class NewTurret;
  213. class Sounds;
  214. class HitPoints;
  215. };
  216. class Tank_F: Tank
  217. {
  218. class Turrets
  219. {
  220. class MainTurret: NewTurret
  221. {
  222. class ViewGunner;
  223. class Turrets
  224. {
  225. class CommanderOptics;
  226. };
  227. };
  228. };
  229. };
  230. class 3AS_AAT_base_F : Tank_F {
  231. class Turrets : Turrets
  232. {
  233. class MainTurret: MainTurret
  234. {
  235. class ViewGunner : ViewGunner {};
  236. class Turrets : Turrets
  237. {
  238. class CommanderOptics : CommanderOptics {};
  239. };
  240. };
  241. };
  242. };
  243. class 3AS_CIS_AAT_base_F : 3AS_AAT_base_F {
  244. class Turrets : Turrets
  245. {
  246. class MainTurret: MainTurret
  247. {
  248. class ViewGunner : ViewGunner {};
  249. class Turrets : Turrets
  250. {
  251. class CommanderOptics : CommanderOptics {};
  252. };
  253. };
  254. };
  255. };
  256. class 3AS_CIS_AAT_F : 3AS_CIS_AAT_base_F {
  257. class Turrets : Turrets
  258. {
  259. class MainTurret: MainTurret
  260. {
  261. class ViewGunner : ViewGunner {};
  262. class Turrets : Turrets
  263. {
  264. class CommanderOptics : CommanderOptics {};
  265. };
  266. };
  267. };
  268. };
  269. class 3AS_AAT : 3AS_CIS_AAT_F {
  270. class Turrets : Turrets
  271. {
  272. class MainTurret: MainTurret
  273. {
  274. class ViewGunner : ViewGunner {};
  275. class Turrets : Turrets
  276. {
  277. class CommanderOptics : CommanderOptics {};
  278. };
  279. };
  280. };
  281. };
  282. class 3AS_AAT_snow : 3AS_AAT {
  283. class Turrets : Turrets
  284. {
  285. class MainTurret: MainTurret
  286. {
  287. class ViewGunner : ViewGunner {};
  288. class Turrets : Turrets
  289. {
  290. class CommanderOptics : CommanderOptics {};
  291. };
  292. };
  293. };
  294. };
  295. class 3AS_AAT_tan : 3AS_AAT {
  296. class Turrets : Turrets
  297. {
  298. class MainTurret: MainTurret
  299. {
  300. class ViewGunner : ViewGunner {};
  301. class Turrets : Turrets
  302. {
  303. class CommanderOptics : CommanderOptics {};
  304. };
  305. };
  306. };
  307. };
  308. class 3AS_AAT_urban : 3AS_AAT {
  309. class Turrets : Turrets
  310. {
  311. class MainTurret: MainTurret
  312. {
  313. class ViewGunner : ViewGunner {};
  314. class Turrets : Turrets
  315. {
  316. class CommanderOptics : CommanderOptics {};
  317. };
  318. };
  319. };
  320. };
  321. class macro_new_vehicle(AAT,Light_MkIII) : 3AS_AAT_tan {
  322. scope=2
  323. armor = 800;
  324. forceInGarage = 1;
  325. displayName="Light AAT Mk.III";
  326. faction = macro_cis_faction
  327. editorSubcategory = macro_editor_cat(tank)
  328. vehicleClass = macro_editor_vehicle_type(tank)
  329. crew=macro_new_unit_class(opfor,B1_crew)
  330. class Turrets:Turrets
  331. {
  332. class MainTurret:MainTurret
  333. {
  334. class Turrets:Turrets
  335. {
  336. class CommanderOptics:CommanderOptics
  337. {
  338. weapons[] = {"Cannon_AAT_mc"};
  339. magazines[] = {"100Rnd_Laser_Cannon_AAT_m", "100Rnd_Laser_Cannon_AAT_m", "100Rnd_Laser_Cannon_AAT_m"};
  340. macro_enable_rotation
  341. };
  342. };
  343. maxHorizontalRotSpeed = 1.2*2;
  344. maxVerticalRotSpeed = 1.2*2;
  345. weapons[] = {"Cannon_EWEBSWBFgun"};
  346. magazines[] =
  347. {
  348. "1000Rnd_Laser_Cannon_EWEBSWBF",
  349. "1000Rnd_Laser_Cannon_EWEBSWBF",
  350. "1000Rnd_Laser_Cannon_EWEBSWBF",
  351. "1000Rnd_Laser_Cannon_EWEBSWBF"
  352. };
  353. };
  354. };
  355. };
  356. class macro_new_vehicle(AAT,Medium_MkIII) : 3AS_AAT_snow {
  357. scope=2
  358. forceInGarage = 1;
  359. displayName="Medium AAT Mk.III";
  360. armor = 2000;
  361. maxSpeed = 75;
  362. faction = macro_cis_faction
  363. editorSubcategory = macro_editor_cat(tank)
  364. vehicleClass = macro_editor_vehicle_type(tank)
  365. crew=macro_new_unit_class(opfor,B1_crew)
  366. class Turrets:Turrets
  367. {
  368. class MainTurret:MainTurret
  369. {
  370. class Turrets:Turrets
  371. {
  372. //commanders guns,the side ones
  373. class CommanderOptics:CommanderOptics
  374. {
  375. weapons[] = {"Cannon_ITTLaser"};
  376. magazines[] = {"10000Rnd_ITTLaser_Cannon_Minigun","10000Rnd_ITTLaser_Cannon_Minigun"};
  377. macro_enable_rotation
  378. };
  379. };
  380. //main turret guns
  381. weapons[] = {
  382. macro_new_weapon(aat_cannon,mbt),
  383. "Cannon_ITTLaser"
  384. };
  385. magazines[] =
  386. {
  387. macro_new_mag(aat_mbt,50),
  388. macro_new_mag(aat_mbt,50),
  389. macro_new_mag(aat_mbt,50),
  390. macro_new_mag(aat_mbt,50),
  391. "10000Rnd_ITTLaser_Cannon_Minigun"
  392. };
  393. maxHorizontalRotSpeed = 1.2;
  394. maxVerticalRotSpeed = 1.2;
  395. };
  396. };
  397. };
  398. class macro_new_vehicle(AAT,King_MkIII) : 3AS_AAT_urban {
  399. scope=2
  400. forceInGarage = 1;
  401. displayName="King AAT Mk.III";
  402. armor = 4000;
  403. maxSpeed = 30;
  404. crew=macro_new_unit_class(opfor,B1_crew)
  405. faction = macro_cis_faction
  406. editorSubcategory = macro_editor_cat(tank)
  407. vehicleClass = macro_editor_vehicle_type(tank)
  408. class Turrets:Turrets
  409. {
  410. class MainTurret:MainTurret
  411. {
  412. class Turrets:Turrets
  413. {
  414. class CommanderOptics:CommanderOptics
  415. {
  416. maxHorizontalRotSpeed = .1;//1.8
  417. maxVerticalRotSpeed = .1;//1.8
  418. macro_enable_rotation
  419. weapons[] = {"Cannon_AAT_mc","Cannon_ATST"};
  420. magazines[] = {"1000Rnd_Laser_Cannon_Minigun","1000Rnd_Laser_Cannon_Minigun","100Rnd_Laser_Cannon_AAT_m", "100Rnd_Laser_Cannon_AAT_m", "100Rnd_Laser_Cannon_AAT_m"};
  421. };
  422. };
  423. maxHorizontalRotSpeed = 1.2/3;
  424. maxVerticalRotSpeed = 1.2/3;
  425. weapons[] = {
  426. macro_new_weapon(aat_cannon,king),
  427. "Cannon_EWEBSWBFgun"
  428. };
  429. magazines[] = {
  430. "1000Rnd_Laser_Cannon_EWEBSWBF",
  431. macro_new_mag(aat_mbt,10),
  432. macro_new_mag(aat_mbt,10),
  433. macro_new_mag(aat_mbt,10)
  434. };
  435. };
  436. };
  437. };
  438. };