<?xml version="1.0" encoding="utf-8"?>
<ItemRenderer>
  <Data>
    <Sprite name="s_podFront" fileName="game/player_feet16.rttex" textureSize="32" frame="10,27"/>
    <Sprite name="s_podBack" fileName="game/player_feet16.rttex" textureSize="32" frame="10,26"/>
    <Sprite name="s_turbine" fileName="game/particles12.rttex" textureSize="32" frame="25,20"/>
    <Sprite name="s_trail" fileName="game/particles12.rttex" textureSize="32" frame="24,17"/>
    
    <RenderOptions>
      <Default>
        <Set name="PlayDefaultPunchAudio">true</Set>
        <Set name="ClothingOffsetFromShoes">-6</Set>
        <Set name="UserNameOffset">11</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="IsVehicle">true</Set>
        <Set name="ShouldHover">true</Set>
        <Set name="IgnorePunchTypeCheck">true</Set>
      </Default>
    </RenderOptions>

    <Animations>
      <InterpolationVec3Animation name="a_jump" variableName="FinalOffset" targetVariableName="JumpTargetOffset" isLoop="false" animTime="1000" playOnState="Motion.Jump"/>
      <InterpolationVec3Animation name="a_fall" variableName="FinalOffset" targetVariableName="FallTargetOffset" isLoop="false" animTime="1000" playOnState="Motion.Fall"/>
      <InterpolationVec3Animation name="a_idle" variableName="FinalOffset" targetVariableName="IdleTargetOffset" isLoop="false" animTime="500" playOnState="Motion.Idle"/>
      <SpriteAnimation name="a_trail" autoPlay="false" sprite="s_trail">
        <Frame>24,17</Frame>
        <Frame>25,17</Frame>
      </SpriteAnimation>
      <SpriteAnimation name="a_turbine" autoPlay="true" isLoop="true" animTime="300" sprite="s_turbine">
        <Frame>25,20</Frame>
        <Frame>26,20</Frame>
        <Frame>27,20</Frame>
      </SpriteAnimation>
    </Animations>
    
    <VariableMap>
      <Set name="FinalOffset">0,0,0</Set>
      <Set name="JumpTargetOffset">0,-10,0</Set>
      <Set name="FallTargetOffset">0,10,0</Set>
      <Set name="IdleTargetOffset">0,0,0</Set>
      <Set name="RopeStartFront">20,5,0</Set>
      <Set name="RopeEndFront">50,0,0</Set>
      <Set name="RopeStartBack">22,-1,0</Set>
      <Set name="RopeEndBack">50,0,0</Set>
    </VariableMap>
    
    <StateMachines>
      <StateMachine name="Motion">
        <States>
          <State name="Idle" />
          <State name="Jump" />
          <State name="Fall" />
        </States>
        <Transitions>
          <Transition to="Idle" from="Fall|Jump">
            <Condition>
              <IsVariableBool name="onGround">true</IsVariableBool>
            </Condition>
          </Transition>
          <Transition to="Jump" from="Idle|Fall">
            <Condition type="and">
              <IsVariableBool name="onGround">false</IsVariableBool>
              <IsVariableFloat name="speed.y" operator="Less">-0.1</IsVariableFloat>
            </Condition>
          </Transition>
          <Transition to="Fall" from="Jump|Idle">
            <Condition type="and">
              <IsVariableBool name="onGround">false</IsVariableBool>
              <IsVariableFloat name="speed.y" operator="Greater">0.1</IsVariableFloat>
            </Condition>
          </Transition>
        </Transitions>
      </StateMachine>
      <StateMachine name="ArmState">
        <States>
          <State name="Idle" />
          <State name="InAir" />
          <State name="GroundMove" />
        </States>
        <Transitions>
          <Transition to="Idle" from="InAir|GroundMove">
            <Condition type="and">
              <IsVariableBool name="onGround">true</IsVariableBool>
              <IsVariableFloat name="speed.x" operator="Less" abs="true">0.1</IsVariableFloat>
            </Condition>
          </Transition>
          <Transition to="InAir" from="Idle|GroundMove">
            <Condition>
              <IsVariableBool name="onGround">false</IsVariableBool>
            </Condition>
          </Transition>
          <Transition to="GroundMove" from="Idle|InAir">
            <Condition type="and">
              <IsVariableBool name="onGround">true</IsVariableBool>
              <IsVariableFloat name="speed.x" operator="Greater" abs="true">0.1</IsVariableFloat>
            </Condition>
          </Transition>
        </Transitions>
      </StateMachine>
      <StateMachine name="trailParticleState">
        <States>
          <State name="Equip"/>
          <State name="HorizontalMove"/>
        </States>
        <Transitions>
          <Transition from="HorizontalMove" to="Equip">
            <Condition type="and">
              <IsVariableFloat name="speed.x" operator="Less" abs="true">0.1</IsVariableFloat>
            </Condition>
          </Transition>
          <Transition from="Equip" to="HorizontalMove">
            <Condition type="and">
              <IsVariableFloat name="speed.x" operator="Greater" abs="true">0.1</IsVariableFloat>
            </Condition>
          </Transition>
        </Transitions>
      </StateMachine>
    </StateMachines>

    <ParticleSystems>
      <ParticleSystem name="ps_trail" updateStage="AddClothingParticles" updateState="trailParticleState.HorizontalMove">
        <Emitter>
          <Set name="particlesPerEmission">1</Set>
          <Set name="particlesToEmit">1</Set>
          <Set name="emissionInterval">0.035</Set>
          <Set name="offset">-28,-7</Set>
          <Set name="infParticles">true</Set>
          <Set name="infLifeTime">true</Set>
        </Emitter>
        <Particle randomSpriteFrame="true" usePlayerFacing="true">
          <Set name="sprite">s_trail</Set>
          <Set name="inSpecificOrder">true</Set>
          <Set name="blendingMode">PREMULTIPLIED_ALPHA</Set>
          <Set name="lifeTime">0.2</Set>
          <Curve name="initialAlpha">
            <KeyFrame>0, 1</KeyFrame>
            <KeyFrame>0.5, 1</KeyFrame>
            <KeyFrame>1, 0</KeyFrame>
          </Curve>
        </Particle>
      </ParticleSystem>
    </ParticleSystems>
  </Data>
  <RenderRules>
    <Update>

    </Update>
    <RenderShoes 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>
      <ParticleSystemRender name="ps_trail"/>
      <Translate>0,-9,0</Translate>
      <Group>
        <Translate>16,0,0</Translate>
        <SpriteRender name="s_podFront" blend="PREMULTIPLIED_ALPHA"/>
      </Group>
      <Group>
        <Translate>-16,0,0</Translate>
        <SpriteRender name="s_podBack" blend="PREMULTIPLIED_ALPHA"/>
      </Group>

      <Group>
        <Group>
          <Translate>50,-5,0</Translate>
          <Translate>FinalOffset</Translate>
          <SpriteRender name="s_turbine" blend="PREMULTIPLIED_ALPHA"/>
          <SpriteRender name="s_turbine" blend="PREMULTIPLIED_ALPHA" tintOverride="100,110,18,128" drawShadow="false"/>
        </Group>
        <Group>
          <ArithmethicOperation LeftHandVariableName="RopeEndBack" RightHandVariableName="36,-5.5,0" OperationType="Set" />
          <ArithmethicOperation LeftHandVariableName="RopeEndBack" RightHandVariableName="FinalOffset" OperationType="Add" />
          <LineRender color="30, 110, 80,255" StartPointVariableName="RopeStartBack" EndPointVariableName="RopeEndBack"  LineWidth="4"/>
        </Group>
      </Group>
      
      <Group>
        <Group>
          <Translate>50,5,0</Translate>
          <Translate>FinalOffset</Translate>
          <SpriteRender name="s_turbine" blend="PREMULTIPLIED_ALPHA"/>
        </Group>
        <Group>
          <ArithmethicOperation LeftHandVariableName="RopeEndFront" RightHandVariableName="36,4.5,0" OperationType="Set" />
          <ArithmethicOperation LeftHandVariableName="RopeEndFront" RightHandVariableName="FinalOffset" OperationType="Add" />
          <LineRender color="30, 110, 80,255" StartPointVariableName="RopeStartFront" EndPointVariableName="RopeEndFront" LineWidth="4"/>
        </Group>
      </Group>
      
    <Group onState="ArmState.GroundMove">
      <AvatarTransform class="ArmAngle">
        <Set name="armName">arm2Angle</Set>
        <Set name="armAngle">-45</Set>
      </AvatarTransform>
      <StopIf>
        <IsAction>PUNCH</IsAction>
        <IsAction>BUILD</IsAction>
      </StopIf>
      <AvatarTransform class="ArmAngle">
        <Set name="armName">arm1Angle</Set>
        <Set name="armAngle">-45</Set>
      </AvatarTransform></Group>

    </RenderShoes>
  </RenderRules>
</ItemRenderer>