SovietRefinery.xml 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849
  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:SBRefinery_SKN.w3x" />
  9. <Include
  10. type="all"
  11. source="ART:SBRefinery_FX.w3x" />
  12. <Include
  13. type="all"
  14. source="ART:SBRefinery_BLD.w3x" />
  15. <Include
  16. type="all"
  17. source="ART:SBRefinery_Scaffold.w3x" />
  18. <Include
  19. type="all"
  20. source="ART:SBRefinery_particles.w3x" />
  21. <Include
  22. type="all"
  23. source="ART:SBRefinery_ARM_SKN.w3x" />
  24. <Include
  25. type="all"
  26. source="ART:SBRefinery_ARM_UNLOAD.w3x" />
  27. <Include
  28. type="all"
  29. source="ART:SBRefinery_ARM_EMPTY.w3x" />
  30. <Include
  31. type="all"
  32. source="ART:SBRefinery_ARM_BLD.w3x" />
  33. <Include
  34. type="all"
  35. source="ART:SBRefinery_Platform.w3x" />
  36. <Include
  37. type="all"
  38. source="ART:SBRefinery_Platform_BLD.w3x" />
  39. <Include
  40. type="all"
  41. source="ART:Ore_Gold_SKN.w3x" />
  42. <Include
  43. type="all"
  44. source="ART:Ore_Gold_SBRU.w3x" />
  45. <Include
  46. type="all"
  47. source="ART:Ore_Gold_SBRE.w3x" />
  48. <Include
  49. type="all"
  50. source="ART:Ore_Gold_IDLA.w3x" />
  51. <!-- Base Object -->
  52. <Include
  53. type="instance"
  54. source="DATA:BaseObjects/BaseSovietStructure.xml" />
  55. </Includes>
  56. <Defines>
  57. <Define name="SOVIET_REFINERY_LOCAL_UNPACK_TIME" value="20s" />
  58. </Defines>
  59. <GameObject
  60. id="SovietRefinery"
  61. inheritFrom="BaseSovietStructure"
  62. SelectPortrait="Portrait_SovietRefinery_big"
  63. ButtonImage="Button_SovietRefinery_small"
  64. Side="Soviet"
  65. EditorSorting="STRUCTURE"
  66. TransportSlotCount="1"
  67. BuildTime="0.0"
  68. CommandSet="SovietRefineryCommandSet"
  69. KindOf="+SUPPLY_GATHERING_CENTER +FS_MONEY_STORAGE +REFINERY +SKIRMISH_AI_CAN_BUILD_DURING_EMERGENCY_NO_INCOME"
  70. RadarPriority="STRUCTURE"
  71. PlacementViewAngle="315d"
  72. RefundValue="300"
  73. EnergyProduction="-50"
  74. ProductionQueueType="MAIN_STRUCTURE"
  75. BuildPlacementTypeFlag="MAIN_STRUCTURE"
  76. IsTrainable="false"
  77. EditorName="SovietRefinery"
  78. Description="Desc:SovietRefinery"
  79. TypeDescription="Type:SovietRefinery">
  80. <DisplayName
  81. xai:joinAction="Replace" xmlns:xai="uri:ea.com:eala:asset:instance">Name:SovietRefinery</DisplayName>
  82. <GameDependency>
  83. <RequiredObject>SovietPowerPlant</RequiredObject>
  84. </GameDependency>
  85. <ObjectResourceInfo>
  86. <BuildCost Account="=$ACCOUNT_ORE" Amount="2000"/>
  87. </ObjectResourceInfo>
  88. <ArmorSet
  89. Armor="SovietRefineryArmor"
  90. DamageFX="FactionStructureDamageFX" />
  91. <SkirmishAIInformation
  92. BaseBuildingLocation="NEAR_RESOURCE_NODE"
  93. NearResourceNodeType="ORE" >
  94. <ResourceNodeBaseClosenessTestSelectionCriteria
  95. PreferredNotBaseTypes="CAPTURED"
  96. SortOrder="PREFER_CLOSEST" />
  97. </SkirmishAIInformation>
  98. <Draws>
  99. <ScriptedModelDraw
  100. id="ModuleTag_Draw"
  101. OkToChangeModelColor="true"
  102. ExtraPublicBone="DockStart DockAction DockEnd QUE01 QUE02 QUE03 QUE04 QUE05 QUE06 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">
  103. <ModelConditionState
  104. ParseCondStateType="PARSE_DEFAULT">
  105. <Model
  106. Name="SBRefinery_SKN" />
  107. </ModelConditionState>
  108. <ModelConditionState
  109. ParseCondStateType="PARSE_NORMAL"
  110. ConditionsYes="BUILD_PLACEMENT_CURSOR">
  111. <Model
  112. Name="SBRefinery_SKN" />
  113. <Texture
  114. Original="SBBuilding_Holes"
  115. New="SBBuilding_FP" />
  116. <Texture
  117. Original="SBBuilding_Filler"
  118. New="SBBuilding_FP" />
  119. </ModelConditionState>
  120. <ModelConditionState
  121. ParseCondStateType="PARSE_NORMAL"
  122. ConditionsYes="STRUCTURE_UNPACKING JUST_BUILT">
  123. <Model
  124. Name="" />
  125. </ModelConditionState>
  126. <ModelConditionState
  127. ParseCondStateType="PARSE_NORMAL"
  128. ConditionsYes="STRUCTURE_UNPACKING">
  129. <Model
  130. Name="SBRefinery_SKN" />
  131. </ModelConditionState>
  132. <AnimationState
  133. ParseCondStateType="PARSE_NORMAL"
  134. ConditionsYes="SOLD"
  135. Flags="START_FRAME_LAST">
  136. <Animation
  137. AnimationName="SBRefinery_BLD"
  138. AnimationMode="ONCE_BACKWARDS"
  139. AnimationBlendTime="0"
  140. AnimationAbsoluteTime="2s"/>
  141. </AnimationState>
  142. <AnimationState
  143. ParseCondStateType="PARSE_NORMAL"
  144. ConditionsYes="STRUCTURE_UNPACKING">
  145. <Animation
  146. AnimationName="SBRefinery_BLD"
  147. AnimationMode="MATCH_UNPACKING"
  148. AnimationBlendTime="0" />
  149. <ParticleSysBone
  150. BoneName="NONE"
  151. FXParticleSystemTemplate="Con_Med"
  152. FollowBone="true" />
  153. <ParticleSysBone
  154. BoneName="NONE"
  155. FXParticleSystemTemplate="Con_Lights"
  156. FollowBone="true" />
  157. <ParticleSysBone
  158. BoneName="NONE"
  159. FXParticleSystemTemplate="Con_Flash"
  160. FollowBone="true" />
  161. </AnimationState>
  162. </ScriptedModelDraw>
  163. <!-- Draw Arm -->
  164. <ScriptedModelDraw
  165. id="ModuleTag_Draw_Arm"
  166. OkToChangeModelColor="true"
  167. ExtraPublicBone="BONE_TABLE">
  168. <ModelConditionState
  169. ParseCondStateType="PARSE_DEFAULT">
  170. <Model
  171. Name="SBRefinery_ARM_SKN" />
  172. </ModelConditionState>
  173. <ModelConditionState
  174. ParseCondStateType="PARSE_NORMAL"
  175. ConditionsYes="BUILD_PLACEMENT_HINT">
  176. <Model
  177. Name="" />
  178. </ModelConditionState>
  179. <ModelConditionState
  180. ParseCondStateType="PARSE_NORMAL"
  181. ConditionsYes="STRUCTURE_UNPACKING">
  182. <Model
  183. Name="SBRefinery_ARM_SKN" />
  184. </ModelConditionState>
  185. <AnimationState
  186. ParseCondStateType="PARSE_DEFAULT"
  187. Flags="START_FRAME_FIRST">
  188. <Animation
  189. AnimationName="SBRefinery_ARM_UNLOAD"
  190. AnimationMode="ONCE_BACKWARDS"
  191. AnimationBlendTime="0" />
  192. <Script>
  193. CurDrawableShowSubObjectPermanently("Table")
  194. CurDrawableHideSubObjectPermanently("Table_Water")
  195. Prev = CurDrawablePrevAnimationState();
  196. if Prev == "STATE_Unload" then
  197. CurDrawableSetTransitionAnimState("TRANS_Unload")
  198. end
  199. </Script>
  200. </AnimationState>
  201. <AnimationState
  202. ParseCondStateType="PARSE_NORMAL"
  203. ConditionsYes="SOLD"
  204. Flags="START_FRAME_LAST">
  205. <Animation
  206. AnimationName="SBRefinery_ARM_BLD"
  207. AnimationMode="ONCE_BACKWARDS"
  208. AnimationBlendTime="0"
  209. AnimationAbsoluteTime="2s"/>
  210. </AnimationState>
  211. <AnimationState
  212. ParseCondStateType="PARSE_NORMAL"
  213. ConditionsYes="OVER_WATER STRUCTURE_UNPACKING">
  214. <Animation
  215. AnimationName="SBRefinery_ARM_BLD"
  216. AnimationMode="MATCH_UNPACKING"
  217. AnimationBlendTime="0" />
  218. <Script>
  219. CurDrawableShowSubObjectPermanently("Table_Water")
  220. CurDrawableHideSubObjectPermanently("Table")
  221. Prev = CurDrawablePrevAnimationState();
  222. if Prev == "STATE_Unload" then
  223. CurDrawableSetTransitionAnimState("TRANS_Unload")
  224. end
  225. </Script>
  226. </AnimationState>
  227. <AnimationState
  228. ParseCondStateType="PARSE_NORMAL"
  229. StateName="STATE_Unload"
  230. ConditionsYes="OVER_WATER DOCKING_ACTIVE">
  231. <Animation
  232. AnimationName="SBRefinery_ARM_UNLOAD"
  233. AnimationMode="ONCE"
  234. AnimationBlendTime="0" />
  235. <Script>
  236. CurDrawableShowSubObjectPermanently("Table_Water")
  237. CurDrawableHideSubObjectPermanently("Table")
  238. </Script>
  239. </AnimationState>
  240. <AnimationState
  241. ParseCondStateType="PARSE_NORMAL"
  242. ConditionsYes="STRUCTURE_UNPACKING">
  243. <Animation
  244. AnimationName="SBRefinery_ARM_BLD"
  245. AnimationMode="MATCH_UNPACKING"
  246. AnimationBlendTime="0" />
  247. <Script>
  248. CurDrawableShowSubObjectPermanently("Table")
  249. CurDrawableHideSubObjectPermanently("Table_Water")
  250. Prev = CurDrawablePrevAnimationState();
  251. if Prev == "STATE_Unload" then
  252. CurDrawableSetTransitionAnimState("TRANS_Unload")
  253. end
  254. </Script>
  255. </AnimationState>
  256. <AnimationState
  257. ParseCondStateType="PARSE_NORMAL"
  258. StateName="STATE_Unload"
  259. ConditionsYes="DOCKING_ACTIVE">
  260. <Animation
  261. AnimationName="SBRefinery_ARM_UNLOAD"
  262. AnimationMode="ONCE"
  263. AnimationBlendTime="0" />
  264. <Script>
  265. CurDrawableShowSubObjectPermanently("Table")
  266. CurDrawableHideSubObjectPermanently("Table_Water")
  267. </Script>
  268. </AnimationState>
  269. <AnimationState
  270. ParseCondStateType="PARSE_NORMAL"
  271. ConditionsYes="OVER_WATER"
  272. Flags="START_FRAME_FIRST">
  273. <Animation
  274. AnimationName="SBRefinery_ARM_UNLOAD"
  275. AnimationMode="ONCE_BACKWARDS"
  276. AnimationBlendTime="0" />
  277. <Script>
  278. CurDrawableShowSubObjectPermanently("Table_Water")
  279. CurDrawableHideSubObjectPermanently("Table")
  280. Prev = CurDrawablePrevAnimationState();
  281. if Prev == "STATE_Unload" then
  282. CurDrawableSetTransitionAnimState("TRANS_Unload")
  283. end
  284. </Script>
  285. </AnimationState>
  286. <AnimationState
  287. ParseCondStateType="PARSE_TRANSITION"
  288. StateName="TRANS_Unload">
  289. <Animation
  290. AnimationName="SBRefinery_ARM_EMPTY"
  291. AnimationMode="ONCE"
  292. AnimationBlendTime="0" />
  293. </AnimationState>
  294. </ScriptedModelDraw>
  295. <!-- Draw Ore -->
  296. <ScriptedModelDraw
  297. id="ModuleTag_Draw_Ore"
  298. OkToChangeModelColor="true">
  299. <ModelConditionState
  300. ParseCondStateType="PARSE_DEFAULT">
  301. <Model
  302. Name="Ore_Gold_SKN" />
  303. </ModelConditionState>
  304. <ModelConditionState
  305. ParseCondStateType="PARSE_NORMAL"
  306. ConditionsYes="BUILD_PLACEMENT_HINT">
  307. <Model
  308. Name="" />
  309. </ModelConditionState>
  310. <ModelConditionState
  311. ParseCondStateType="PARSE_NORMAL"
  312. ConditionsYes="STRUCTURE_UNPACKING">
  313. <Model
  314. Name="" />
  315. </ModelConditionState>
  316. <AnimationState
  317. ParseCondStateType="PARSE_DEFAULT"
  318. Flags="START_FRAME_LAST">
  319. <Animation
  320. AnimationName="Ore_Gold_SBRE"
  321. AnimationMode="ONCE"
  322. AnimationBlendTime="0" />
  323. <Script>
  324. Prev = CurDrawablePrevAnimationState();
  325. if Prev == "STATE_Unload" then
  326. CurDrawableSetTransitionAnimState("TRANS_Unload")
  327. end
  328. </Script>
  329. </AnimationState>
  330. <AnimationState
  331. ParseCondStateType="PARSE_NORMAL"
  332. StateName="STATE_Unload"
  333. ConditionsYes="DOCKING_ACTIVE">
  334. <Animation
  335. AnimationName="Ore_Gold_SBRU"
  336. AnimationMode="ONCE"
  337. AnimationBlendTime="0" />
  338. </AnimationState>
  339. <AnimationState
  340. ParseCondStateType="PARSE_TRANSITION"
  341. StateName="TRANS_Unload">
  342. <Animation
  343. AnimationName="Ore_Gold_SBRE"
  344. AnimationMode="ONCE"
  345. AnimationBlendTime="0" />
  346. </AnimationState>
  347. </ScriptedModelDraw>
  348. <!-- DRAW SCAFFOLD -->
  349. <ScriptedModelDraw
  350. id="ModuleTag_Draw_Scaffold"
  351. OkToChangeModelColor="true"
  352. 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">
  353. <ModelConditionState
  354. ParseCondStateType="PARSE_DEFAULT">
  355. <Model
  356. Name="" />
  357. </ModelConditionState>
  358. <ModelConditionState
  359. ParseCondStateType="PARSE_NORMAL"
  360. ConditionsYes="BUILD_PLACEMENT_HINT">
  361. <Model
  362. Name="" />
  363. </ModelConditionState>
  364. <ModelConditionState
  365. ParseCondStateType="PARSE_NORMAL"
  366. ConditionsYes="SOLD">
  367. <Model
  368. Name="SBRefinery_Scaffold" />
  369. </ModelConditionState>
  370. <ModelConditionState
  371. ParseCondStateType="PARSE_NORMAL"
  372. ConditionsYes="STRUCTURE_UNPACKING JUST_BUILT">
  373. <Model
  374. Name="" />
  375. </ModelConditionState>
  376. <ModelConditionState
  377. ParseCondStateType="PARSE_NORMAL"
  378. ConditionsYes="STRUCTURE_UNPACKING">
  379. <Model
  380. Name="SBRefinery_Scaffold" />
  381. </ModelConditionState>
  382. <AnimationState
  383. ParseCondStateType="PARSE_DEFAULT">
  384. </AnimationState>
  385. <AnimationState
  386. ParseCondStateType="PARSE_NORMAL"
  387. ConditionsYes="SOLD"
  388. Flags="START_FRAME_LAST">
  389. <Animation
  390. AnimationName="SBRefinery_Scaffold"
  391. AnimationMode="ONCE_BACKWARDS"
  392. AnimationAbsoluteTime="2s"/>
  393. </AnimationState>
  394. <AnimationState
  395. ParseCondStateType="PARSE_NORMAL"
  396. ConditionsYes="STRUCTURE_UNPACKING">
  397. <Animation
  398. AnimationName="SBRefinery_Scaffold"
  399. AnimationMode="MATCH_UNPACKING"
  400. AnimationBlendTime="0" />
  401. </AnimationState>
  402. </ScriptedModelDraw>
  403. <!-- DRAW PLATFORM -->
  404. <ScriptedModelDraw
  405. id="ModuleTag_Draw_Platform"
  406. OkToChangeModelColor="true">
  407. <ModelConditionState
  408. ParseCondStateType="PARSE_DEFAULT">
  409. <Model
  410. Name="SBRefinery_Platform" />
  411. </ModelConditionState>
  412. <ModelConditionState
  413. ParseCondStateType="PARSE_NORMAL"
  414. ConditionsYes="BUILD_PLACEMENT_HINT">
  415. <Model
  416. Name="" />
  417. </ModelConditionState>
  418. <ModelConditionState
  419. ParseCondStateType="PARSE_NORMAL"
  420. ConditionsYes="STRUCTURE_UNPACKING OVER_WATER">
  421. <Model
  422. Name="SBRefinery_Platform_BLD"/>
  423. <ParticleSysBone
  424. BoneName="None"
  425. FXParticleSystemTemplate="ABPowerPlantWakeSplash"
  426. FollowBone="true" />
  427. </ModelConditionState>
  428. <ModelConditionState
  429. ParseCondStateType="PARSE_NORMAL"
  430. ConditionsYes="STRUCTURE_UNPACKING">
  431. <Model
  432. Name="SBRefinery_Platform_BLD"/>
  433. </ModelConditionState>
  434. <ModelConditionState
  435. ParseCondStateType="PARSE_NORMAL"
  436. ConditionsYes="SOLD OVER_WATER">
  437. <Model
  438. Name="SBRefinery_Platform_BLD"/>
  439. <ParticleSysBone
  440. BoneName="None"
  441. FXParticleSystemTemplate="ABPowerPlantWakeSplash"
  442. FollowBone="true" />
  443. </ModelConditionState>
  444. <ModelConditionState
  445. ParseCondStateType="PARSE_NORMAL"
  446. ConditionsYes="SOLD">
  447. <Model
  448. Name="SBRefinery_Platform_BLD"/>
  449. </ModelConditionState>
  450. <AnimationState
  451. ParseCondStateType="PARSE_DEFAULT">
  452. <Script>
  453. CurDrawableShowSubObjectPermanently("Bib")
  454. CurDrawableHideSubObjectPermanently("Platform")
  455. CurDrawableHideSubObjectPermanently("Platform_FX")
  456. </Script>
  457. </AnimationState>
  458. <AnimationState
  459. ParseCondStateType="PARSE_NORMAL"
  460. ConditionsYes="OVER_WATER STRUCTURE_UNPACKING ">
  461. <Animation
  462. AnimationName="SBRefinery_Platform_BLD"
  463. AnimationMode="ONCE"
  464. AnimationBlendTime="0" />
  465. <Script>
  466. CurDrawableHideSubObjectPermanently("Table")
  467. CurDrawableShowSubObjectPermanently("Table_Water")
  468. CurDrawableHideSubObjectPermanently("Bib")
  469. CurDrawableShowSubObjectPermanently("Platform")
  470. CurDrawableShowSubObjectPermanently("Platform_FX")
  471. </Script>
  472. <ParticleSysBone
  473. BoneName="None"
  474. FXParticleSystemTemplate="AlliedPowerPlantWaterBuildupFroth"
  475. FollowBone="true" />
  476. <ParticleSysBone
  477. BoneName="None"
  478. FXParticleSystemTemplate="AlliedPowerPlantWaterBuildupMist"
  479. FollowBone="true" />
  480. <ParticleSysBone
  481. BoneName="None"
  482. FXParticleSystemTemplate="AlliedPowerPlantBuildupFlashes"
  483. FollowBone="true" />
  484. <ParticleSysBone
  485. BoneName="None"
  486. FXParticleSystemTemplate="AlliedPowerPlantBuildupSparksSeed"
  487. FollowBone="true" />
  488. </AnimationState>
  489. <AnimationState
  490. ParseCondStateType="PARSE_NORMAL"
  491. ConditionsYes="STRUCTURE_UNPACKING">
  492. <Animation
  493. AnimationName="SBRefinery_Platform_BLD"
  494. AnimationMode="ONCE"
  495. AnimationBlendTime="0" />
  496. <Script>
  497. CurDrawableHideSubObjectPermanently("Table_Water")
  498. CurDrawableShowSubObjectPermanently("Table")
  499. CurDrawableShowSubObjectPermanently("Bib")
  500. CurDrawableHideSubObjectPermanently("Platform")
  501. CurDrawableHideSubObjectPermanently("Platform_FX")
  502. </Script>
  503. <ParticleSysBone
  504. BoneName="None"
  505. FXParticleSystemTemplate="AlliedPowerPlantBuildupFlashes"
  506. FollowBone="true" />
  507. <ParticleSysBone
  508. BoneName="None"
  509. FXParticleSystemTemplate="AlliedPowerPlantBuildupSparksSeed"
  510. FollowBone="true" />
  511. </AnimationState>
  512. <AnimationState
  513. ParseCondStateType="PARSE_NORMAL"
  514. ConditionsYes="SOLD OVER_WATER"
  515. Flags="START_FRAME_LAST" >
  516. <Animation
  517. AnimationName="SBRefinery_Platform_BLD"
  518. AnimationMode="ONCE_BACKWARDS"
  519. AnimationAbsoluteTime="2s"
  520. AnimationBlendTime="0" />
  521. <ParticleSysBone
  522. BoneName="None"
  523. FXParticleSystemTemplate="AlliedPowerPlantWaterBuildupFroth"
  524. FollowBone="true" />
  525. <ParticleSysBone
  526. BoneName="None"
  527. FXParticleSystemTemplate="AlliedPowerPlantWaterBuildupMist"
  528. FollowBone="true" />
  529. </AnimationState>
  530. <AnimationState
  531. ParseCondStateType="PARSE_NORMAL"
  532. ConditionsYes="SOLD"
  533. Flags="START_FRAME_LAST" >
  534. <Animation
  535. AnimationName="SBRefinery_Platform_BLD"
  536. AnimationMode="ONCE_BACKWARDS"
  537. AnimationAbsoluteTime="2s"
  538. AnimationBlendTime="0" />
  539. </AnimationState>
  540. <AnimationState
  541. ParseCondStateType="PARSE_NORMAL"
  542. ConditionsYes="OVER_WATER">
  543. <Script>
  544. CurDrawableHideSubObjectPermanently("Bib")
  545. CurDrawableShowSubObjectPermanently("Platform")
  546. CurDrawableShowSubObjectPermanently("Platform_FX")
  547. </Script>
  548. </AnimationState>
  549. </ScriptedModelDraw>
  550. <!-- DRAW PARTICLES -->
  551. <ScriptedModelDraw
  552. id="ModuleTag_Draw_FX">
  553. <ModelConditionState
  554. ParseCondStateType="PARSE_DEFAULT">
  555. <Model
  556. Name="SBRefinery_FX" />
  557. <ParticleSysBone
  558. BoneName="FX_Smoke01"
  559. FXParticleSystemTemplate="SovietFactorySmoke"
  560. FollowBone="true" />
  561. <ParticleSysBone
  562. BoneName="FX_Smoke02"
  563. FXParticleSystemTemplate="SovietFactorySmoke"
  564. FollowBone="true" />
  565. <ParticleSysBone
  566. BoneName="FX_Glow01"
  567. FXParticleSystemTemplate="SovietPowerGlow"
  568. FollowBone="true" />
  569. </ModelConditionState>
  570. <ModelConditionState
  571. ParseCondStateType="PARSE_NORMAL"
  572. ConditionsYes="DYING">
  573. <Model
  574. Name="SBRefinery_FX" />
  575. </ModelConditionState>
  576. <ModelConditionState
  577. ParseCondStateType="PARSE_NORMAL"
  578. ConditionsYes="DAMAGED">
  579. <Model
  580. Name="SBRefinery_FX" />
  581. <ParticleSysBone
  582. BoneName="FX_BONE01"
  583. FXParticleSystemTemplate="GenericDStateSmoke"
  584. FollowBone="true"/>
  585. <ParticleSysBone
  586. BoneName="FX_BONE01"
  587. FXParticleSystemTemplate="GenericDStateFire"
  588. FollowBone="true"/>
  589. </ModelConditionState>
  590. <ModelConditionState
  591. ParseCondStateType="PARSE_NORMAL"
  592. ConditionsYes="REALLYDAMAGED">
  593. <Model
  594. Name="SBRefinery_FX" />
  595. <ParticleSysBone
  596. BoneName="FX_BONE01"
  597. FXParticleSystemTemplate="GenericDStateSmoke"
  598. FollowBone="true"/>
  599. <ParticleSysBone
  600. BoneName="FX_BONE01"
  601. FXParticleSystemTemplate="GenericDStateFire"
  602. FollowBone="true"/>
  603. <ParticleSysBone
  604. BoneName="FX_BONE02"
  605. FXParticleSystemTemplate="GenericDStateSmoke"
  606. FollowBone="true"/>
  607. <ParticleSysBone
  608. BoneName="FX_BONE02"
  609. FXParticleSystemTemplate="GenericDStateFire"
  610. FollowBone="true"/>
  611. <ParticleSysBone
  612. BoneName="FX_BONE03"
  613. FXParticleSystemTemplate="GenericDStateSmoke"
  614. FollowBone="true"/>
  615. <ParticleSysBone
  616. BoneName="FX_BONE03"
  617. FXParticleSystemTemplate="GenericDStateFire"
  618. FollowBone="true"/>
  619. <ParticleSysBone
  620. BoneName="FX_GLOW01"
  621. FXParticleSystemTemplate="GenericDStateSmoke"
  622. FollowBone="true"/>
  623. <ParticleSysBone
  624. BoneName="FX_GLOW01"
  625. FXParticleSystemTemplate="GenericDStateFire"
  626. FollowBone="true"/>
  627. </ModelConditionState>
  628. </ScriptedModelDraw>
  629. </Draws>
  630. <Behaviors>
  631. <Physics
  632. id="ModuleTag_Physics"/>
  633. <BuildingDestructionBehavior
  634. id="ModuleTag_BuildingDestruction">
  635. <DieMuxData
  636. DeathTypes="ALL"
  637. DeathTypesForbidden="SUICIDED" />
  638. <Item
  639. BonePrefix="BONE_CONTACT_POINT_"
  640. FX="SovietRefineryHit"
  641. CreationObject="SovietBarracks_Debris"
  642. FlingVelocity="100.0"/>
  643. </BuildingDestructionBehavior>
  644. <FXListBehavior
  645. xai:joinAction="Replace" xmlns:xai="uri:ea.com:eala:asset:instance" id="ModuleTag_FXList">
  646. <DieMuxData
  647. DeathTypes="ALL" />
  648. <Event
  649. Index="onDeath"
  650. FX="FX_YU_Hotel02_Explode" />
  651. </FXListBehavior>
  652. <CreateObjectDie
  653. id="ModuleTag_CreateObjectDie"
  654. CreationList="SBRefinery_Die_OCL">
  655. <DieMuxData
  656. DeathTypes="ALL"
  657. DeathTypesForbidden="SUICIDED" />
  658. </CreateObjectDie>
  659. <CreateObjectDie
  660. id="ModuleTag_CreateObjectDieOnWater"
  661. CreationList="SBRefineryPlatform_Die_OCL">
  662. <DieMuxData
  663. DeathTypes="ALL"
  664. DeathTypesForbidden="SUICIDED"
  665. RequiredStatus="OVER_WATER" />
  666. </CreateObjectDie>
  667. <DestroyDie
  668. id="ModuleTag_Die">
  669. <DieMuxData
  670. DeathTypes="ALL"
  671. DeathTypesForbidden="SUICIDED" />
  672. </DestroyDie>
  673. <QueueDockBehavior
  674. id="ModuleTag_QueueDockBehavior"
  675. DockStartBoneName="DockStart"
  676. DockActionBoneName="DockAction"
  677. DockEndBoneName="DockEnd"
  678. QueueBonePrefix="Que"
  679. DockingAnimation="DOCKING_ACTIVE"
  680. TurnTableBoneName="BONE_TABLE"/>
  681. <QueueProductionExitUpdate
  682. id="ModuleTag_Exit">
  683. <UnitCreatePoint
  684. x="37.5"
  685. y="0.0"
  686. z="0.0" />
  687. <NaturalRallyPoint
  688. x="75.0" />
  689. </QueueProductionExitUpdate>
  690. <SpawnBehavior
  691. id="ModuleTag_Spawn"
  692. SpawnNumberData="1"
  693. SpawnReplaceDelayData="9999s"
  694. IsOneShotData="true"
  695. FadeInTime="1.0s"
  696. SpawnOnUnpack="true"
  697. CanReclaimOrphans="false"
  698. SetPurchasePrice="true">
  699. <SpawnTemplate>SovietMiner</SpawnTemplate>
  700. </SpawnBehavior>
  701. <StructureUnpackUpdate
  702. id="ModuleTag_StructureUnpackUpdate"
  703. UnpackTime="=$SOVIET_REFINERY_LOCAL_UNPACK_TIME"
  704. UnpackCompleteSound="SOV_OreCollector_VoiceCreateFromRefinery" />
  705. <!-- NOTE - Keep the initialdelay equal to StructureUnPackUpdate:UnpackTime + 0.5s -->
  706. <ProductionUpdate
  707. id="ModuleTag_ProductionUpdate"
  708. GiveNoXP="true"
  709. Type="VEHICLE"
  710. NumDoorAnimations="1"
  711. DoorOpeningTime="0.66s"
  712. DoorWaitOpenTime="3.00s"
  713. DoorCloseTime="0.66s"
  714. NewObjectFadeInTime="0.5s"/>
  715. <xi:include
  716. href="DATA:Includes/GenericBuildingRepair.xml" />
  717. <xi:include
  718. href="DATA:Includes/GenericEngineerContain.xml" />
  719. <xi:include
  720. href="DATA:Includes/GenericSovietBuildingDestruction.xml" />
  721. <xi:include
  722. href="DATA:Includes/GenericSovietBuildingSuicide.xml" />
  723. <xi:include
  724. href="DATA:Includes/GenericRefineryPlacementHint.xml" />
  725. <xi:include
  726. href="DATA:Includes/InfiltratorContainEconomic.xml" />
  727. <xi:include
  728. href="DATA:Includes/GenericRefineryStructurePlacementBehavior.xml" />
  729. <LUAEventList
  730. id="ModuleTag_LUAEventList"
  731. EventListName="BuildingPowerFunctions"
  732. />
  733. </Behaviors>
  734. <AI>
  735. <AIUpdate
  736. id="ModuleTag_AIUpdate"
  737. AutoAcquireEnemiesWhenIdle="NO"
  738. StateMachine="StructureAIStateMachine"/>
  739. </AI>
  740. <Body>
  741. <ActiveBody
  742. id="ModuleTag_Body"
  743. MaxHealth="2500.0" />
  744. </Body>
  745. <ClientBehaviors>
  746. <AnimationSoundClientBehavior id="ModuleTag_AnimationSound">
  747. <Sound Sound="SOV_Refinery_LoadGrab" Animation="SBRefinery_ARM_UNLOAD" Frame="5" />
  748. <Sound Sound="SOV_Refinery_CraneMoveCCW" Animation="SBRefinery_ARM_UNLOAD" Frame="16" />
  749. <Sound Sound="SOV_Refinery_LoadDrop" Animation="SBRefinery_ARM_EMPTY" Frame="25" />
  750. <Sound Sound="SOV_Refinery_CraneMoveCW" Animation="SBRefinery_ARM_EMPTY" Frame="40" />
  751. </AnimationSoundClientBehavior>
  752. <ModelConditionAudioLoopClientBehavior id="ModuleTag_Platform_Turn">
  753. <ModelConditionSound Sound="ALL_Refinery_Platform_Rotate" RequiredFlags="DOCKING_ACTIVE" ExcludedFlags="DYING" />
  754. </ModelConditionAudioLoopClientBehavior>
  755. </ClientBehaviors>
  756. <Geometry
  757. IsSmall="false">
  758. <Shape
  759. Type= "BOX"
  760. MajorRadius = "60.0"
  761. MinorRadius = "45.0"
  762. Height = "5.0"
  763. ContactPointGeneration = "STRUCTURE" >
  764. <Offset
  765. x = "0.0"
  766. y = "0.0"
  767. z = "0.0" />
  768. </Shape>
  769. <Shape
  770. Type= "BOX"
  771. MajorRadius = "4.104"
  772. MinorRadius = "12.6"
  773. Height = "46.8"
  774. ContactPointGeneration = "STRUCTURE" >
  775. <Offset
  776. x = "-46.1426"
  777. y = "20.9296"
  778. z = "0.0" />
  779. </Shape>
  780. <Shape
  781. Type= "BOX"
  782. MajorRadius = "18.7963"
  783. MinorRadius = "34.272"
  784. Height = "24.336"
  785. ContactPointGeneration = "STRUCTURE" >
  786. <Offset
  787. x = "-28.6061"
  788. y = "6.17587"
  789. z = "0.0" />
  790. </Shape>
  791. <Shape
  792. Type= "BOX"
  793. MajorRadius = "15.0"
  794. MinorRadius = "15.0"
  795. Height = "24.336"
  796. ContactPointGeneration = "STRUCTURE" >
  797. <Offset
  798. x = "-4.70857"
  799. y = "29.3816"
  800. z = "0.0" />
  801. </Shape>
  802. </Geometry>
  803. <AudioArrayVoice>
  804. <AudioEntry Sound="SOV_Refinery_Select" AudioType="voiceSelect" />
  805. </AudioArrayVoice>
  806. <AudioArraySound>
  807. <!--
  808. <AudioEntry Sound="HumanFaction_MediumBuilding_LightDamageMS" AudioType="soundOnDamaged" />
  809. <AudioEntry Sound="HumanFaction_MediumBuilding_HeavyDamageMS" AudioType="soundOnReallyDamaged" />
  810. -->
  811. </AudioArraySound>
  812. <VisionInfo
  813. VisionRange="150"
  814. ShroudClearingRange="500" />
  815. <ProjectedBuildabilityInfo
  816. Radius="180"
  817. RadiusY="195"
  818. BuildPlacementTypes="MAIN_STRUCTURE OTHER_STRUCTURE" />
  819. </GameObject>
  820. </AssetDeclaration>