<?xml version="1.0"?>
<ItemRenderer>
	<Data>
		<Sprite name="s_blob" fileName="game/particles12.rttex" textureSize="32" frame="16,2" />
		<Sprite name="s_flash" fileName="game/particles12.rttex" textureSize="32" frame="16,1" />
		<Sprite name="s_foot1" fileName="game/player_feet16.rttex" textureSize="32" frame="0,22" />
		<Sprite name="s_foot2" fileName="game/player_feet16.rttex" textureSize="32" frame="0,23" />
		<Sprite name="s_hit" fileName="game/particles12.rttex" textureSize="32" frame="15,2" />
		<Sprite name="s_punch" fileName="game/particles12.rttex" textureSize="32" frame="17,1" />
		<Sprite name="s_turret" fileName="game/particles12.rttex" textureSize="32" frame="14,2" />
		<Animations>
			<SpriteAnimation name="a_blob" sprite="s_blob" animTime="200">
				<Frame>16,2</Frame>
				<Frame>17,2</Frame>
			</SpriteAnimation>
			<SpriteAnimation name="a_idle1" sprite="s_foot1" animTime="200" isLoop="true" playOnState="Mobility.Stationary">
				<Frame>0,22</Frame>
				<Frame>1,22</Frame>
			</SpriteAnimation>
			<SpriteAnimation name="a_idle2" sprite="s_foot2" animTime="200" isLoop="true" playOnState="Mobility.Stationary">
				<Frame>0,23</Frame>
				<Frame>1,23</Frame>
			</SpriteAnimation>
			<SpriteAnimation name="a_move1" sprite="s_foot1" animTime="400" isLoop="true" playOnState="Mobility.Moving">
				<Frame>2,22</Frame>
				<Frame>3,22</Frame>
				<Frame>4,22</Frame>
				<Frame>5,22</Frame>
			</SpriteAnimation>
			<SpriteAnimation name="a_move2" sprite="s_foot2" animTime="400" isLoop="true" playOnState="Mobility.Moving">
				<Frame>2,23</Frame>
				<Frame>3,23</Frame>
				<Frame>4,23</Frame>
				<Frame>5,23</Frame>
			</SpriteAnimation>
		</Animations>
		<StateMachines>
			<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>
			<StateMachine name="Action">
				<States>
					<State name="None" />
					<State name="Punch" />
				</States>
				<Transitions>
					<Transition to="None" from="Punch">
						<Condition>
							<IsAction operatorType="NotEqual">PUNCH</IsAction>
						</Condition>
					</Transition>
					<Transition to="Punch" from="None">
						<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>
							<IsFacingLeft>false</IsFacingLeft>
						</Condition>
					</Transition>
				</Transitions>
			</StateMachine>
		</StateMachines>
		<RenderOptions>
			<Default>
				<Set name="ClothingOffsetFromShoes">-5</Set>
				<Set name="IsCar">true</Set>
				<Set name="IsVehicle">true</Set>
				<Set name="IsToRenderPants">false</Set>
				<Set name="IgnoreDefaultDamagedTileEffect">true</Set>
				<Set name="RenderShoesWithMermaidTail">true</Set>
				<Set name="IsRidingBird">true</Set>
			</Default>
		</RenderOptions>
		<VariableMap>
			<Set name="target.angle">0</Set>
			<Set name="target.origin.offset">0,0,0</Set>
			<Set name="turret.Rotation">0</Set>
			<Set name="transform.turret.offset">16,-8,0</Set>
			<Set name="turret.offset">16,-26,0</Set>
		</VariableMap>
		<ParticleSystems>
			<ParticleSystem name="p_flash">
				<Emitter attachment="contextRotation">
					<Set name="offset">0, 0</Set>
					<Set name="emissionInterval">0.25</Set>
					<Set name="infParticles">true</Set>
					<Set name="infLifeTime">true</Set>
					<Set name="particlesPerEmission">1</Set>
				</Emitter>
				<Particle>
					<Set name="sprite">s_flash</Set>
					<Set name="relativeToEmitter">true</Set>
					<Set name="blendingMode">PREMULTIPLIED_ALPHA</Set>
					<Curve name="initialAlpha">
						<KeyFrame>0, 1</KeyFrame>
						<KeyFrame>0.8, 1</KeyFrame>
						<KeyFrame>1, 0</KeyFrame>
					</Curve>
					<Set name="lifeTime">0.1</Set>
				</Particle>
			</ParticleSystem>
			<ParticleSystem name="p_hit" updateStage="OnDamagedTile">
				<Emitter>
					<Set name="particlesPerEmission">1</Set>
				</Emitter>
				<Particle>
					<Set name="sprite">s_hit</Set>
					<Set name="blendingMode">PREMULTIPLIED_ALPHA</Set>
					<Curve name="initialAlpha">
						<KeyFrame>0, 1</KeyFrame>
						<KeyFrame>1, 0</KeyFrame>
					</Curve>
					<Curve name="initialScale">
						<KeyFrame>0, 0.8, 0.8</KeyFrame>
						<KeyFrame>1, 1.2, 1.2</KeyFrame>
					</Curve>
					<Set name="lifeTime">0.4</Set>
					<Random name="initialAngle" min="0" max="360" />
				</Particle>
			</ParticleSystem>
			<ParticleSystem name="p_hitBlob" updateStage="OnDamagedTile">
				<Emitter>
					<Set name="particlesPerEmission">10</Set>
				</Emitter>
				<Particle randomSpriteFrame="true">
					<Set name="sprite">s_blob</Set>
					<Set name="blendingMode">PREMULTIPLIED_ALPHA</Set>
					<Curve name="initialAlpha">
						<KeyFrame>0, 1</KeyFrame>
						<KeyFrame>1, 0</KeyFrame>
					</Curve>
					<Set name="lifeTime">0.5</Set>
					<RandomRadial name="initialVelocity" angleRange="0,360" radiusRange="60,80" />
				</Particle>
			</ParticleSystem>
			<ParticleSystem name="p_punch">
				<Emitter attachment="contextRotation">
					<Set name="offset">0, 0</Set>
					<Set name="emissionInterval">0.25</Set>
					<Set name="infParticles">true</Set>
					<Set name="infLifeTime">true</Set>
					<Set name="particlesPerEmission">1</Set>
				</Emitter>
				<Particle>
					<Set name="sprite">s_punch</Set>
					<Set name="blendingMode">PREMULTIPLIED_ALPHA</Set>
					<Set name="rotateWithVelocity">true</Set>
					<Set name="lifeTime">0.25</Set>
					<VectorTo name="initialVelocity" source="targetPos" offset="targetPosOffset" duration="lifeTime" x="1" angle="0" />
				</Particle>
			</ParticleSystem>
		</ParticleSystems>
	</Data>
	<RenderRules>
		<RenderShoes>
			<SpriteRender name="s_foot1" offset="12,8" alignmentLeft="DOWN_LEFT" alignmentRight="DOWN_RIGHT" />
			<SpriteRender name="s_foot2" offset="12,8" alignmentLeft="DOWN_RIGHT" alignmentRight="DOWN_LEFT" />
			<ArithmethicOperation LeftHandVariableName="turret.Rotation" RightHandVariableName="target.angle" OperationType="Set" />
			<ArithmethicOperation LeftHandVariableName="target.origin.offset" RightHandVariableName="turret.offset" OperationType="Set" />
			<Translate>16, -26, 0</Translate>
			<Rotate forceValue="true">turret.Rotation</Rotate>
			<Group onState="Facing.Left">
				<Rotate>180,0,0,1</Rotate>
				<Translate>6, 0, 0</Translate>
				<SpriteRender name="s_turret" />
				<Translate>27, 1, 0</Translate>
				<Rotate>180,0,0,1</Rotate>
				<Group>
					<StopIf>
						<IsRenderMod>RENDER_MOD_MINI_YOU</IsRenderMod>
					</StopIf>
					<ParticleSystemUpdate name="p_flash" onState="Action.Punch" />
					<Translate>15,0, 0</Translate>
					<ParticleSystemUpdate name="p_punch" onState="Action.Punch" />
				</Group>
			</Group>
			<Group onState="Facing.Right">
				<Translate>6, 0, 0</Translate>
				<SpriteRender name="s_turret" />
				<Translate>27, 1, 0</Translate>
				<Group>
					<StopIf>
						<IsRenderMod>RENDER_MOD_MINI_YOU</IsRenderMod>
					</StopIf>
					<ParticleSystemUpdate name="p_flash" onState="Action.Punch" />
					<Translate>-15,0, 0</Translate>
					<ParticleSystemUpdate name="p_punch" onState="Action.Punch" />
				</Group>
			</Group>
		</RenderShoes>
		<RenderTransform>
			<SpriteRender name="s_foot1" offset="12,24" alignmentLeft="DOWN_LEFT" alignmentRight="DOWN_RIGHT" />
			<SpriteRender name="s_foot2" offset="12,24" alignmentLeft="DOWN_RIGHT" alignmentRight="DOWN_LEFT" />
			<ArithmethicOperation LeftHandVariableName="turret.Rotation" RightHandVariableName="target.angle" OperationType="Set" />
			<ArithmethicOperation LeftHandVariableName="target.origin.offset" RightHandVariableName="transform.turret.offset" OperationType="Set" />
			<Translate>16, -8, 0</Translate>
			<Rotate forceValue="true">turret.Rotation</Rotate>
			<Group onState="Facing.Left">
				<Rotate>180,0,0,1</Rotate>
				<Translate>6, 0, 0</Translate>
				<SpriteRender name="s_turret" />
				<Translate>27, 1, 0</Translate>
				<Rotate>180,0,0,1</Rotate>
				<StopIf>
					<IsRenderMod>RENDER_MOD_MINI_YOU</IsRenderMod>
				</StopIf>
				<ParticleSystemUpdate name="p_flash" onState="Action.Punch" />
				<ParticleSystemUpdate name="p_punch" onState="Action.Punch" />
			</Group>
			<Group onState="Facing.Right">
				<Translate>6, 0, 0</Translate>
				<SpriteRender name="s_turret" />
				<Translate>27, 1, 0</Translate>
				<StopIf>
					<IsRenderMod>RENDER_MOD_MINI_YOU</IsRenderMod>
				</StopIf>
				<ParticleSystemUpdate name="p_flash" onState="Action.Punch" />
				<ParticleSystemUpdate name="p_punch" onState="Action.Punch" />
			</Group>
		</RenderTransform>
		<OnPunchStart />
		<OnPunchUpdate>
			<AvatarTransform class="Face">
				<Set name="face">MAD</Set>
			</AvatarTransform>
		</OnPunchUpdate>
		<OnDamagedTile />
		<OnDestroyedTile />
	</RenderRules>
</ItemRenderer>
