<?xml version="1.0" encoding="utf-8"?>
<AssetDeclaration xmlns="uri:ea.com:eala:asset" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:xai="uri:ea.com:eala:asset:instance">
	<Tags></Tags>
	<Includes>
		<!-- Base Object -->
		<Include
			type="instance"
			source="DATA:GDI/Units/GDIMissileSoldier.xml" />
		<Include
			type="all"
			source="ART:GUMissleman_UGTS_SKN.w3x" />
	</Includes>
	<GameObject
		id="ZOCOMMissileSoldier"
		Side="ZOCOM"
		EditorName="ZOCOMMissileSoldier"
		EditorSorting="UNIT"
		inheritFrom="GDIMissileSoldier"
		WorldMapArmoryUpgradesAllowed="Upgrade_ZOCOMFieldSuits"
		Description="DESC:ZOCOMMissileSquad">
		
		
	<DisplayUpgrade id="ModuleTag_DisplayCompositeArmorUpgrade" xai:joinAction="Replace">Upgrade_ZOCOMFieldSuits</DisplayUpgrade>
   <ArmorSet xmlns="uri:ea.com:eala:asset"
      xai:joinAction="Remove"
      id="GDIUpgradeArmor"  />

	<ArmorSet
		xai:joinAction="Replace"
		id="UpgradeTag_UnitArmor"
		Conditions="PLAYER_UPGRADE"
		Armor="ZOCOMMissileSoldierFieldSuits"
		DamageFX="NormalDamageFX" />
	<Draws>
	<ScriptedModelDraw xai:joinAction="Replace"
					id="ModuleTag_Draw"
					OkToChangeModelColor="true">
					<ModelConditionState
						ParseCondStateType="PARSE_DEFAULT">
						<Model
							Name="GUMissleman_SKN" />
						<WeaponFireFXBone
							WeaponSlotID="1"
							WeaponSlotType="PRIMARY_WEAPON"
							BoneName="B_WEAPONA_FX" />
						<WeaponLaunchBone
							WeaponSlotID="1"
							WeaponSlotType="PRIMARY_WEAPON"
							BoneName="B_WEAPONA_FX" />
					</ModelConditionState>
	
					<xi:include
						href="DATA:Includes/GDIUnitFormationPreviewStates.xml"
						xpointer="xmlns(n=uri:ea.com:eala:asset) xpointer(/n:FormationPreviewStates/child::*)" />
					
					<ModelConditionState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="INSIDE_GARRISON">
						<Model
							Name="GUGar_Miss" />
						<WeaponFireFXBone
							WeaponSlotType="PRIMARY_WEAPON"
							BoneName="B_WEAPONA_FX" />
						<WeaponLaunchBone
							WeaponSlotType="PRIMARY_WEAPON"
							BoneName="B_WEAPONA_FX" />
					</ModelConditionState>
					<ModelConditionState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="UPGRADED_ARMOR">
						<Model
							Name="GUMissleman_UGTS_SKN" />

					</ModelConditionState>
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="INSIDE_GARRISON">
						<!-- no anim -->
					</AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="STUNNED_FLAILING"
						StateName="STATE_stunned_flailing">
						<Animation
							AnimationName="GUMisslmn_FLYA"
							AnimationMode="LOOP" />
					</AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						StateName="STATE_stunned_landing">
						<Animation
							AnimationName="GUMisslmn_LNDA"
							AnimationMode="ONCE" />
					</AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="FRONTCRUSHED">
						<Animation
							AnimationName="GUMisslmn_CDTA"
							AnimationMode="ONCE" />
					</AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="BACKCRUSHED">
						<Animation
							AnimationName="GUMisslmn_CDTB"
							AnimationMode="ONCE" />
					</AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="SUPPRESSED DYING"
						StateName="STATE_Suppressed">
						<Animation
							AnimationName="GUMisslMn_SDIA"
							AnimationMode="ONCE" />
					</AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="COVER DYING"
						StateName="STATE_Cover">
						<Animation
							AnimationName="GUMisslMn_KDIA"
							AnimationMode="ONCE" />
						<Animation
							AnimationName="GUMisslMn_KDIB"
							AnimationMode="ONCE" />
						<Animation
							AnimationName="GUMisslMn_KDIC"
							AnimationMode="ONCE" />
					</AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="DYING">
						<Animation
							AnimNickName="DTA"
							AnimationName="GUMisslMn_DIEA"
							AnimationMode="ONCE" />
						<Animation
							AnimNickName="DTB"
							AnimationName="GUMisslMn_DIEB"
							AnimationMode="ONCE" />
						<Animation
							AnimNickName="DTB"
							AnimationName="GUMisslMn_DIEC"
							AnimationMode="ONCE" />
					</AnimationState>
					<!-- SUPPRESSION ANIMATIONS -->
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="SUPPRESSED MOVING"
						StateName="STATE_Suppressed"
						Flags="RANDOMSTART">
						<Animation
							AnimationName="GUMisslMn_SMVA"
							AnimationMode="LOOP" />
					</AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="SUPPRESSED USING_WEAPON_A"
						StateName="STATE_Suppressed">
						<Animation
							AnimationName="GUMisslMn_SATA"
							AnimationMode="LOOP" />
					</AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="SUPPRESSED"
						Flags="RESTART_ANIM_WHEN_COMPLETE"
						StateName="STATE_Suppressed">
						<Animation
							AnimationName="GUMisslMn_SIDA"
							AnimationMode="ONCE" />
						<Animation
							AnimationName="GUMisslMn_SIFA"
							AnimationMode="ONCE" />
						<Script>
							Prev = CurDrawablePrevAnimationState()
							if Prev ~= "STATE_Suppressed" and Prev ~= "TRANS_toSuppressed" then CurDrawableSetTransitionAnimState("TRANS_toSuppressed")	end;
						</Script>
					</AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_TRANSITION"
						StateName="TRANS_toSuppressed">
						<Animation
							AnimationName="GUMisslMn_SDVA"
							AnimationMode="ONCE"
							AnimationSpeedFactorMin="0.8"
							AnimationSpeedFactorMax="1.2" />
						<Animation
							AnimationName="GUMisslMn_SDVB"
							AnimationMode="ONCE"
							AnimationSpeedFactorMin="0.8"
							AnimationSpeedFactorMax="1.2" />
					</AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_TRANSITION"
						StateName="TRANS_fromSuppressed"
						Flags="START_FRAME_LAST">
						<Animation
							AnimationName="GUMisslMn_SDVA"
							AnimationMode="ONCE_BACKWARDS"
							AnimationSpeedFactorMin="0.8"
							AnimationSpeedFactorMax="1.2" />
						<Animation
							AnimationName="GUMisslMn_SDVB"
							AnimationMode="ONCE_BACKWARDS"
							AnimationSpeedFactorMin="0.8"
							AnimationSpeedFactorMax="1.2" />
					</AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="COVER MOVING">
						<Animation
							AnimationName="GUMisslMn_RUNC"
							AnimationMode="LOOP" />
					</AnimationState>
	                <AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="COVER USING_WEAPON_A AIM_HIGH"
						StateName="STATE_Cover">
	                    <Animation
	                        AnimationName="GUMisslMn_KAKB"
	                        AnimationMode="LOOP" />
	                </AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="COVER FIRING_OR_PREATTACK_A"
						StateName="STATE_Cover"
						FrameForPristineBonePositions="1">
						<Animation
							AnimationName="GUMisslMn_KAKA"
							AnimationMode="ONCE"
							UseWeaponTiming="true" />
					</AnimationState>
	        <AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="COVER ATTACKING">
	          <Animation
							AnimationName="GUMisslMn_KAKA"
							AnimationMode="MANUAL" />
	        </AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="COVER SELECTED"
						Flags="RESTART_ANIM_WHEN_COMPLETE"
						StateName="STATE_CoverAttention">
						<Animation
							AnimationName="GUMisslMn_KAIA"
							AnimationMode="ONCE"
							AnimationPriority="80"
							AnimationBlendTime="10" />
						<Animation
							AnimationName="GUMisslMn_KAIB"
							AnimationMode="ONCE"
							AnimationPriority="15"
							AnimationBlendTime="5" />
						<Animation
							AnimationName="GUMisslMn_KAFA"
							AnimationMode="ONCE"
							AnimationPriority="30"
							AnimationBlendTime="5" />
						<Animation
							AnimationName="GUMisslMn_KAFB"
							AnimationMode="ONCE"
							AnimationPriority="30"
							AnimationBlendTime="5" />
						<Animation
							AnimationName="GUMisslMn_KAFC"
							AnimationMode="ONCE"
						AnimationPriority="30"
						AnimationBlendTime="5" />
	                    <Script>
	                        Prev = CurDrawablePrevAnimationState()
	                        if Prev == "STATE_Cover" then
	                        CurDrawableSetTransitionAnimState("TRANS_CoverToCoverAttention")
	                        end
	                    </Script>
	                </AnimationState>
	                <AnimationState
							ParseCondStateType="PARSE_NORMAL"
							ConditionsYes="COVER"
							AllowRepeatInRandomPick="true"
							Flags="RESTART_ANIM_WHEN_COMPLETE"
							StateName="STATE_Cover">
	                    <Animation
							AnimationName="GUMisslMn_KBIA"
							AnimationMode="ONCE"
							AnimationPriority="15" 
						    AnimationBlendTime="10"/>
	                    <Animation
							AnimationName="GUMisslMn_KBIB"
							AnimationMode="ONCE"
							AnimationPriority="15" 
						    AnimationBlendTime="10"/>
	                    <Animation
							AnimationName="GUMisslMn_KBFA"
							AnimationMode="ONCE"
							AnimationPriority="2" 
						    AnimationBlendTime="10"/>
	                    <Animation
							AnimationName="GUMisslMn_KBFB"
							AnimationMode="ONCE"
							AnimationPriority="1" 
						    AnimationBlendTime="10"/>
	                    <Animation
							AnimationName="GUMisslMn_KBFC"
							AnimationMode="ONCE"
							AnimationPriority="1" />
	                    <Script>
	                        Prev = CurDrawablePrevAnimationState()
	                        if Prev == "STATE_CoverAttention" then
	                        CurDrawableSetTransitionAnimState("TRANS_CoverAttentionToCover")
	                        end
	                    </Script>
	                </AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="MOVING USING_WEAPON_A"
						StateName="STATE_Run"
						Flags="RANDOMSTART">
						<Animation
							AnimationName="GUMisslMn_RUNC"
							AnimationMode="LOOP"
							Distance="75" />
					</AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="MOVING"
						StateName="STATE_Run"
						Flags="RANDOMSTART">
						<Animation
							AnimationName="GUMisslMn_RUNA"
							AnimationMode="LOOP"
							AnimationBlendTime="10"
							Distance="75" />
						<Animation
							AnimationName="GUMisslMn_RUNB"
							AnimationMode="LOOP"
							AnimationBlendTime="10"
							Distance="75" />
						<Animation
							AnimationName="GUMisslMn_RUNC"
							AnimationMode="LOOP"
							AnimationBlendTime="10"
							Distance="75" />
					</AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="USING_WEAPON_A AIM_HIGH FIRING_OR_PREATTACK_A"
						FrameForPristineBonePositions="8">
						<Animation
							AnimationName="GUMisslMn_ATKB"
							AnimationMode="ONCE"
	            UseWeaponTiming="true"/>
					</AnimationState>
	        <AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="AIM_HIGH ATTACKING">
	          <Animation
							AnimationName="GUMisslMn_ATKB"
							AnimationMode="MANUAL" />
	        </AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="USING_WEAPON_A FIRING_OR_PREATTACK_A"
						FrameForPristineBonePositions="7">
						<Animation
							AnimationName="GUMisslMn_ATKA"
							AnimationMode="ONCE"
	            UseWeaponTiming="true" />
					</AnimationState>
	        <AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="ATTACKING">
	          <Animation
							AnimationName="GUMisslMn_ATKA"
							AnimationMode="MANUAL" />
	        </AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="EMOTION_CELEBRATING"
				          Flags="RESTART_ANIM_WHEN_COMPLETE">
						<Animation
							AnimationName="GUMisslMn_CHRA"
							AnimationMode="ONCE"
							AnimationBlendTime="15"
							AnimationSpeedFactorMin="0.8"
							AnimationSpeedFactorMax="1.2" />
						<Animation
							AnimationName="GUMisslMn_CHRB"
							AnimationMode="ONCE"
	            AnimationBlendTime="15"
							AnimationSpeedFactorMin="0.8"
							AnimationSpeedFactorMax="1.2" />
						<Animation
							AnimationName="GUMisslMn_CHRC"
							AnimationMode="ONCE"
	            AnimationBlendTime="15"
							AnimationSpeedFactorMin="0.8"
							AnimationSpeedFactorMax="1.2" />
					</AnimationState>
					<!-- SELECTED -->
					<AnimationState
						ParseCondStateType="PARSE_NORMAL"
						ConditionsYes="SELECTED"
	          Flags="RESTART_ANIM_WHEN_COMPLETE"
						StateName="STATE_Selected">
						<Animation
							AnimNickName="ATNB"
							AnimationName="GUMisslMn_AIDA"
							AnimationMode="ONCE"
	            AnimationPriority="75"
							AnimationBlendTime="5"
							AnimationMustCompleteBlend="true" />
						<Animation
							AnimNickName="ATNB"
							AnimationName="GUMisslMn_AIDB"
							AnimationMode="ONCE"
	            AnimationPriority="10"
							AnimationBlendTime="5"
							AnimationMustCompleteBlend="true" />
	          <Animation
							AnimNickName="ATNB"
							AnimationName="GUMisslMn_AIFA"
							AnimationMode="ONCE"
	            AnimationPriority="30"
							AnimationBlendTime="5"
							AnimationMustCompleteBlend="true" />
						<Animation
							AnimNickName="ATNB"
							AnimationName="GUMisslMn_AIFB"
	            AnimationMode="ONCE"
	            AnimationPriority="30"
							AnimationBlendTime="5"
							AnimationMustCompleteBlend="true" />
						<Animation
							AnimNickName="ATNB"
							AnimationName="GUMisslMn_AIFC"
							AnimationMode="ONCE"
	            AnimationPriority="30"
							AnimationBlendTime="5"
							AnimationMustCompleteBlend="true" />
						<Script>
							Prev = CurDrawablePrevAnimationState();
								if Prev == "STATE_bored" then CurDrawableSetTransitionAnimState("TRANS_boredToAttention") end;
						</Script>
					</AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_DEFAULT"
						StateName="STATE_bored"
						AllowRepeatInRandomPick="true"
						Flags="RESTART_ANIM_WHEN_COMPLETE">
						<Animation
							AnimationName="GUMisslMn_BIDB"
							AnimationMode="ONCE"
	            AnimationBlendTime="15"
							AnimationPriority="80"
							AnimationSpeedFactorMin="0.8"
							AnimationSpeedFactorMax="1.2" />
	          <Animation
	            AnimationName="GUMisslMn_BIDA"
	            AnimationMode="ONCE"
	            AnimationBlendTime="15"
	            AnimationPriority="10" />
	          <Animation
	            AnimationName="GUMisslMn_BIDC"
	            AnimationMode="ONCE"
	            AnimationBlendTime="15"
	            AnimationPriority="35" />
						<Animation
							AnimationName="GUMisslMn_BIFA"
							AnimationMode="ONCE"
	            AnimationBlendTime="15"
							AnimationPriority="35" />
	          <Animation
							AnimationName="GUMisslMn_BIFB"
							AnimationMode="ONCE"
	            AnimationBlendTime="15"
							AnimationPriority="35" />
						<Animation
							AnimationName="GUMisslMn_BIFC"
							AnimationMode="ONCE"
	            AnimationBlendTime="15"
							AnimationPriority="35" />
						<Script>
							Prev = CurDrawablePrevAnimationState();
							if Prev == "STATE_Suppressed" then CurDrawableSetTransitionAnimState("TRANS_fromSuppressed") end;
							if Prev == "STATE_Selected" or Prev == "ATNB" or Prev == "STATE_Run" then CurDrawableSetTransitionAnimState("TRANS_SelectedToIdle") end;
							if Prev == "STATE_stunned_flailing" then
							CurDrawableSetTransitionAnimState("STATE_stunned_landing")
							end
						</Script>
					</AnimationState>
					<!-- TRANSITIONS -->
					<AnimationState
						ParseCondStateType="PARSE_TRANSITION"
						StateName="TRANS_boredToAttention">
						<Animation
							AnimationName="GUMisslMn_BATA"
							AnimationMode="ONCE" />
						<Animation
							AnimationName="GUMisslMn_BATB"
							AnimationMode="ONCE" />
					</AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_TRANSITION"
						StateName="TRANS_attentionToBored">
						<Animation
							AnimationName="GUMisslMn_ABTA"
							AnimationMode="ONCE" />
						<Animation
							AnimationName="GUMisslMn_ABTB"
							AnimationMode="ONCE" />
					</AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_TRANSITION"
						StateName="TRANS_IdleToSelected">
						<Animation
							AnimationName="GUMisslMn_BATA"
							AnimationMode="ONCE" />
						<Animation
							AnimationName="GUMisslMn_BATB"
							AnimationMode="ONCE" />
					</AnimationState>
					<AnimationState
						ParseCondStateType="PARSE_TRANSITION"
						StateName="TRANS_SelectedToIdle">
						<Animation
							AnimationName="GUMisslMn_ABTA"
							AnimationMode="ONCE" />
						<Animation
							AnimationName="GUMisslMn_ABTB"
							AnimationMode="ONCE" />
					</AnimationState>
	                <AnimationState
								ParseCondStateType="PARSE_TRANSITION"
								StateName="TRANS_CoverAttentionToCover">
	                    <Animation
									  AnimationName="GUMisslMn_KATA"
									  AnimationMode="ONCE" />
	                </AnimationState>
	                <AnimationState
								ParseCondStateType="PARSE_TRANSITION"
								StateName="TRANS_CoverToCoverAttention">
	                    <Animation
									  AnimationName="GUMisslMn_KBTA"
									  AnimationMode="ONCE" />
	                </AnimationState>
				</ScriptedModelDraw>
		</Draws>
	<Behaviors>
	
	
	<ArmorUpgrade xmlns="uri:ea.com:eala:asset"
		xai:joinAction="Remove"
		id="ModuleTag_CompositeArmorUpgrade" />
		
	<ModelConditionUpgrade xmlns="uri:ea.com:eala:asset"
		xai:joinAction="Remove"
		id="ModuleTag_ArmorCompositeModelCondition" />
	
		<xi:include
			href="../../Includes/ZOCOMFieldSuitsUpgradeModelCondition.xml" />
		<xi:include
			href="../../Includes/ZOCOMFieldSuitsUpgrade.xml" />

		<StatusBitsUpgrade
			StatusToSet="SHIELDBODY_ENABLED">
			<TriggeredBy>Upgrade_ZOCOMFieldSuits</TriggeredBy>
		</StatusBitsUpgrade>
		
	</Behaviors>
	</GameObject>
</AssetDeclaration>
