<?xml version="1.0" encoding="utf-8"?>
<ItemRenderer>
  <Data>
    <Sprite name="s_foot1" fileName="game/particles_large16.rttex" textureSize="64" frame="0,3"/>
    <Sprite name="s_foot2" fileName="game/particles_large16.rttex" textureSize="64" frame="0,4"/>
    <Sprite name="s_feather" fileName="game/particles12.rttex" textureSize="32"/>
    <Sprite name="s_lines" fileName="game/particles12.rttex" textureSize="32" frame="24,4"/>
    <StateMachines>
	    <StateMachine name="Action">
		    <States>
			    <State name="Idle" />
			    <State name="Walk" />
			    <State name="Jump" />
			    <State name="Fall" />
			    <State name="Attack" />
		    </States>
		    <Transitions>
			    <Transition to="Idle" from="Fall|Walk|Attack">
				    <Condition type="and">
					    <IsVariableFloat name="speed.length" operator="Less" abs="true">0.1</IsVariableFloat>
					    <IsVariableBool name="onGround">true</IsVariableBool>
					    <IsAction operatorType="NotEqual">PUNCH</IsAction>
				    </Condition>
			    </Transition>
			    <Transition to="Walk" from="Fall|Idle|Jump|Attack">
				    <Condition type="and">
					    <IsVariableBool name="onGround">true</IsVariableBool>
					    <IsVariableFloat name="speed.x" operator="Greater" abs="true">0.1</IsVariableFloat>
					    <IsAction operatorType="NotEqual">PUNCH</IsAction>
				    </Condition>
			    </Transition>
			    <Transition to="Jump" from="Idle|Fall|Walk|Attack">
				    <Condition type="and">
					    <IsVariableFloat name="speed.y" operator="Less">-0.1</IsVariableFloat>
					    <IsVariableBool name="onGround">false</IsVariableBool>
					    <IsAction operatorType="NotEqual">PUNCH</IsAction>
				    </Condition>
			    </Transition>
			    <Transition to="Fall" from="Jump|Idle|Walk|Attack">
				    <Condition type="and">
					    <IsVariableFloat name="speed.y" operator="Greater">0.1</IsVariableFloat>
					    <IsVariableBool name="onGround">false</IsVariableBool>
					    <IsAction operatorType="NotEqual">PUNCH</IsAction>
				    </Condition>
			    </Transition>			    
				<Transition to="Attack" from="Jump|Idle|Walk|Fall">
				    <Condition>
					    <IsAction>PUNCH</IsAction>
				    </Condition>
			    </Transition>
		    </Transitions>
	    </StateMachine>
	    <StateMachine name="Facing">
		    <States>
			    <State name="Left" />
			    <State name="Right" />
		    </States>
		    <Transitions>
			    <Transition to="Left" from="Right">
				    <Condition>
					    <IsFacingLeft>true</IsFacingLeft>
				    </Condition>
			    </Transition>
			    <Transition to="Right" from="Left">
				    <Condition type="or">
					    <IsVariableBool name="isMannequin">true</IsVariableBool>
					    <IsFacingLeft>false</IsFacingLeft>
				    </Condition>
			    </Transition>
		    </Transitions>
	    </StateMachine>
    </StateMachines>
    <Animations>
	    <SpriteAnimation name="a_feathers" sprite="s_feather">
		    <Frame>22,4</Frame>
		    <Frame>23,4</Frame>
	    </SpriteAnimation>	   
		<SpriteAnimation name="a_lines" sprite="s_lines">
		    <Frame>24,4</Frame>
		    <Frame>25,4</Frame>
	    </SpriteAnimation>
	    <SpriteAnimation name="a_idle_foot_1" sprite="s_foot1" isLoop="true" animTime="800" playOnState="Action.Idle">
		    <Frame>0,3</Frame>
		    <Frame>1,3</Frame>
		    <Frame>2,3</Frame>
		    <Frame>3,3</Frame>
	    </SpriteAnimation>
	    <SpriteAnimation name="a_idle_foot_2" sprite="s_foot2" isLoop="true" animTime="800" playOnState="Action.Idle">
		    <Frame>0,4</Frame>
		    <Frame>1,4</Frame>
		    <Frame>2,4</Frame>
		    <Frame>3,4</Frame>
	    </SpriteAnimation>

	    <SpriteAnimation name="a_move_foot_1" sprite="s_foot1" isLoop="true" animTime="800" playOnState="Action.Walk">
		    <Frame>0,5</Frame>
		    <Frame>1,5</Frame>
		    <Frame>2,5</Frame>
		    <Frame>3,5</Frame>
		    <Frame>4,5</Frame>
		    <Frame>5,5</Frame>
		    <Frame>6,5</Frame>
		    <Frame>7,5</Frame>
	    </SpriteAnimation>
	    <SpriteAnimation name="a_move_foot_2" sprite="s_foot2" isLoop="true" animTime="800" playOnState="Action.Walk">
		    <Frame>0,6</Frame>
		    <Frame>1,6</Frame>
		    <Frame>2,6</Frame>
		    <Frame>3,6</Frame>
		    <Frame>4,6</Frame>
		    <Frame>5,6</Frame>
		    <Frame>6,6</Frame>
		    <Frame>7,6</Frame>
	    </SpriteAnimation>

		<SpriteAnimation name="a_jump_foot_1" sprite="s_foot1" isLoop="false" animTime="200" playOnState="Action.Jump">
			<Frame>4,3</Frame>
			<Frame>5,3</Frame>
		</SpriteAnimation>
	    <SpriteAnimation name="a_jump_foot_2" sprite="s_foot2" isLoop="false" animTime="200" playOnState="Action.Jump">
		    <Frame>4,4</Frame>
		    <Frame>5,4</Frame>
	    </SpriteAnimation>		
		
		<SpriteAnimation name="a_fall_foot_1" sprite="s_foot1" isLoop="true" animTime="200" playOnState="Action.Fall">
			<Frame>6,3</Frame>
			<Frame>7,3</Frame>
		</SpriteAnimation>
	    <SpriteAnimation name="a_fall_foot_2" sprite="s_foot2" isLoop="true" animTime="200" playOnState="Action.Fall">
		    <Frame>6,4</Frame>
		    <Frame>7,4</Frame>
	    </SpriteAnimation>		
		
		<SpriteAnimation name="a_attack_foot_1" sprite="s_foot1" isLoop="true" animTime="400" playOnState="Action.Attack">
			<Frame>8,3</Frame>
			<Frame>9,3</Frame>
			<Frame>10,3</Frame>
			<Frame>11,3</Frame>
		</SpriteAnimation>
	    <SpriteAnimation name="a_attack_foot_2" sprite="s_foot2" isLoop="true" animTime="400" playOnState="Action.Attack">
		    <Frame>8,4</Frame>
		    <Frame>9,4</Frame>
		    <Frame>10,4</Frame>
		    <Frame>11,4</Frame>
	    </SpriteAnimation>
    </Animations>
    <ParticleSystems>
	    <ParticleSystem name="ps_lines">
		    <Emitter>
			    <Set name="offset">22, -10</Set>
			    <Set name="offsetFacing">true</Set>
			    <Set name="infParticles">true</Set>
			    <Set name="infLifeTime">true</Set>
			    <Set name="particlesPerEmission">1</Set>
			    <Set name="randomizeInterval">true</Set>
			    <Set name="intervalMin">0.2</Set>
			    <Set name="intervalMax">0.25</Set>
		    </Emitter>
		    <Particle randomSpriteFrame="true" autoLifeTimeToTarget="true">
			    <Random name="offset" min="-6, 6" max="6, 16" />
			    <Set name="sprite">s_lines</Set>
			    <Set name="blendingMode">PREMULTIPLIED_ALPHA</Set>
				<Set name="lifeTime">0.4</Set>
			    <Set name="initialScale">0.75,0.75</Set>
			    <Curve name="initialAlpha">
				    <KeyFrame>0, 1</KeyFrame>
				    <KeyFrame>0.5, 1</KeyFrame>
				    <KeyFrame>1, 0</KeyFrame>
			    </Curve>
			    <VectorTo name="initialVelocity" source="targetPos" offset="targetPosOffset" duration="lifeTime" x="1.5" angle="0" />    
				<Set name="rotateWithVelocity">true</Set>
			    <Set name="flipX" source="featherFlipX" />
		    </Particle>
	    </ParticleSystem>
	    <ParticleSystem name="ps_feathers">
		    <Emitter>
			    <Set name="offset">22, -10</Set>
			    <Set name="offsetFacing">true</Set>
			    <Set name="infParticles">true</Set>
			    <Set name="infLifeTime">true</Set>
			    <Set name="particlesPerEmission">1</Set>
			    <Set name="randomizeInterval">true</Set>
			    <Set name="intervalMin">0.1</Set>
			    <Set name="intervalMax">0.125</Set>
		    </Emitter>
		    <Particle randomSpriteFrame="true" autoLifeTimeToTarget="true">
			    <Set name="sprite">s_feather</Set>
			    <Set name="blendingMode">PREMULTIPLIED_ALPHA</Set>
			    <Random name="offset" min="-6, 6" max="6, 16" />
			    <Curve name="initialAlpha">
				    <KeyFrame>0, 1</KeyFrame>
				    <KeyFrame>0.5, 1</KeyFrame>
				    <KeyFrame>1, 0</KeyFrame>
			    </Curve>
			    <Random name="initialScale" min="0.24" max="0.48"/>
			    <Set name="isBackgroundParticle">false</Set>
			    <Set name="lifeTime">0.4</Set>
			    <VectorTo name="initialVelocity" source="targetPos" offset="targetPosOffset" duration="lifeTime" x="1.5" angle="0" />
			    <Random name="initialAngle" min="0" max="360" />
			    <Random name="initialRotationRate" min="70" max="90" />
			    <Set name="flipX" source="featherFlipX" />
		    </Particle>
	    </ParticleSystem>
	    <ParticleSystem name="ps_destroyFeathers">
		    <Emitter>
			    <Set name="lifeTime">2</Set>
			    <Set name="particlesPerEmission">8</Set>
			    <Set name="particlesToEmit">1</Set>
		    </Emitter>
		    <Particle  randomSpriteFrame="true">
			    <Random name="offset" min="0,0.1" max="16,16.1"/>
			    <Set name="sprite">s_feather</Set>
			    <Set name="blendingMode">PREMULTIPLIED_ALPHA</Set>
			    <Set name="lifeTime">1</Set>
			    <Set name="useGravity">true</Set>
			    <Set name="gravityVector">0, 100</Set>
			    <Random name="initialScale" min="0.2" max="0.4"/>
			    <Random name="initialAngle" min="0" max="360" />
			    <Random name="initialRotationRate" min="70" max="90" />
			    <RandomRadial name="initialVelocity" angleRange="30,330" radiusRange="80,200" />
			    <Curve name="initialAlpha">
				    <KeyFrame>0, 1</KeyFrame>
				    <KeyFrame>0.5, 1</KeyFrame>
				    <KeyFrame>1, 0</KeyFrame>
			    </Curve>
		    </Particle>
	    </ParticleSystem>	   
	</ParticleSystems>
	<RenderOptions>
      <Default>
		  <Set name="ClothingOffsetFromShoes">-14.5</Set>
		  <Set name="IsToRenderPants">true</Set>
		  <Set name="IncludeAllActions">true</Set>
		  <Set name="UserNameOffset">10</Set>
	      <Set name="ShoesShouldIgnoreRaptorLegsOffset">false</Set>
	      <Set name="IsVehicle">true</Set>
		  <Set name="IsHorse">true</Set>
		  <Set name="IsCar">false</Set>
		  <Set name="ShoesHidesBodyLegs">false</Set>
		  <Set name="RenderShoesWithMermaidTail">true</Set>
      </Default>
		<Override overrideOnState="Action.Walk">
			<Set name="IsCar">true</Set>
			<Set name="ClothingOffsetFromShoes">-13.5</Set>
		</Override>
    </RenderOptions>

	  <VariableMap>
		  <Set name="featherFlipX">false</Set>
	  </VariableMap>
  </Data>

	<RenderRules>
		<RenderShoes>
			<StopIf type="or">
				<IsAction>BUILD</IsAction>
				<IsSitting>true</IsSitting>
				<IsWearing slot="SHIRT">ITEM_ID_TACTICAL_STEALTH_DEVICE</IsWearing>
			</StopIf>
			<AvatarTransform class="ArmAngle">
				<Set name="armName">arm2Angle</Set>
				<Set name="armAngle">-45</Set>
			</AvatarTransform>
			<AvatarTransform class="ArmAngle">
				<Set name="armName">arm1Angle</Set>
				<Set name="armAngle">-45</Set>
			</AvatarTransform>
		</RenderShoes>
		<Update>
			<AvatarTransform class="Face" onState="Action.Attack">
				<Set name="face">MAD</Set>
			</AvatarTransform>
			<StopIf>
				<IsSitting>false</IsSitting>
			</StopIf>
			<ParticleSystemOff name="ps_feathers" />
			<ParticleSystemOff name="ps_lines" />
		</Update>
		<OnDestroyedTile>
			<ParticleSystemUpdate name="ps_destroyFeathers" />
		</OnDestroyedTile>
		<RenderInFront>
			<StopIf>
				<IsZombified>true</IsZombified>
				<IsTrnsformed>true</IsTrnsformed>
				<IsSitting>true</IsSitting>
				<IsSleepingOnaBed>true</IsSleepingOnaBed>
				<IsWearing slot="SHIRT">ITEM_ID_TACTICAL_STEALTH_DEVICE</IsWearing>
			</StopIf>
			<SpriteRender name="s_foot2" offset="7,-17"/>
		</RenderInFront>
		<OnPunchStop>
			<ParticleSystemOff name="ps_feathers" />
			<ParticleSystemOff name="ps_lines" />
		</OnPunchStop>
		<OnPunchStart>
			<StopIf>
				<IsSitting>true</IsSitting>
			</StopIf>
			<ArithmethicOperation LeftHandVariableName="featherFlipX" RightHandVariableName="false" OperationType="Set" onState="Facing.Right" />
			<ArithmethicOperation LeftHandVariableName="featherFlipX" RightHandVariableName="true" OperationType="Set" onState="Facing.Left" />
			<ParticleSystemUpdate name="ps_feathers"/>
			<ParticleSystemUpdate name="ps_lines"/>
		</OnPunchStart>
		<RenderBehind value="playerCenter">
			<StopIf>
				<IsZombified>true</IsZombified>
				<IsTrnsformed>true</IsTrnsformed>
				<IsSitting>true</IsSitting>
				<IsSleepingOnaBed>true</IsSleepingOnaBed>
				<IsWearing slot="SHIRT">ITEM_ID_TACTICAL_STEALTH_DEVICE</IsWearing>
			</StopIf>
			<SpriteRender name="s_foot1" offset="10,-18.5"/>
		</RenderBehind>
	</RenderRules>
</ItemRenderer>