<?xml version="1.0" encoding="utf-8"?>
<ItemRenderer>
  <Data>
    <StateMachines>
      <StateMachine name="Motion">
        <States start="OnGroundIdle">
          <State name="OnGroundIdle"/>
          <State name="OnGroundMove"/>
          <State name="OnAir"/>
          <State name="OnWater"/>
        </States>
        <Transitions>
                    <Transition from="OnGroundMove|OnAir|OnWater" to="OnGroundIdle" >
            <Condition type="and">
	            <IsVariableFloat name="speed.length" operator="Less" abs="true">0.1</IsVariableFloat>
	            <IsVariableBool name="onGround">true</IsVariableBool>
	            <IsVariableBool name="underWater">false</IsVariableBool>
            </Condition>
          </Transition>              
		    <Transition from="OnGroundIdle|OnAir|OnWater" to="OnGroundMove" >
            <Condition type="and">
	            <IsVariableFloat name="speed.length" operator="GreaterOrEqual" abs="true">0.1</IsVariableFloat>
	            <IsVariableBool name="onGround">true</IsVariableBool>
	            <IsVariableBool name="underWater">false</IsVariableBool>
            </Condition>
          </Transition>          
		   <Transition from="OnGroundIdle|OnWater|OnGroundMove" to="OnAir" >
            <Condition type="and">
	            <IsVariableBool name="onGround">false</IsVariableBool>
	            <IsVariableBool name="underWater">false</IsVariableBool>
            </Condition>
          </Transition>		    
			<Transition from="OnGroundIdle|OnGroundMove|OnAir" to="OnWater" >
            <Condition type="or">
	            <IsVariableBool name="underWater">true</IsVariableBool>
            </Condition>
          </Transition>
        </Transitions>
      </StateMachine>
	   <StateMachine name="MovementDir">
		    <States start="None">
			    <State name="None"/>
			    <State name="Horizontal"/>
		    </States>
		    <Transitions>
			    <Transition from="Horizontal" to="None" >
				    <Condition type="or">
					    <IsVariableFloat name="speed.x" operator="Less" abs="true">0.1</IsVariableFloat>
					    <IsVariableBool name="onGround">true</IsVariableBool>
					    <IsVariableBool name="underWater">true</IsVariableBool>
				    </Condition>
			    </Transition>                  
			    <Transition from="None" to="Horizontal" >
				    <Condition type="and">
					    <IsVariableFloat name="speed.x" operator="GreaterOrEqual" abs="true">0.1</IsVariableFloat>
					    <IsVariableBool name="onGround">false</IsVariableBool>
					    <IsVariableBool name="underWater">false</IsVariableBool>
				    </Condition>
			    </Transition>		    
		    </Transitions>
	    </StateMachine>
    </StateMachines>

    <Sprite name="s_cartFront" fileName="game/particles_large15.rttex" textureSize="64" frame="0,2"/>
    <Sprite name="s_cartBack" fileName="game/particles_large15.rttex" textureSize="64" frame="0,3"/>
    <Sprite name="trailOnAir" fileName="game/particles12.rttex" textureSize="32" frame="8,0"/>
    <Sprite name="trailinWater" fileName="game/particles12.rttex" textureSize="32" frame="9,0"/>
    
    <Animations>
      <SpriteAnimation name="a_cartFrontIdle" playOnState="Motion.OnGroundIdle" sprite="s_cartFront" isLoop="true" animTime="100">
        <Frame>0,2</Frame>
      </SpriteAnimation>      
		<SpriteAnimation name="a_cartNackIdle" playOnState="Motion.OnGroundIdle" sprite="s_cartBack" isLoop="true" animTime="100">
        <Frame>0,3</Frame>
      </SpriteAnimation>
      <SpriteAnimation name="a_cartFrontMove" playOnState="Motion.OnGroundMove" sprite="s_cartFront" isLoop="true" animTime="100">
        <Frame>0,2</Frame>
        <Frame>1,2</Frame>
      </SpriteAnimation>      
	<SpriteAnimation name="a_cartBackMove" playOnState="Motion.OnGroundMove" sprite="s_cartBack" isLoop="true" animTime="100">
        <Frame>0,3</Frame>
        <Frame>1,3</Frame>
      </SpriteAnimation>
		
	    <SpriteAnimation name="a_cartFrontSwim" playOnState="Motion.OnWater" sprite="s_cartFront" isLoop="true" animTime="100">
		    <Frame>4,2</Frame>
	    </SpriteAnimation>      
	    <SpriteAnimation name="a_cartBackSwim" playOnState="Motion.OnWater" sprite="s_cartBack" isLoop="true" animTime="100">
		    <Frame>4,3</Frame>
		    <Frame>5,3</Frame>
	    </SpriteAnimation>	    
		
		<SpriteAnimation name="a_cartFrontAir" playOnState="Motion.OnAir" sprite="s_cartFront" isLoop="true" animTime="100">
		    <Frame>2,2</Frame>
		    <Frame>3,2</Frame>
	    </SpriteAnimation>      
	    <SpriteAnimation name="a_cartBackAir" playOnState="Motion.OnAir" sprite="s_cartBack" isLoop="true" animTime="100">
		    <Frame>2,3</Frame>
		    <Frame>3,3</Frame>
	    </SpriteAnimation>	    
	
    </Animations>

    <ParticleSystems>
      <ParticleSystem name="ps_trailFlash" updateStage="AddClothingParticles" renderStage="RenderShoes" updateState="MovementDir.Horizontal">
        <Emitter>
	        <Set name="offset">-23, 2</Set>
	        <Set name="emissionInterval">0.02</Set>
	        <Set name="infParticles">true</Set>
	        <Set name="infLifeTime">true</Set>
	        <Set name="particlesPerEmission">1</Set>
        </Emitter>
        <Particle usePlayerFacing="true">
          <Set name="sprite">trailOnAir</Set>
          <Set name="blendingMode">PREMULTIPLIED_ALPHA</Set>
          <Set name="inSpecificOrder">true</Set>
          <Curve name="initialAlpha">
            <KeyFrame>0, 0.8</KeyFrame>
            <KeyFrame>1, 0</KeyFrame>
          </Curve>
          <Curve name="initialScale">
            <KeyFrame>0, 1,0.75</KeyFrame>
            <KeyFrame>1, 1.25, 1</KeyFrame>
          </Curve>
          <Set name="lifeTime">0.3</Set>
        </Particle>
      </ParticleSystem>    
	<ParticleSystem name="ps_trailBubbles">
        <Emitter>
          <Set name="offset">-29, -2</Set>
          <Set name="particlesPerEmission">1</Set>
          <Set name="particlesToEmit">1</Set>
          <Set name="infParticles">true</Set>
          <Set name="checkParticleNumToEmit">true</Set>
          <Set name="lifeTime">0.3</Set>
        </Emitter>
        <Particle usePlayerFacing="true">
          <Set name="sprite">trailinWater</Set>
          <Set name="blendingMode">PREMULTIPLIED_ALPHA</Set>
          <Set name="inSpecificOrder">true</Set>
          <Curve name="initialAlpha">
            <KeyFrame>0, 1</KeyFrame>
            <KeyFrame>1, 0</KeyFrame>
          </Curve>
          <Curve name="initialScale">
            <KeyFrame>0, 0.25, 0.25</KeyFrame>
            <KeyFrame>1, 1.25, 1.25</KeyFrame>
          </Curve>
	        <Set name="initialVelocity">-25, -25</Set>
          <Set name="lifeTime">1</Set>
          <Random name="offset" min="-2,-6" max="0,6" />
        </Particle>
      </ParticleSystem>
    </ParticleSystems>
    <RenderOptions>
      <Default>
        <Set name="PlayDefaultPunchAudio">true</Set>
        <Set name="ClothingOffsetFromShoes">-3</Set>
        <Set name="UserNameOffset">3</Set>
        <Set name="RenderShoesWithMermaidTail">true</Set>
        <Set name="ShoesHidesBodyLegs">true</Set>
        <Set name="ShoesShouldIgnoreRaptorLegsOffset">true</Set>
        <Set name="IsToRenderPants">false</Set>
        <Set name="IsRidingBird">true</Set>
	    <Set name="IsRv">true</Set>
	     <Set name="IsVehicle">true</Set>
	      <Set name="IsCar">true</Set>
	      <Set name="IsSurfboard">true</Set>
      </Default>
	    <Override overrideOnState="Motion.OnWater">
		    <Set name="IsRv">false</Set>
		    <Set name="IsCar">false</Set>
		    <Set name="IsVehicle">false</Set>
	    </Override>	    
	    <Override overrideOnState="Motion.OnAir">
		    <Set name="IsRv">false</Set>
		    <Set name="IsCar">false</Set>
		    <Set name="IsVehicle">false</Set>
	    </Override>
    </RenderOptions>
  </Data>
  <RenderRules>
    <RenderBehind>
      <StopIf>
        <IsZombified>true</IsZombified>
        <IsTrnsformed>true</IsTrnsformed>
        <IsSitting>true</IsSitting>
        <IsSleepingOnaBed>true</IsSleepingOnaBed>
        <IsWearing slot="SHIRT">ITEM_ID_TACTICAL_STEALTH_DEVICE</IsWearing>
      </StopIf>
	  <ParticleSystemRender name="ps_trailBubbles" />
      <SpriteRender name="s_cartBack" offset="2.75,30" alignment="DOWN_CENTER"/>
    </RenderBehind>
    <RenderShoes>
      <SpriteRender name="s_cartFront" offset="2.75,6" drawShadow="false" alignment="DOWN_CENTER"/>
      <StopIf>
        <IsRenderMod>RENDER_MOD_MINI_YOU</IsRenderMod>
      </StopIf>

      <ParticleSystemUpdate name="ps_trailBubbles" onState="Motion.OnWater"/>
    </RenderShoes>
    <OnPunchUpdate>
      <AvatarTransform class="Face">
        <Set name="face">MAD</Set>
      </AvatarTransform>
    </OnPunchUpdate>
  </RenderRules>
</ItemRenderer>