SovietTechStructure.xml 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549
  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:SBTechStructure_SKN.w3x" />
  9. <Include
  10. type="all"
  11. source="ART:SBTechStructure_BLD.w3x" />
  12. <Include
  13. type="all"
  14. source="ART:SBPowerPlantAdvanced_Platform.w3x" />
  15. <Include
  16. type="all"
  17. source="ART:SBPowerPlantAdvanced_Platform_BLD.w3x" />
  18. <Include
  19. type="all"
  20. source="ART:SBTechStructure_FX.w3x" />
  21. <Include
  22. type="all"
  23. source="ART:SBTechStructure_Scaffold.w3x" />
  24. <!-- Base Object -->
  25. <Include
  26. type="instance"
  27. source="DATA:BaseObjects/BaseSovietStructure.xml" />
  28. </Includes>
  29. <Defines>
  30. <Define name="SOVIET_TECHSTRUCTURE_LOCAL_UNPACK_TIME" value="60s" />
  31. </Defines>
  32. <GameObject
  33. id="SovietTechStructure"
  34. inheritFrom="BaseSovietStructure"
  35. SelectPortrait="Portrait_SovietTechStructure_big"
  36. ButtonImage="Button_SovietTechStructure_small"
  37. Side="Soviet"
  38. EditorSorting="STRUCTURE"
  39. TransportSlotCount="1"
  40. BuildTime="0.0"
  41. EnergyProduction="-75"
  42. CommandSet="SovietTechStructureCommandSet"
  43. KindOf="+FS_TECHNOLOGY +POWERED +FS_TECH_CENTER"
  44. RadarPriority="STRUCTURE"
  45. PlacementViewAngle="315d"
  46. ProductionQueueType="MAIN_STRUCTURE"
  47. BuildPlacementTypeFlag="MAIN_STRUCTURE"
  48. EditorName="SovietTechStructure"
  49. Description="Desc:SovietTechStructure"
  50. TypeDescription="Type:SovietTechStructure">
  51. <DisplayName
  52. xai:joinAction="Replace" xmlns:xai="uri:ea.com:eala:asset:instance">Name:SovietTechStructure</DisplayName>
  53. <GameDependency>
  54. <RequiredObject>SovietPowerPlantAdvanced</RequiredObject>
  55. </GameDependency>
  56. <ObjectResourceInfo>
  57. <BuildCost Account="=$ACCOUNT_ORE" Amount="3000"/>
  58. </ObjectResourceInfo>
  59. <ArmorSet
  60. Armor="SovietTechLabArmor"
  61. DamageFX="FactionStructureDamageFX" />
  62. <SkirmishAIInformation
  63. BaseBuildingLocation="SPREAD">
  64. <ConstructionBaseSelectionCriteria
  65. ExcludedBaseTypes="NO_BUILD_RADIUS CAPTURED"
  66. PreferredBaseTypes="MAIN_BASE"
  67. SortOrder="PREFER_OLDEST" />
  68. </SkirmishAIInformation>
  69. <Draws>
  70. <ScriptedModelDraw
  71. id="ModuleTag_Draw"
  72. OkToChangeModelColor="true"
  73. 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">
  74. <ModelConditionState
  75. ParseCondStateType="PARSE_DEFAULT">
  76. <Model
  77. Name="SBTechStructure_SKN" />
  78. </ModelConditionState>
  79. <ModelConditionState
  80. ParseCondStateType="PARSE_NORMAL"
  81. ConditionsYes="BUILD_PLACEMENT_CURSOR">
  82. <Model
  83. Name="SBTechStructure_SKN" />
  84. <Texture
  85. Original="SBBuilding_Holes"
  86. New="SBBuilding_FP" />
  87. <Texture
  88. Original="SBBuilding_Filler"
  89. New="SBBuilding_FP" />
  90. </ModelConditionState>
  91. <AnimationState
  92. ParseCondStateType="PARSE_DEFAULT">
  93. </AnimationState>
  94. <AnimationState
  95. ParseCondStateType="PARSE_NORMAL"
  96. ConditionsYes="SOLD"
  97. Flags="START_FRAME_LAST">
  98. <Animation
  99. AnimationName="SBTechStructure_BLD"
  100. AnimationMode="ONCE_BACKWARDS"
  101. AnimationBlendTime="0"
  102. AnimationAbsoluteTime="2s"/>
  103. </AnimationState>
  104. <AnimationState
  105. ParseCondStateType="PARSE_NORMAL"
  106. ConditionsYes="STRUCTURE_UNPACKING">
  107. <Animation
  108. AnimationName="SBTechStructure_BLD"
  109. AnimationMode="MATCH_UNPACKING"
  110. AnimationBlendTime="0" />
  111. <ParticleSysBone
  112. BoneName="NONE"
  113. FXParticleSystemTemplate="Con_Med"
  114. FollowBone="true" />
  115. <ParticleSysBone
  116. BoneName="NONE"
  117. FXParticleSystemTemplate="Con_Lights"
  118. FollowBone="true" />
  119. <ParticleSysBone
  120. BoneName="NONE"
  121. FXParticleSystemTemplate="Con_Flash"
  122. FollowBone="true" />
  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="SBPowerPlantAdvanced_Platform" />
  133. </ModelConditionState>
  134. <ModelConditionState
  135. ParseCondStateType="PARSE_NORMAL"
  136. ConditionsYes="STRUCTURE_UNPACKING OVER_WATER">
  137. <Model
  138. Name="SBPowerPlantAdvanced_Platform_BLD" />
  139. </ModelConditionState>
  140. <ModelConditionState
  141. ParseCondStateType="PARSE_NORMAL"
  142. ConditionsYes="SOLD OVER_WATER">
  143. <Model
  144. Name="SBPowerPlantAdvanced_Platform_BLD" />
  145. </ModelConditionState>
  146. <AnimationState
  147. ParseCondStateType="PARSE_DEFAULT">
  148. <Script>
  149. CurDrawableHideSubObjectPermanently("Platform")
  150. CurDrawableShowSubObjectPermanently("Bib")
  151. CurDrawableHideSubObjectPermanently("Wall")
  152. </Script>
  153. </AnimationState>
  154. <AnimationState
  155. ParseCondStateType="PARSE_NORMAL"
  156. ConditionsYes="STRUCTURE_UNPACKING OVER_WATER"
  157. StateName="STATE_BuildingOnWater" >
  158. <Animation
  159. AnimationName="SBPowerPlantAdvanced_Platform_BLD"
  160. AnimationMode="ONCE"
  161. AnimationBlendTime="0" />
  162. <ParticleSysBone
  163. BoneName="None"
  164. FXParticleSystemTemplate="AlliedPowerPlantWaterBuildupFroth"
  165. FollowBone="true" />
  166. <ParticleSysBone
  167. BoneName="None"
  168. FXParticleSystemTemplate="AlliedPowerPlantWaterBuildupMist"
  169. FollowBone="true" />
  170. <ParticleSysBone
  171. BoneName="None"
  172. FXParticleSystemTemplate="ABAirBaseWakeSplash"
  173. FollowBone="true" />
  174. <ParticleSysBone
  175. BoneName="None"
  176. FXParticleSystemTemplate="AlliedPowerPlantBuildupFlashes"
  177. FollowBone="true" />
  178. <ParticleSysBone
  179. BoneName="None"
  180. FXParticleSystemTemplate="AlliedPowerPlantBuildupSparksSeed"
  181. FollowBone="true" />
  182. <Script>
  183. CurDrawableShowSubObjectPermanently("Platform")
  184. CurDrawableHideSubObjectPermanently("Bib")
  185. CurDrawableShowSubObjectPermanently("Wall")
  186. </Script>
  187. </AnimationState>
  188. <AnimationState
  189. ParseCondStateType="PARSE_NORMAL"
  190. ConditionsYes="STRUCTURE_UNPACKING"
  191. Flags="START_FRAME_FIRST"
  192. StateName="STATE_BuildingOnLand" >
  193. <Animation
  194. AnimationName="SBPowerPlantAdvanced_Platform_BLD"
  195. AnimationMode="ONCE"
  196. AnimationBlendTime="0" />
  197. <Script>
  198. CurDrawableHideSubObjectPermanently("Platform")
  199. CurDrawableShowSubObjectPermanently("Bib")
  200. CurDrawableHideSubObjectPermanently("Wall")
  201. </Script>
  202. </AnimationState>
  203. <AnimationState
  204. ParseCondStateType="PARSE_NORMAL"
  205. ConditionsYes="SOLD OVER_WATER"
  206. Flags="START_FRAME_LAST" >
  207. <Animation
  208. AnimationName="SBPowerPlantAdvanced_Platform_BLD"
  209. AnimationMode="ONCE_BACKWARDS"
  210. AnimationAbsoluteTime="2s"
  211. AnimationBlendTime="0" />
  212. <ParticleSysBone
  213. BoneName="None"
  214. FXParticleSystemTemplate="AlliedPowerPlantWaterBuildupFroth"
  215. FollowBone="true" />
  216. <ParticleSysBone
  217. BoneName="None"
  218. FXParticleSystemTemplate="AlliedPowerPlantWaterBuildupMist"
  219. FollowBone="true" />
  220. <ParticleSysBone
  221. BoneName="None"
  222. FXParticleSystemTemplate="ABAirBaseWakeSplash"
  223. FollowBone="true" />
  224. </AnimationState>
  225. <AnimationState
  226. ParseCondStateType="PARSE_NORMAL"
  227. ConditionsYes="SOLD"
  228. Flags="START_FRAME_LAST" >
  229. <Animation
  230. AnimationName="SBPowerPlantAdvanced_Platform_BLD"
  231. AnimationMode="ONCE_BACKWARDS"
  232. AnimationAbsoluteTime="2s"
  233. AnimationBlendTime="0" />
  234. </AnimationState>
  235. <AnimationState
  236. ParseCondStateType="PARSE_NORMAL"
  237. ConditionsYes="OVER_WATER">
  238. <Script>
  239. CurDrawableShowSubObjectPermanently("Platform")
  240. CurDrawableHideSubObjectPermanently("Bib")
  241. CurDrawableShowSubObjectPermanently("Wall")
  242. </Script>
  243. </AnimationState>
  244. </ScriptedModelDraw>
  245. <!-- DRAW SCAFFOLD -->
  246. <ScriptedModelDraw
  247. id="ModuleTag_Draw_Scaffold"
  248. OkToChangeModelColor="true"
  249. 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">
  250. <ModelConditionState
  251. ParseCondStateType="PARSE_DEFAULT">
  252. <Model
  253. Name="" />
  254. </ModelConditionState>
  255. <ModelConditionState
  256. ParseCondStateType="PARSE_NORMAL"
  257. ConditionsYes="SOLD">
  258. <Model
  259. Name="SBTechStructure_Scaffold" />
  260. </ModelConditionState>
  261. <ModelConditionState
  262. ParseCondStateType="PARSE_NORMAL"
  263. ConditionsYes="STRUCTURE_UNPACKING JUST_BUILT">
  264. <Model
  265. Name="" />
  266. </ModelConditionState>
  267. <ModelConditionState
  268. ParseCondStateType="PARSE_NORMAL"
  269. ConditionsYes="STRUCTURE_UNPACKING">
  270. <Model
  271. Name="SBTechStructure_Scaffold" />
  272. </ModelConditionState>
  273. <AnimationState
  274. ParseCondStateType="PARSE_DEFAULT">
  275. </AnimationState>
  276. <AnimationState
  277. ParseCondStateType="PARSE_NORMAL"
  278. ConditionsYes="SOLD"
  279. Flags="START_FRAME_LAST">
  280. <Animation
  281. AnimationName="SBTechStructure_Scaffold"
  282. AnimationMode="ONCE_BACKWARDS"
  283. AnimationAbsoluteTime="2s"/>
  284. </AnimationState>
  285. <AnimationState
  286. ParseCondStateType="PARSE_NORMAL"
  287. ConditionsYes="STRUCTURE_UNPACKING">
  288. <Animation
  289. AnimationName="SBTechStructure_Scaffold"
  290. AnimationMode="MATCH_UNPACKING"
  291. AnimationBlendTime="0" />
  292. </AnimationState>
  293. </ScriptedModelDraw>
  294. <!-- DRAW PARTICLES -->
  295. <ScriptedModelDraw
  296. id="ModuleTag_Draw_FX"
  297. OkToChangeModelColor="true">
  298. <ModelConditionState
  299. ParseCondStateType="PARSE_DEFAULT">
  300. <Model
  301. Name="SBTechStructure_FX" />
  302. </ModelConditionState>
  303. <ModelConditionState
  304. ParseCondStateType="PARSE_NORMAL"
  305. ConditionsYes="DAMAGED">
  306. <Model
  307. Name="SBTechStructure_FX" />
  308. <ParticleSysBone
  309. BoneName="FX_BONE01"
  310. FXParticleSystemTemplate="GenericDStateSmoke"
  311. FollowBone="true"/>
  312. <ParticleSysBone
  313. BoneName="FX_BONE01"
  314. FXParticleSystemTemplate="GenericDStateFire"
  315. FollowBone="true"/>
  316. </ModelConditionState>
  317. <ModelConditionState
  318. ParseCondStateType="PARSE_NORMAL"
  319. ConditionsYes="REALLYDAMAGED">
  320. <Model
  321. Name="SBTechStructure_FX" />
  322. <ParticleSysBone
  323. BoneName="FX_BONE01"
  324. FXParticleSystemTemplate="GenericDStateSmoke"
  325. FollowBone="true"/>
  326. <ParticleSysBone
  327. BoneName="FX_BONE01"
  328. FXParticleSystemTemplate="GenericDStateFire"
  329. FollowBone="true"/>
  330. <ParticleSysBone
  331. BoneName="FX_BONE02"
  332. FXParticleSystemTemplate="GenericDStateSmoke"
  333. FollowBone="true"/>
  334. <ParticleSysBone
  335. BoneName="FX_BONE02"
  336. FXParticleSystemTemplate="GenericDStateFire"
  337. FollowBone="true"/>
  338. </ModelConditionState>
  339. </ScriptedModelDraw>
  340. </Draws>
  341. <Behaviors>
  342. <Physics
  343. id="ModuleTag_Physics"/>
  344. <BuildingDestructionBehavior
  345. id="ModuleTag_BuildingDestruction"
  346. FillerMesh="NEWSKIN_FILL">
  347. <DieMuxData
  348. DeathTypes="ALL"
  349. DeathTypesForbidden="SUICIDED"/>
  350. <Item
  351. BonePrefix="BONE_CONTACT_POINT_"
  352. FX="SovietRefineryHit"
  353. CreationObject="SovietPowerPlant_Debris"
  354. FlingVelocity="100.0"/>
  355. </BuildingDestructionBehavior>
  356. <BuildingDestructionBehavior
  357. id="ModuleTag_BuildingDestructionScaffold"
  358. AssociatedModule="ModuleTag_Draw_Scaffold">
  359. <DieMuxData
  360. DeathTypes="ALL"
  361. DeathTypesForbidden="SUICIDED"/>
  362. <Item
  363. BonePrefix="BONE_CONTACT_POINT_"
  364. FX="SovietRefineryHit"/>
  365. </BuildingDestructionBehavior>
  366. <FXListBehavior
  367. xai:joinAction="Replace" xmlns:xai="uri:ea.com:eala:asset:instance"
  368. id="ModuleTag_FXList">
  369. <DieMuxData
  370. DeathTypes="ALL"/>
  371. <Event
  372. Index="onDeath"
  373. FX="FX_YU_Hotel02_Explode" />
  374. <Event
  375. Index="onDeath"
  376. FX="FX_SOV_TechCenter_Die" /> <!-- FX_YU_Hotel02_Explode-->
  377. </FXListBehavior>
  378. <CreateObjectDie
  379. id="ModuleTag_CreateObjectDieOnLand"
  380. CreationList="SBTechStructure_Die_OCL">
  381. <DieMuxData
  382. DeathTypes="ALL"
  383. DeathTypesForbidden="SUICIDED"
  384. ExemptStatus="OVER_WATER" />
  385. </CreateObjectDie>
  386. <CreateObjectDie
  387. id="ModuleTag_CreateObjectDieOnWater"
  388. CreationList="SBTechStructurePlatform_Die_OCL">
  389. <DieMuxData
  390. DeathTypes="ALL"
  391. DeathTypesForbidden="SUICIDED"
  392. RequiredStatus="OVER_WATER" />
  393. </CreateObjectDie>
  394. <DestroyDie
  395. id="ModuleTag_Die">
  396. <DieMuxData
  397. DeathTypes="ALL"
  398. DeathTypesForbidden="SUICIDED"/>
  399. </DestroyDie>
  400. <BuildingBehavior
  401. id="ModuleTag_BuildingBehavior"
  402. NightWindowObject="LIGHT_01" />
  403. <StructureUnpackUpdate
  404. id="ModuleTag_StructureUnpackUpdate"
  405. UnpackTime="=$SOVIET_TECHSTRUCTURE_LOCAL_UNPACK_TIME" />
  406. <ProductionUpdate
  407. id="ModuleTag_ProductionUpdate"
  408. Type="UPGRADE"
  409. GiveNoXP="true" />
  410. <xi:include
  411. href="../../Includes/GenericBuildingRepair.xml" />
  412. <xi:include
  413. href="../../Includes/GenericEngineerContain.xml" />
  414. <xi:include
  415. href="../../Includes/GenericSovietBuildingDestruction.xml" />
  416. <xi:include
  417. href="../../Includes/GenericSovietBuildingSuicide.xml" />
  418. <xi:include
  419. href="DATA:Includes/InfiltratorContainParalyze.xml" />
  420. </Behaviors>
  421. <Body>
  422. <ActiveBody
  423. id="ModuleTag_Body"
  424. MaxHealth="2000.0" />
  425. </Body>
  426. <Geometry
  427. IsSmall="false">
  428. <PlacementShape
  429. Type= "BOX"
  430. MajorRadius = "60.0"
  431. MinorRadius = "60.0"
  432. Height = "5.0" />
  433. <Shape
  434. Type= "BOX"
  435. MajorRadius = "21.924"
  436. MinorRadius = "47.52"
  437. Height = "35.5905"
  438. ContactPointGeneration = "STRUCTURE" >
  439. <Offset
  440. x = "0.0"
  441. y = "2.12505"
  442. z = "0.0" />
  443. </Shape>
  444. <Shape
  445. Type= "BOX"
  446. MajorRadius = "23.436"
  447. MinorRadius = "41.28"
  448. Height = "35.95"
  449. ContactPointGeneration = "STRUCTURE" >
  450. <Offset
  451. x = "26.8856"
  452. y = "-1.24683"
  453. z = "0.0" />
  454. </Shape>
  455. <Shape
  456. Type= "CYLINDER"
  457. MajorRadius = "11.0"
  458. Height = "95.2675"
  459. ContactPointGeneration = "INFANTRY" >
  460. <Offset
  461. x = "-41.997"
  462. y = "-23.8928"
  463. z = "0.0" />
  464. </Shape>
  465. <Shape
  466. Type= "BOX"
  467. MajorRadius = "19.9247"
  468. MinorRadius = "20.672"
  469. Height = "35.95"
  470. ContactPointGeneration = "STRUCTURE" >
  471. <Offset
  472. x = "-22.178"
  473. y = "-4.84964"
  474. z = "0.0" />
  475. </Shape>
  476. <Shape
  477. Type= "BOX"
  478. MajorRadius = "19.9247"
  479. MinorRadius = "20.672"
  480. Height = "35.95"
  481. ContactPointGeneration = "STRUCTURE" >
  482. <Offset
  483. x = "-14.2125"
  484. y = "11.9996"
  485. z = "0.0" />
  486. </Shape>
  487. <Shape
  488. Type= "BOX"
  489. MajorRadius = "6.57516"
  490. MinorRadius = "5.27135"
  491. Height = "82.9942"
  492. ContactPointGeneration = "STRUCTURE" >
  493. <Offset
  494. x = "43.0472"
  495. y = "-32.3975"
  496. z = "0.0" />
  497. </Shape>
  498. <Shape
  499. Type= "CYLINDER"
  500. MajorRadius = "11.0"
  501. Height = "118.228"
  502. ContactPointGeneration = "INFANTRY" >
  503. <Offset
  504. x = "-1.17792"
  505. y = "39.7014"
  506. z = "0.0" />
  507. </Shape>
  508. </Geometry>
  509. <AudioArrayVoice>
  510. <AudioEntry
  511. Sound="AudioEvent:SOV_TechCenter_Select"
  512. AudioType="voiceSelect" />
  513. </AudioArrayVoice>
  514. <AudioArraySound>
  515. <!--
  516. <AudioEntry Sound="HumanFaction_MediumBuilding_LightDamageMS" AudioType="soundOnDamaged" />
  517. <AudioEntry Sound="HumanFaction_MediumBuilding_HeavyDamageMS" AudioType="soundOnReallyDamaged" />
  518. -->
  519. </AudioArraySound>
  520. <VisionInfo
  521. VisionRange="150"
  522. ShroudClearingRange="500" />
  523. <ProjectedBuildabilityInfo
  524. Radius="210"
  525. BuildPlacementTypes="MAIN_STRUCTURE OTHER_STRUCTURE" />
  526. </GameObject>
  527. </AssetDeclaration>