SovietOutPost.xml 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365
  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 type="all" source="DATA:GlobalData/GlobalDefines.xml" />
  6. <Include
  7. type="all"
  8. source="ART:SBOutpost.w3x" />
  9. <Include
  10. type="all"
  11. source="ART:SUSurveyor_Unpack.w3x" />
  12. <Include
  13. type="all"
  14. source="ART:SBOutpost_Platform.w3x" />
  15. <Include
  16. type="all"
  17. source="ART:SBOutpost_Platform_BLD.w3x" />
  18. <!-- Base Object -->
  19. <Include
  20. type="instance"
  21. source="DATA:BaseObjects/BaseSovietStructure.xml" />
  22. </Includes>
  23. <Defines>
  24. <Define name="SOVIET_OUTPOST_LOCAL_UNPACK_TIME" value="5s" />
  25. </Defines>
  26. <GameObject
  27. id="SovietOutpost"
  28. inheritFrom="BaseSovietStructure"
  29. SelectPortrait="Portrait_SovietOutpost_big"
  30. ButtonImage="Button_SovietOutpost_small"
  31. Side="Soviet"
  32. EditorSorting="STRUCTURE"
  33. TransportSlotCount="1"
  34. BuildTime="0"
  35. CommandSet="SovietOutpostCommandSet"
  36. KindOf="+OUTPOST +IGNORE_FOR_VICTORY"
  37. RadarPriority="STRUCTURE"
  38. PlacementViewAngle="315d"
  39. BuildPlacementTypeFlag="OTHER_STRUCTURE"
  40. EditorName="SovietOutpost"
  41. Description="DESC:SovietOutpost"
  42. TypeDescription="Type:SovietOutpost"
  43. HealthBoxHeightOffset="30">
  44. <DisplayName
  45. xai:joinAction="Replace" xmlns:xai="uri:ea.com:eala:asset:instance">Name:SovietOutpost</DisplayName>
  46. <GameDependency>
  47. <RequiredObject>SovietConstructionYard</RequiredObject>
  48. </GameDependency>
  49. <ObjectResourceInfo>
  50. <BuildCost Account="=$ACCOUNT_ORE" Amount="1500"/>
  51. </ObjectResourceInfo>
  52. <ArmorSet
  53. Armor="SovietOutpostArmor"
  54. DamageFX="FactionStructureDamageFX" />
  55. <Draws>
  56. <ScriptedModelDraw
  57. id="ModuleTag_Draw"
  58. OkToChangeModelColor="true"
  59. ExtraPublicBone="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">
  60. <ModelConditionState
  61. ParseCondStateType="PARSE_DEFAULT">
  62. <Model
  63. Name="SBOutpost" />
  64. </ModelConditionState>
  65. <ModelConditionState
  66. ParseCondStateType="PARSE_NORMAL"
  67. ConditionsYes="BUILD_PLACEMENT_CURSOR">
  68. <Model
  69. Name="SBOutpost" />
  70. <Texture
  71. Original="SBBuilding_Holes"
  72. New="SBBuilding_FP" />
  73. <Texture
  74. Original="SBBuilding_Filler"
  75. New="SBBuilding_FP" />
  76. </ModelConditionState>
  77. <ModelConditionState
  78. ParseCondStateType="PARSE_NORMAL"
  79. ConditionsYes="STRUCTURE_UNPACKING">
  80. <Model
  81. Name="SUSurveyor_Unpack" />
  82. </ModelConditionState>
  83. <ModelConditionState
  84. ParseCondStateType="PARSE_NORMAL"
  85. ConditionsYes="DAMAGED">
  86. <Model
  87. Name="SBOutpost" />
  88. </ModelConditionState>
  89. <ModelConditionState
  90. ParseCondStateType="PARSE_NORMAL"
  91. ConditionsYes="REALLYDAMAGED">
  92. <Model
  93. Name="SBOutpost" />
  94. <Texture
  95. Original="SUSurveyor"
  96. New="SUSurveyor_D" />
  97. <ParticleSysBone
  98. BoneName="FX_Damage_01"
  99. FXParticleSystemTemplate="VehicleDamageSmoke"
  100. FollowBone="true" />
  101. <ParticleSysBone
  102. BoneName="FX_Damage_01"
  103. FXParticleSystemTemplate="VehicleDamageFire"
  104. FollowBone="true" />
  105. <ParticleSysBone
  106. BoneName="FX_Damage_01"
  107. FXParticleSystemTemplate="VehicleDamageFire02"
  108. FollowBone="true" />
  109. </ModelConditionState>
  110. <AnimationState
  111. ParseCondStateType="PARSE_DEFAULT">
  112. <Animation
  113. AnimationName="SBOutpost"
  114. AnimationMode="LOOP" />
  115. </AnimationState>
  116. <AnimationState
  117. ParseCondStateType="PARSE_NORMAL"
  118. ConditionsYes="STRUCTURE_UNPACKING"
  119. StateName="STATE_StartUnpak">
  120. <Animation
  121. AnimationName="SUSurveyor_Unpack"
  122. AnimationMode="MATCH_UNPACKING" />
  123. </AnimationState>
  124. </ScriptedModelDraw>
  125. <!-- DRAW PLATFORM -->
  126. <ScriptedModelDraw
  127. id="ModuleTag_Draw_Platform"
  128. OkToChangeModelColor="true">
  129. <ModelConditionState
  130. ParseCondStateType="PARSE_DEFAULT">
  131. <Model
  132. Name="SBOutpost_Platform" />
  133. </ModelConditionState>
  134. <ModelConditionState
  135. ParseCondStateType="PARSE_NORMAL"
  136. ConditionsYes="STRUCTURE_UNPACKING">
  137. <Model
  138. Name="SBOutpost_Platform_BLD"/>
  139. <ParticleSysBone
  140. BoneName="None"
  141. FXParticleSystemTemplate="ABPowerPlantWakeSplash"
  142. FollowBone="true" />
  143. </ModelConditionState>
  144. <AnimationState
  145. ParseCondStateType="PARSE_DEFAULT">
  146. <Script>
  147. CurDrawableShowSubObjectPermanently("Bib")
  148. CurDrawableHideSubObjectPermanently("Platform")
  149. CurDrawableHideSubObjectPermanently("Platform_FX")
  150. </Script>
  151. </AnimationState>
  152. <AnimationState
  153. ParseCondStateType="PARSE_NORMAL"
  154. ConditionsYes="OVER_WATER STRUCTURE_UNPACKING ">
  155. <Animation
  156. AnimationName="SBOutpost_Platform_BLD"
  157. AnimationMode="ONCE"
  158. AnimationBlendTime="0" />
  159. <Script>
  160. CurDrawableHideSubObjectPermanently("Bib")
  161. CurDrawableShowSubObjectPermanently("Platform")
  162. CurDrawableShowSubObjectPermanently("Platform_FX")
  163. </Script>
  164. <ParticleSysBone
  165. BoneName="None"
  166. FXParticleSystemTemplate="AlliedPowerPlantWaterBuildupFroth"
  167. FollowBone="true" />
  168. <ParticleSysBone
  169. BoneName="None"
  170. FXParticleSystemTemplate="AlliedPowerPlantWaterBuildupMist"
  171. FollowBone="true" />
  172. </AnimationState>
  173. <AnimationState
  174. ParseCondStateType="PARSE_NORMAL"
  175. ConditionsYes="STRUCTURE_UNPACKING">
  176. <Animation
  177. AnimationName="SBOutpost_Platform_BLD"
  178. AnimationMode="ONCE"
  179. AnimationBlendTime="0" />
  180. <Script>
  181. CurDrawableShowSubObjectPermanently("Bib")
  182. CurDrawableHideSubObjectPermanently("Platform")
  183. CurDrawableHideSubObjectPermanently("Platform_FX")
  184. </Script>
  185. <ParticleSysBone
  186. BoneName="None"
  187. FXParticleSystemTemplate="AlliedPowerPlantBuildupFlashes"
  188. FollowBone="true" />
  189. <ParticleSysBone
  190. BoneName="None"
  191. FXParticleSystemTemplate="SovietOutpostSparksSeed"
  192. FollowBone="true" />
  193. </AnimationState>
  194. <AnimationState
  195. ParseCondStateType="PARSE_NORMAL"
  196. ConditionsYes="OVER_WATER">
  197. <Script>
  198. CurDrawableHideSubObjectPermanently("Bib")
  199. CurDrawableShowSubObjectPermanently("Platform")
  200. CurDrawableShowSubObjectPermanently("Platform_FX")
  201. </Script>
  202. </AnimationState>
  203. </ScriptedModelDraw>
  204. </Draws>
  205. <Behaviors>
  206. <Physics
  207. id="ModuleTag_Physics"/>
  208. <BuildingDestructionBehavior
  209. id="ModuleTag_BuildingDestruction">
  210. <DieMuxData
  211. DeathTypes="ALL"
  212. DeathTypesForbidden="SUICIDED" />
  213. <Item
  214. BonePrefix="BONE_CONTACT_POINT_"
  215. FX="SovietRefineryHit"
  216. CreationObject="SovietPowerPlant_Debris"
  217. FlingVelocity="100.0"/>
  218. </BuildingDestructionBehavior>
  219. <FXListBehavior
  220. xai:joinAction="Replace" xmlns:xai="uri:ea.com:eala:asset:instance" id="ModuleTag_FXList">
  221. <DieMuxData
  222. DeathTypes="ALL" />
  223. <Event
  224. Index="onDeath"
  225. FX="FX_YU_Hotel02_Explode" />
  226. </FXListBehavior>
  227. <FXListBehavior xai:joinAction="Replace" xmlns:xai="uri:ea.com:eala:asset:instance" id="ModuleTag_DieSound">
  228. <DieMuxData
  229. DeathTypes="ALL" />
  230. <Event
  231. Index="onDeath"
  232. FX="FX_SmallBuildingDieExplosion" />
  233. </FXListBehavior>
  234. <CreateObjectDie
  235. id="ModuleTag_CreateObjectDie"
  236. CreationList="SBOutpost_Die_OCL">
  237. <DieMuxData
  238. DeathTypes="ALL"
  239. ExemptStatus="OVER_WATER" />
  240. </CreateObjectDie>
  241. <CreateObjectDie
  242. id="ModuleTag_CreateObjectDieOnWater"
  243. CreationList="SBOutpostPlatform_Die_OCL">
  244. <DieMuxData
  245. DeathTypes="ALL"
  246. RequiredStatus="OVER_WATER" />
  247. </CreateObjectDie>
  248. <DestroyDie
  249. id="ModuleTag_Die">
  250. <DieMuxData
  251. DeathTypes="ALL" />
  252. </DestroyDie>
  253. <StructureUnpackUpdate
  254. id="StructureUnpackUpdate"
  255. UnpackCompleteSound=""
  256. UnpackTime="=$SOVIET_OUTPOST_LOCAL_UNPACK_TIME" />
  257. <xi:include
  258. href="DATA:Includes/GenericBuildingRepair.xml" />
  259. <xi:include
  260. href="DATA:Includes/GenericSovietBuildingDestruction.xml" />
  261. <xi:include
  262. href="DATA:Includes/GenericSovietBuildingSuicide.xml" />
  263. <xi:include
  264. href="DATA:Includes/GenericEngineerContain.xml" />
  265. <xi:include
  266. href="DATA:Includes/InfiltratorContainVision.xml" />
  267. <xi:include
  268. href="DATA:Includes/InfiltratorContainRadarFreeze.xml" />
  269. </Behaviors>
  270. <Body>
  271. <ActiveBody
  272. id="ModuleTag_Body"
  273. MaxHealth="500.0" />
  274. </Body>
  275. <ClientBehaviors>
  276. <ModelConditionAudioLoopClientBehavior xai:joinAction="Replace" xmlns:xai="uri:ea.com:eala:asset:instance"
  277. id="ModuleTag_StructureConstructionAudio">
  278. <ModelConditionSound Sound="SOV_Outpost_Deploy" RequiredFlags="STRUCTURE_UNPACKING" ExcludedFlags="OVER_WATER"/>
  279. <ModelConditionSound Sound="SOV_Outpost_DeployWaterMS" RequiredFlags="STRUCTURE_UNPACKING OVER_WATER"/>
  280. </ModelConditionAudioLoopClientBehavior>
  281. <!--
  282. <AnimationSoundClientBehavior
  283. id="AnimationSoundCB" >
  284. <Sound
  285. Sound="GDI_Surveyor_Unpack1"
  286. Animation="GUSUVUPAK_UPK1"
  287. Frame="5" />
  288. <Sound
  289. Sound="GDI_Surveyor_Unpack2"
  290. Animation="GUSUVUPAK_UPK1"
  291. Frame="52" />
  292. <Sound
  293. Sound="GDI_Surveyor_Unpack3"
  294. Animation="GUSUVUPAK_UPK1"
  295. Frame="59" />
  296. <Sound
  297. Sound="GDI_Surveyor_UnpackMore1"
  298. Animation="GUSUVUPAK_UPK3"
  299. Frame="2" />
  300. <Sound
  301. Sound="GDI_Surveyor_UnpackMore2"
  302. Animation="GUSUVUPAK_UPK3"
  303. Frame="26" />
  304. <Sound
  305. Sound="GDI_Surveyor_UnpackMore3"
  306. Animation="GUSUVUPAK_UPK3"
  307. Frame="35" />
  308. <Sound
  309. Sound="GDI_Surveyor_UnpackMore4"
  310. Animation="GUSUVUPAK_UPK3"
  311. Frame="48" />
  312. <Sound
  313. Sound="GDI_Surveyor_UnpackMore5"
  314. Animation="GUSUVUPAK_UPK3"
  315. Frame="71" />
  316. </AnimationSoundClientBehavior>
  317. -->
  318. </ClientBehaviors>
  319. <Geometry
  320. IsSmall="false">
  321. <PlacementShape
  322. Type= "BOX"
  323. MajorRadius = "30.0"
  324. MinorRadius = "30.0"
  325. Height = "5.0" />
  326. <Shape
  327. Type= "BOX"
  328. MajorRadius = "16.0225"
  329. MinorRadius = "16.0225"
  330. Height = "22.185"
  331. ContactPointGeneration = "STRUCTURE" >
  332. <Offset
  333. x = "0.0"
  334. y = "0.0"
  335. z = "0.0" />
  336. </Shape>
  337. </Geometry>
  338. <AudioArrayVoice>
  339. <AudioEntry
  340. Sound="AudioEvent:SOV_OutPost_Select"
  341. AudioType="voiceSelect" />
  342. </AudioArrayVoice>
  343. <AudioArraySound>
  344. <AudioEntry Sound="" AudioType="soundUnderConstruction" />
  345. <!--
  346. <AudioEntry Sound="HumanFaction_SmallBuilding_LightDamageMS" AudioType="soundOnDamaged" />
  347. <AudioEntry Sound="HumanFaction_SmallBuilding_HeavyDamageMS" AudioType="soundOnReallyDamaged" />
  348. -->
  349. </AudioArraySound>
  350. <VisionInfo
  351. VisionRange="150"
  352. ShroudClearingRange="750" />
  353. <ProjectedBuildabilityInfo
  354. Radius="300"
  355. BuildPlacementTypes="MAIN_STRUCTURE OTHER_STRUCTURE" />
  356. </GameObject>
  357. </AssetDeclaration>