AirportTechStructure.xml 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <AssetDeclaration xmlns="uri:ea.com:eala:asset" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xi="http://www.w3.org/2001/XInclude">
  3. <Tags></Tags>
  4. <Includes>
  5. <Include
  6. type="all"
  7. source="ART:NUAirportTechStructure.w3x" />
  8. <Include
  9. type="instance"
  10. source="DATA:BaseObjects/BaseTechStructure.xml" />
  11. <Include
  12. type="instance"
  13. source="DATA:BaseObjects/BaseTechStructure.xml" />
  14. <Include type="instance" source="DATA:Civilian/Yucatan_YU/Props/YU_HotelDebris.xml" />
  15. <Include type="instance" source="DATA:Neutral/Props/AirportTechStructure_Collapse.xml" />
  16. <Include type="all" source="ART:ABBarracks_particles.w3x" />
  17. </Includes>
  18. <GameObject
  19. id="AirportTechStructure"
  20. inheritFrom="BaseTechStructure"
  21. KindOf="+DONT_UNATTACH_WHEN_HEALING"
  22. SelectPortrait="Portrait_Neutral_Airport"
  23. ButtonImage="Button_Neutral_Airport"
  24. EditorName="AirportTechStructure"
  25. EditorSorting="STRUCTURE"
  26. Description="DESC:AirportTechBuilding"
  27. TypeDescription="TYPE:TechStructure"
  28. HealthBoxHeightOffset="30">
  29. <DisplayName
  30. xai:joinAction="Replace" xmlns:xai="uri:ea.com:eala:asset:instance">NAME:AirportTechBuilding</DisplayName>
  31. <ObjectResourceInfo>
  32. <BuildCost Account="=$ACCOUNT_ORE" Amount="=$TECH_STRUCTURE_EFFECTIVE_COST"/>
  33. </ObjectResourceInfo>
  34. <ArmorSet
  35. Armor="StructureArmor"
  36. DamageFX="FactionStructureDamageFX" />
  37. <Draws>
  38. <ScriptedModelDraw
  39. id="ModuleTag_Draw"
  40. OkToChangeModelColor="true"
  41. ExtraPublicBone="BoneFlag01 BONE_CONTACT_POINT_01 BONE_CONTACT_POINT_02 BONE_CONTACT_POINT_03 BONE_CONTACT_POINT_04 BONE_CONTACT_POINT_05 BONE_CONTACT_POINT_06 BONE_CONTACT_POINT_07 BONE_CONTACT_POINT_08 BONE_CONTACT_POINT_09 BONE_CONTACT_POINT_10 BONE_CONTACT_POINT_11 BONE_CONTACT_POINT_12 BONE_CONTACT_POINT_13 BONE_CONTACT_POINT_14 BONE_CONTACT_POINT_15 BONE_CONTACT_POINT_16 BONE_CONTACT_POINT_17 BONE_CONTACT_POINT_18 BONE_CONTACT_POINT_19 BONE_CONTACT_POINT_20 BONEGARRISON01 BONEGARRISON02 BONEGARRISON03 BONEGARRISON04 BONEGARRISON05 BONEGARRISON06 BONEGARRISON07 BONEGARRISON08 BONEGARRISON09 BONEGARRISON10 BONEGARRISON11 BONEGARRISON12">
  42. <ModelConditionState
  43. ParseCondStateType="PARSE_DEFAULT">
  44. <Model
  45. Name="NUAirportTechStructure" />
  46. </ModelConditionState>
  47. <ModelConditionState
  48. ParseCondStateType="PARSE_NORMAL"
  49. ConditionsYes="RUBBLE">
  50. <Model
  51. Name="NUAirportTechStructure" />
  52. </ModelConditionState>
  53. <AnimationState
  54. ParseCondStateType="PARSE_DEFAULT">
  55. <!-- no anim -->
  56. </AnimationState>
  57. </ScriptedModelDraw>
  58. <xi:include
  59. href="DATA:Includes/TechBuildingFlagDraw.xml"
  60. xpointer="xmlns(n=uri:ea.com:eala:asset) xpointer(/n:CommonFlagDraws/child::*)" />
  61. </Draws>
  62. <Behaviors>
  63. <Physics
  64. id="ModuleTag_Physics"/>
  65. <BuildingDestructionBehavior
  66. id="ModuleTag_BuildingDestruction"
  67. FillerMesh="NEWSKIN_FILL">
  68. <DieMuxData
  69. DeathTypes="ALL" />
  70. <Item
  71. BonePrefix="BONE_CONTACT_POINT_"
  72. FX="SovietRefineryHit"
  73. CreationObject="AlliedBarracks_Debris"
  74. FlingVelocity="100.0"/>
  75. </BuildingDestructionBehavior>
  76. <FXListBehavior
  77. xai:joinAction="Replace" xmlns:xai="uri:ea.com:eala:asset:instance" id="ModuleTag_FXList">
  78. <DieMuxData
  79. DeathTypes="ALL" />
  80. <Event
  81. Index="onDeath"
  82. FX="FX_YU_Hotel02_Explode" />
  83. </FXListBehavior>
  84. <FXListBehavior xai:joinAction="Replace" xmlns:xai="uri:ea.com:eala:asset:instance" id="ModuleTag_DieSound">
  85. <DieMuxData DeathTypes="ALL" />
  86. <Event Index="onDeath" FX="FX_LargeBuildingDieExplosion" />
  87. </FXListBehavior>
  88. <CreateObjectDie
  89. id="ModuleTag_CreateObjectDie"
  90. CreationList="NUAirportTechStructure_Die_OCL">
  91. <DieMuxData
  92. DeathTypes="ALL" />
  93. </CreateObjectDie>
  94. <DestroyDie
  95. id="ModuleTag_Die">
  96. <DieMuxData
  97. DeathTypes="ALL" />
  98. </DestroyDie>
  99. <!-- This Passive Area Effect Behaviour is what gives the Tech Structure its Unit healing ability -->
  100. <PassiveAreaEffectBehavior
  101. id="ModuleTag_PassiveAreaEffect"
  102. EffectRadius="-1"
  103. NonStackable="true"
  104. AffectUnderAttack="true"
  105. HealingPercentPerSecond="2%" >
  106. <AllowFilter
  107. Rule="ANY"
  108. Include="AIRCRAFT VEHICLE HUGE_VEHICLE"
  109. Relationship="ALLIES"
  110. StatusBitFlags="AIRBORNE_TARGET" />
  111. </PassiveAreaEffectBehavior>
  112. <xi:include
  113. href="../../Includes/GenericEngineerContain.xml" />
  114. <xi:include
  115. href="../../Includes/GenericBuildingRepair.xml" />
  116. <LUAEventList
  117. id="ModuleTag_LUAEventList"
  118. EventListName="BuildingPowerFunctions"
  119. />
  120. </Behaviors>
  121. <Body>
  122. <ActiveBody
  123. id="ModuleTag_Body"
  124. MaxHealth="3000.0"
  125. InitialHealth="3000.0" />
  126. </Body>
  127. <Geometry
  128. IsSmall="false">
  129. <Shape
  130. Type= "BOX"
  131. MajorRadius = "171.685"
  132. MinorRadius = "114.724"
  133. Height = "5.0"
  134. ContactPointGeneration = "STRUCTURE" >
  135. <Offset
  136. x = "0.0"
  137. y = "0.194397"
  138. z = "0.0" />
  139. </Shape>
  140. <Shape
  141. Type= "BOX"
  142. MajorRadius = "154.517"
  143. MinorRadius = "58.5093"
  144. Height = "45.35"
  145. ContactPointGeneration = "STRUCTURE" >
  146. <Offset
  147. x = "-5.44518"
  148. y = "31.6842"
  149. z = "0.0" />
  150. </Shape>
  151. <Shape
  152. Type= "BOX"
  153. MajorRadius = "56.6561"
  154. MinorRadius = "58.5093"
  155. Height = "74.696"
  156. ContactPointGeneration = "STRUCTURE" >
  157. <Offset
  158. x = "89.8827"
  159. y = "31.6842"
  160. z = "0.0" />
  161. </Shape>
  162. <Shape
  163. Type= "BOX"
  164. MajorRadius = "32.8605"
  165. MinorRadius = "33.3503"
  166. Height = "68.7203"
  167. ContactPointGeneration = "STRUCTURE" >
  168. <Offset
  169. x = "-118.849"
  170. y = "50.119"
  171. z = "0.0" />
  172. </Shape>
  173. </Geometry>
  174. <AudioArrayVoice>
  175. <AudioEntry EvaEvent="AirportCaptured" AudioType="voiceDefectingTowards" />
  176. <AudioEntry Sound="NEU_AirportTechBuilding_Select" AudioType="voiceSelect" />
  177. </AudioArrayVoice>
  178. <AudioArraySound>
  179. <AudioEntry Sound="HumanFaction_MediumBuilding_LightDamageMS" AudioType="soundOnDamaged" />
  180. <AudioEntry Sound="HumanFaction_MediumBuilding_HeavyDamageMS" AudioType="soundOnReallyDamaged" />
  181. </AudioArraySound>
  182. <VisionInfo
  183. VisionRange="100"
  184. ShroudClearingRange="200" />
  185. <ProjectedBuildabilityInfo
  186. Radius="0.0"
  187. BuildPlacementTypes="MAIN_STRUCTURE OTHER_STRUCTURE" />
  188. </GameObject>
  189. <ObjectCreationList
  190. id="NUAirportTechStructure_Die_OCL">
  191. <CreateObject
  192. Options="IGNORE_ALL_OBJECTS"
  193. Disposition="LIKE_EXISTING RANDOM_FORCE"
  194. Count="1"
  195. MinForceMagnitude="1.0"
  196. MaxForceMagnitude="2.0"
  197. MinForcePitch="90d"
  198. MaxForcePitch="75d">
  199. <CreateObject>NUAirportTechStructure_Collapse</CreateObject>
  200. </CreateObject>
  201. </ObjectCreationList>
  202. </AssetDeclaration>