config.cpp 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464
  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 warden
  7. #define patch_name MODNAME##vehicle_addon##_Patches
  8. #define vehicle_classname MODNAME##_##vehicle_addon
  9. #define new_warden_class(name) vehicle_classname##_##name
  10. class CfgPatches
  11. {
  12. class macro_patch_name(warden_tank)
  13. {
  14. addonRootClass=macro_patch_name(vehicles)
  15. requiredAddons[]=
  16. {
  17. macro_patch_name(vehicles)
  18. };
  19. requiredVersion=0.1;
  20. units[]=
  21. {
  22. macro_new_vehicle(warden_tank,mobile),
  23. macro_new_vehicle(warden_tank,field)
  24. };
  25. weapons[]=
  26. {
  27. };
  28. };
  29. };
  30. #include "../../common/sensor_templates.hpp"
  31. class DefaultEventhandlers;
  32. class CfgVehicles
  33. {
  34. class APC_Tracked_01_base_F;
  35. class B_APC_Tracked_01_base_F:APC_Tracked_01_base_F
  36. {
  37. class Turrets;
  38. };
  39. class B_APC_Tracked_01_CRV_F:B_APC_Tracked_01_base_F
  40. {
  41. class Turrets:Turrets
  42. {
  43. class MainTurret;
  44. class CommanderOptics;
  45. };
  46. class Components;
  47. };
  48. class macro_new_vehicle(warden_tank,mobile) : B_APC_Tracked_01_CRV_F
  49. {
  50. displayName = "Republic Overseer ASV";
  51. ace_refuel_fuelCargo = 999999999999;
  52. ace_rearm_defaultSupply = 999999999999;
  53. ace_cargo_space = 170;
  54. ace_repair_canRepair =1;
  55. ace_refuel_hooks[] = {{0.38, -3.17, -0.7}, {-0.41, -3.17, -0.7}};
  56. scopeCurator = 2;
  57. transportSoldier=8;
  58. LESH_canTow = 1;
  59. crew = "SWOP_Clonetrooper_P1";
  60. LESH_AxisOffsetTower[] = {0,-6,1};
  61. driverCanSee = 31;
  62. gunnerCanSee = 31;
  63. commanderCanSee = 31;
  64. canUseScanner = 1;
  65. incomingMissileDetectionSystem = 16;
  66. weaponLockSystem = "2+4+8";
  67. receiveRemoteTargets = true;
  68. reportRemoteTargets = true;
  69. reportOwnPosition = true;
  70. faction = macro_republic_faction
  71. editorSubcategory = macro_editor_cat(APC)
  72. vehicleClass = macro_editor_vehicle_type(APC)
  73. class TransportItems
  74. {
  75. class _xx_ToolKit
  76. {
  77. name = "ToolKit";
  78. count = 4;
  79. };
  80. };
  81. author = "RD501";
  82. //faction = "RD501Faction";
  83. scope = 2;
  84. side = 1;
  85. hiddenSelections[] = {"camo1", "camo2", "camo3", "camo4", "CamoNet"};
  86. hiddenSelectionsTextures[]=
  87. {
  88. "RD501_Vehicles\textures\warden\overseer_ext1_cream_blue_co.paa",
  89. "RD501_Vehicles\textures\warden\overseer_ext2_cream_blue_co.paa",
  90. "RD501_Vehicles\textures\warden\overseer_turret_cream_co.paa",
  91. "RD501_Vehicles\textures\warden\overseer_ext3_cream_blue_co.paa",
  92. "a3\Armor_F\Data\camonet_NATO_Desert_CO.paa"
  93. };
  94. forceInGarage =1;
  95. class Turrets: Turrets
  96. {
  97. class MainTurret: MainTurret
  98. {
  99. weapons[] = {
  100. macro_basic_air_weapons,
  101. macro_new_weapon(generic,plasma_aircraft_cannon)
  102. };
  103. magazines[] = {
  104. macro_basic_air_mags,
  105. macro_new_mag(generic_aircraft_cannon_plasma_blue,1000),
  106. macro_new_mag(generic_aircraft_cannon_plasma_blue,1000)
  107. };
  108. };
  109. class CommanderOptics: CommanderOptics
  110. {
  111. };
  112. };
  113. class components: Components
  114. {
  115. class SensorsManagerComponent
  116. {
  117. class components
  118. {
  119. class IRSensorComponent: SensorTemplateIR
  120. {
  121. typeRecognitionDistance = 16000;
  122. angleRangeHorizontal = 360;
  123. angleRangeVertical = 360;
  124. groundNoiseDistanceCoef = -1;
  125. maxGroundNoiseDistance = 1600;
  126. minSpeedThreshold = 0;
  127. maxSpeedThreshold = 2000;
  128. maxFogSeeThrough= -1;
  129. nightRangeCoef = 1;
  130. class AirTarget
  131. {
  132. minRange = 0;
  133. maxRange = 16000;
  134. objectDistanceLimitCoef = -1;
  135. viewDistanceLimitCoef = -1;
  136. maxFogSeeThrough= -1;
  137. nightRangeCoef = 1;
  138. };
  139. class GroundTarget
  140. {
  141. minRange = 0;
  142. maxRange = 16000;
  143. objectDistanceLimitCoef = -1;
  144. viewDistanceLimitCoef = -1;
  145. maxFogSeeThrough= -1;
  146. nightRangeCoef = 1;
  147. };
  148. };
  149. class NVSensorComponent: SensorTemplateNV
  150. {
  151. typeRecognitionDistance = 16000;
  152. angleRangeHorizontal = 360;
  153. angleRangeVertical = 360;
  154. groundNoiseDistanceCoef = -1;
  155. maxGroundNoiseDistance = 1600;
  156. minSpeedThreshold = 0;
  157. maxSpeedThreshold = 2000;
  158. class AirTarget
  159. {
  160. minRange = 0;
  161. maxRange = 16000;
  162. objectDistanceLimitCoef = -1;
  163. viewDistanceLimitCoef = -1;
  164. };
  165. class GroundTarget
  166. {
  167. minRange = 0;
  168. maxRange = 16000;
  169. objectDistanceLimitCoef = -1;
  170. viewDistanceLimitCoef = -1;
  171. };
  172. };
  173. class LaserSensorComponent: SensorTemplateLaser
  174. {
  175. typeRecognitionDistance = 16000;
  176. angleRangeHorizontal = 360;
  177. angleRangeVertical = 360;
  178. groundNoiseDistanceCoef = -1;
  179. maxGroundNoiseDistance = 1600;
  180. minSpeedThreshold = 0;
  181. maxSpeedThreshold = 2000;
  182. class AirTarget
  183. {
  184. minRange = 0;
  185. maxRange = 16000;
  186. objectDistanceLimitCoef = -1;
  187. viewDistanceLimitCoef = -1;
  188. };
  189. class GroundTarget
  190. {
  191. minRange = 0;
  192. maxRange = 16000;
  193. objectDistanceLimitCoef = -1;
  194. viewDistanceLimitCoef = -1;
  195. };
  196. };
  197. class ActiveRadarSensorComponent: SensorTemplateActiveRadar
  198. {
  199. typeRecognitionDistance = 16000;
  200. angleRangeHorizontal = 360;
  201. angleRangeVertical = 360;
  202. groundNoiseDistanceCoef = -1;
  203. maxGroundNoiseDistance = 1600;
  204. minSpeedThreshold = 0;
  205. maxSpeedThreshold = 2000;
  206. class AirTarget
  207. {
  208. minRange = 0;
  209. maxRange = 16000;
  210. objectDistanceLimitCoef = -1;
  211. viewDistanceLimitCoef = -1;
  212. };
  213. class GroundTarget
  214. {
  215. minRange = 0;
  216. maxRange = 16000;
  217. objectDistanceLimitCoef = -1;
  218. viewDistanceLimitCoef = -1;
  219. };
  220. };
  221. class PassiveRadarSensorComponent: SensorTemplatePassiveRadar
  222. {
  223. typeRecognitionDistance = 16000;
  224. angleRangeHorizontal = 360;
  225. angleRangeVertical = 360;
  226. groundNoiseDistanceCoef = -1;
  227. maxGroundNoiseDistance = 1600;
  228. minSpeedThreshold = 0;
  229. maxSpeedThreshold = 2000;
  230. class AirTarget
  231. {
  232. minRange = 0;
  233. maxRange = 16000;
  234. objectDistanceLimitCoef = -1;
  235. viewDistanceLimitCoef = -1;
  236. };
  237. class GroundTarget
  238. {
  239. minRange = 0;
  240. maxRange = 16000;
  241. objectDistanceLimitCoef = -1;
  242. viewDistanceLimitCoef = -1;
  243. };
  244. };
  245. class VisualSensorComponent: SensorTemplateVisual
  246. {
  247. typeRecognitionDistance = 16000;
  248. angleRangeHorizontal = 360;
  249. angleRangeVertical = 360;
  250. groundNoiseDistanceCoef = -1;
  251. maxGroundNoiseDistance = 1600;
  252. minSpeedThreshold = 0;
  253. maxSpeedThreshold = 2000;
  254. class AirTarget
  255. {
  256. minRange = 0;
  257. maxRange = 16000;
  258. objectDistanceLimitCoef = -1;
  259. viewDistanceLimitCoef = -1;
  260. };
  261. class GroundTarget
  262. {
  263. minRange = 0;
  264. maxRange = 16000;
  265. objectDistanceLimitCoef = -1;
  266. viewDistanceLimitCoef = -1;
  267. };
  268. };
  269. class ManSensorComponent: SensorTemplateMan
  270. {
  271. typeRecognitionDistance = 16000;
  272. angleRangeHorizontal = 360;
  273. angleRangeVertical = 360;
  274. groundNoiseDistanceCoef = -1;
  275. maxGroundNoiseDistance = 1600;
  276. minSpeedThreshold = 0;
  277. maxSpeedThreshold = 2000;
  278. class AirTarget
  279. {
  280. minRange = 0;
  281. maxRange = 16000;
  282. objectDistanceLimitCoef = -1;
  283. viewDistanceLimitCoef = -1;
  284. };
  285. class GroundTarget
  286. {
  287. minRange = 0;
  288. maxRange = 16000;
  289. objectDistanceLimitCoef = -1;
  290. viewDistanceLimitCoef = -1;
  291. };
  292. };
  293. class DataLinkSensorComponent: SensorTemplateDataLink
  294. {
  295. typeRecognitionDistance = 16000;
  296. angleRangeHorizontal = 360;
  297. angleRangeVertical = 360;
  298. groundNoiseDistanceCoef = -1;
  299. maxGroundNoiseDistance = 1600;
  300. minSpeedThreshold = 0;
  301. maxSpeedThreshold = 2000;
  302. class AirTarget
  303. {
  304. minRange = 0;
  305. maxRange = 16000;
  306. objectDistanceLimitCoef = -1;
  307. viewDistanceLimitCoef = -1;
  308. };
  309. class GroundTarget
  310. {
  311. minRange = 0;
  312. maxRange = 16000;
  313. objectDistanceLimitCoef = -1;
  314. viewDistanceLimitCoef = -1;
  315. };
  316. };
  317. };
  318. };
  319. class VehicleSystemsDisplayManagerComponentRight
  320. {
  321. componentType = "VehicleSystemsDisplayManager";
  322. defaultDisplay = "EmptyDisplay";
  323. right = 1;
  324. x = "(profilenamespace getvariable [""IGUI_GRID_CUSTOMINFORIGHT_X"", ((safezoneX + safezoneW) - ( (10 * ( ((safezoneW / safezoneH) min 1.2) / 40)) + 0.5 * ( ((safezoneW / safezoneH) min 1.2) / 40)))])";
  325. y = "(profilenamespace getvariable [""IGUI_GRID_CUSTOMINFORIGHT_Y"", (safezoneY + safezoneH - 21 * ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25))])";
  326. class Components
  327. {
  328. class CrewDisplay
  329. {
  330. componentType = "CrewDisplayComponent";
  331. };
  332. class EmptyDisplay
  333. {
  334. componentType = "EmptyDisplayComponent";
  335. };
  336. class MineDetectorDisplay
  337. {
  338. componentType = "MineDetectorDisplayComponent";
  339. };
  340. class MinimapDisplay
  341. {
  342. componentType = "MinimapDisplayComponent";
  343. };
  344. class SlingLoadDisplay
  345. {
  346. componentType = "SlingLoadDisplayComponent";
  347. };
  348. class UAVDisplay
  349. {
  350. componentType = "UAVFeedDisplayComponent";
  351. };
  352. class VehicleCommanderDisplay
  353. {
  354. componentType = "TransportFeedDisplayComponent";
  355. source = "Commander";
  356. };
  357. class VehiclePrimaryGunnerDisplay
  358. {
  359. componentType = "TransportFeedDisplayComponent";
  360. source = "PrimaryGunner";
  361. };
  362. class SensorDisplay
  363. {
  364. componentType = "SensorsDisplayComponent";
  365. range[] = {32000,16000,8000,4000,2000};
  366. resource = "RscCustomInfoSensors";
  367. };
  368. };
  369. };
  370. class VehicleSystemsDisplayManagerComponentLeft
  371. {
  372. componentType = "VehicleSystemsDisplayManager";
  373. defaultDisplay = "EmptyDisplay";
  374. left = 1;
  375. x = "(profilenamespace getvariable [""IGUI_GRID_CUSTOMINFOLEFT_X"", (safezoneX + 0.5 * ( ((safezoneW / safezoneH) min 1.2) / 40))])";
  376. y = "(profilenamespace getvariable [""IGUI_GRID_CUSTOMINFOLEFT_Y"", (safezoneY + safezoneH - 21 * ( ( ((safezoneW / safezoneH) min 1.2) / 1.2) / 25))])";
  377. class Components
  378. {
  379. class CrewDisplay
  380. {
  381. componentType = "CrewDisplayComponent";
  382. };
  383. class EmptyDisplay
  384. {
  385. componentType = "EmptyDisplayComponent";
  386. };
  387. class MineDetectorDisplay
  388. {
  389. componentType = "MineDetectorDisplayComponent";
  390. };
  391. class MinimapDisplay
  392. {
  393. componentType = "MinimapDisplayComponent";
  394. };
  395. class SlingLoadDisplay
  396. {
  397. componentType = "SlingLoadDisplayComponent";
  398. };
  399. class UAVDisplay
  400. {
  401. componentType = "UAVFeedDisplayComponent";
  402. };
  403. class VehicleCommanderDisplay
  404. {
  405. componentType = "TransportFeedDisplayComponent";
  406. source = "Commander";
  407. };
  408. class VehiclePrimaryGunnerDisplay
  409. {
  410. componentType = "TransportFeedDisplayComponent";
  411. source = "PrimaryGunner";
  412. };
  413. class SensorDisplay
  414. {
  415. componentType = "SensorsDisplayComponent";
  416. range[] = {32000,16000,8000,4000,2000};
  417. resource = "RscCustomInfoSensors";
  418. };
  419. };
  420. };
  421. };
  422. class EventHandlers : DefaultEventhandlers {};
  423. };
  424. class macro_new_vehicle(warden_tank,field):macro_new_vehicle(warden_tank,mobile)
  425. {
  426. displayName = "Republic Overseer ASV Turbo";
  427. enginePower = 2400;
  428. gearBox[] = {-7,0,11,8,5.7,4.2};
  429. maxSpeed = 120;
  430. maxOmega = 500;
  431. peakTorque = 7400;
  432. torqueCurve[] = {[0.291667,0.540541],[0.416667,0.675676],[0.583333,0.810811],[0.666667,0.891892],[0.75,0.972973],[0.833333,1.02703],[0.916667,1],[1,0.945946]};
  433. engineMOI = 1;
  434. armor = 100;
  435. hiddenSelections[] = {"camo1", "camo2", "camo3", "camo4", "CamoNet"};
  436. hiddenSelectionsTextures[]=
  437. {
  438. "RD501_Vehicles\textures\warden\overseer_ext1_black_blue_co.paa",
  439. "RD501_Vehicles\textures\warden\overseer_ext2_black_blue_co.paa",
  440. "RD501_Vehicles\textures\warden\trebuchet_turret_mynock_co.paa",
  441. "RD501_Vehicles\textures\warden\overseer_ext3_black_blue_co.paa",
  442. "a3\Armor_F\Data\camonet_NATO_Desert_CO.paa"
  443. };
  444. }
  445. };