<?xml version="1.0" encoding="utf-8"?>
<ItemRenderer item="ITEM_ID_ROYAL_GROWTRONIC_GLIDER">
	<Data>
		<StateMachines>
			<StateMachine name="Action">
				<States>
					<State name="None"/>
					<State name="Punch"/>
					<State name="Sleep"/>
				</States>
				<Transitions>
					<Transition to="None" from="Punch|Sleep">
						<Condition type="and">
							<IsAction operatorType="NotEqual">PUNCH</IsAction>
							<IsAction operatorType="NotEqual">SLEEP</IsAction>
							<IsSleepingOnaBed>false</IsSleepingOnaBed>
						</Condition>
					</Transition>
					<Transition to="Punch" from="None|Sleep">
						<Condition>
							<IsAction>PUNCH</IsAction>
						</Condition>
					</Transition>
					<Transition to="Sleep" from="None|Punch">
						<Condition>
							<IsAction>SLEEP</IsAction>
						</Condition>
					</Transition>
				</Transitions>
			</StateMachine>
			<StateMachine name="Mobility">
				<States>
					<State name="Stationary"/>
					<State name="Moving"/>
				</States>
				<Transitions>
					<Transition to="Stationary" from="Moving">
						<Condition>
							<IsVariableFloat name="speed.length" operator="Less" abs="true">0.1</IsVariableFloat>
						</Condition>
					</Transition>
					<Transition to="Moving" from="Stationary">
						<Condition>
							<IsVariableFloat name="speed.length" operator="Greater" abs="true">0.1</IsVariableFloat>
						</Condition>
					</Transition>
				</Transitions>
			</StateMachine>
		</StateMachines>
		
		<Sprite name="s_glider_left" fileName="game/player_feet16.rttex" textureSize="32" frame="5,18"/>
		<Sprite name="s_glider_right" fileName="game/player_feet16.rttex" textureSize="32" frame="5,19"/>
		<Sprite name="s_trail" fileName="game/particles11.rttex" textureSize="32" frame="31,13"/>
		<Sprite name="s_missile" fileName="game/particles11.rttex" textureSize="32" frame="30,13"/>
		<Sprite name="s_muzzle" fileName="game/particles_large13.rttex" textureSize="64" frame="0,3"/>
		<Sprite name="s_hit" fileName="game/particles_large13.rttex" textureSize="64" frame="1,2"/>
		
		<Animations>
			<SpriteAnimation name="a_glider_left" playOnState="Action.None" sprite="s_glider_left" isLoop="true" animTime="300">
				<Frame>5,20</Frame>
				<Frame>6,20</Frame>
				<Frame>7,20</Frame>
			</SpriteAnimation>
			<SpriteAnimation name="a_glider_right" playOnState="Action.None" sprite="s_glider_right" isLoop="true" animTime="300">
				<Frame>5,21</Frame>
				<Frame>6,21</Frame>
				<Frame>7,21</Frame>
			</SpriteAnimation>
			<SpriteAnimation name="a_glider_left_punch" playOnState="Action.Punch" sprite="s_glider_left" isLoop="true" animTime="300">
				<Frame>8,20</Frame>
				<Frame>9,20</Frame>
				<Frame>10,20</Frame>
			</SpriteAnimation>
			<SpriteAnimation name="a_glider_right_punch" playOnState="Action.Punch" sprite="s_glider_right" isLoop="true" animTime="300">
				<Frame>8,21</Frame>
				<Frame>9,21</Frame>
				<Frame>10,21</Frame>
			</SpriteAnimation>
			<SpriteAnimation name="a_hit" sprite="s_hit" animTime="800">
				<Frame>1,3</Frame>
				<Frame>2,3</Frame>
				<Frame>3,3</Frame>
				<Frame>4,3</Frame>
				<Frame>5,3</Frame>
				<Frame>6,3</Frame>
				<Frame>7,3</Frame>
				<Frame>8,3</Frame>
			</SpriteAnimation>
		</Animations>
		
		<ParticleSystems>
			<ParticleSystem name="ps_hit">
				<Emitter>
					<Set name="lifeTime">0</Set>
					<Set name="particlesPerEmission">1</Set>
				</Emitter>
				<Particle>
					<Set name="sprite">s_hit</Set>
					<Curve name="initialAlpha">
						<KeyFrame>0, 1</KeyFrame>
						<KeyFrame>1, 0</KeyFrame>
					</Curve>
					<Set name="lifeTime">0.8</Set>
				</Particle>
			</ParticleSystem>
			<ParticleSystem name="ps_missile">
				<Emitter>
					<Set name="offset">0, -16</Set>
					<Set name="lifeTime">0</Set>
					<Set name="particlesPerEmission">1</Set>
					<Set name="useCharacterPos">true</Set>
				</Emitter>
				<Particle>
					<Set name="sprite">s_missile</Set>
					<Select name="offset" input="punchCount">
						<Item>-12, 0</Item>
						<Item>24, 0</Item>
					</Select>
					<Set name="rotateWithVelocity">true</Set>
					<Curve name="initialAlpha">
						<KeyFrame>0, 1</KeyFrame>
						<KeyFrame>1, 1</KeyFrame>
					</Curve>
					<Set name="lifeTime">0.3</Set>
					<VectorTo name="initialVelocity" source="targetPos" duration="lifeTime" x="1"/>
				</Particle>
			</ParticleSystem>
			<ParticleSystem name="ps_muzzle">
				<Emitter>
					<Set name="offset">6, -16</Set>
					<Set name="lifeTime">0</Set>
					<Set name="offsetFacing">true</Set>
					<Set name="particlesPerEmission">1</Set>
					<Set name="useCharacterPos">true</Set>
				</Emitter>
				<Particle>
					<Set name="sprite">s_muzzle</Set>
					<Select name="offset" input="punchCount">
						<Item>-15, 0</Item>
						<Item>15, 0</Item>
					</Select>
					<Set name="blendingMode">PREMULTIPLIED_ALPHA</Set>
					<Curve name="initialAlpha">
						<KeyFrame>0, 0</KeyFrame>
						<KeyFrame>0.5, 1</KeyFrame>
						<KeyFrame>1, 0</KeyFrame>
					</Curve>
					<Set name="lifeTime">0.2</Set>
				</Particle>
			</ParticleSystem>
			<ParticleSystem name="ps_trail">
				<Emitter>
					<Set name="offset">-30, 4</Set>
					<Set name="emissionInterval">0.05</Set>
					<Set name="infParticles">true</Set>
					<Set name="infLifeTime">true</Set>
					<Set name="particlesPerEmission">2</Set>
				</Emitter>
				<Particle velocityRelativeToPlayerSpeed="true">
					<Set name="sprite">s_trail</Set>
					<Random name="offset" min="0, -4" max="0, 4"/>
					<Set name="blendingMode">PREMULTIPLIED_ALPHA</Set>
					<Curve name="initialAlpha">
						<KeyFrame>0, 1</KeyFrame>
						<KeyFrame>1, 0</KeyFrame>
					</Curve>
					<Curve name="initialScale">
						<KeyFrame>0, 0.5, 0.5</KeyFrame>
						<KeyFrame>1, 1.25, 1.25</KeyFrame>
					</Curve>
					<Set name="lifeTime">1</Set>
					<Random name="initialVelocity" min="-30, 0" max="-40, 0"/>
					<Random name="initialAngle" min="-45" max="45"/>
					<Set name="initialRotationRate">90</Set>
				</Particle>
			</ParticleSystem>
		</ParticleSystems>
		
		<RenderOptions>
			<Default>
				<Set name="ClothingOffsetFromShoes">-18</Set>
				<Set name="IgnoreDefaultDamagedTileEffect">true</Set>
				<Set name="UserNameOffset">22</Set>
				<Set name="ShouldHover">true</Set>
				<Set name="NeedRenderBareFeetWithShoesItem">true</Set>
				<Set name="AllowChangePunchType">true</Set>
				<Set name="IncludeAllActions">true</Set>
			</Default>
		</RenderOptions>
	</Data>

	<RenderRules>
		<Update>
			<StopIf>
				<IsZombified>true</IsZombified>
			</StopIf>
			<AvatarTransform class="FootPosition">
				<Set name="foot1dy">0</Set>
				<Set name="foot2dy">0</Set>
				<Set name="foot1y">0</Set>
				<Set name="foot2y">0</Set>
			</AvatarTransform>
			<AvatarTransform class="ArmAngle" onState="Mobility.Moving">
			  <Set name="armName">arm2Angle</Set>
			  <Set name="armAngle">45</Set>
			</AvatarTransform>
			<AvatarTransform class="ArmAngle" onState="Mobility.Moving">
			  <Set name="armName">arm1Angle</Set>
			  <Set name="armAngle">-45</Set>
			</AvatarTransform>
		</Update>
		<RenderShoes>
			<SpriteRender name="s_glider_left" offset="0,14" alignmentLeft="DOWN_LEFT" alignmentRight="DOWN_RIGHT"/>
			<SpriteRender name="s_glider_right" offset="0,14" alignmentLeft="DOWN_RIGHT" alignmentRight="DOWN_LEFT"/>
		</RenderShoes>
		<OnPunchStart>
			<AvatarTransform class="Face">
				<Set name="face">MAD</Set>
			</AvatarTransform>
			<StopIf>
				<IsSitting>true</IsSitting>
			</StopIf>
			<ParticleSystemUpdate name="ps_muzzle"/>
			<ParticleSystemUpdate name="ps_missile"/>
		</OnPunchStart>
		<OnDamagedTile>
			<StopIf>
				<IsSitting>true</IsSitting>
			</StopIf>
			<ParticleSystemUpdate name="ps_hit"/>
		</OnDamagedTile>
		<OnDestroyedTile>
			<StopIf>
				<IsSitting>true</IsSitting>
			</StopIf>
			<ParticleSystemUpdate name="ps_hit"/>
		</OnDestroyedTile>
		<AddClothingParticles>
			<ParticleSystemUpdate name="ps_trail" onState="Mobility.Moving"/>
		</AddClothingParticles>
		<SwitchOffClothingParticles>
			<ParticleSystemOff name="ps_missile"/>
			<ParticleSystemOff name="ps_muzzle"/>
			<ParticleSystemOff name="ps_hit"/>
			<ParticleSystemOff name="ps_trail"/>
		</SwitchOffClothingParticles>
	</RenderRules>
</ItemRenderer>