<?xml version="1.0"?>
<ItemRenderer>
	<Data>
		<Sprite name="s_punch" fileName="game/particles11.rttex" textureSize="32" frame="12,26" />
		<Sprite name="s_gloveBack" fileName="game/player_cosmetics4.rttex" textureSize="32,32" frame="2,8" />
		<Sprite name="s_gloveBack_glow" fileName="game/player_cosmetics4.rttex" textureSize="32,32" frame="3,8" />
		<Sprite name="s_gloveFront" fileName="game/player_cosmetics4.rttex" textureSize="32,32" frame="0,8" />
		<Sprite name="s_gloveFront_glow" fileName="game/player_cosmetics4.rttex" textureSize="32,32" frame="1,8" />
		<Sprite name="s_aura" fileName="game/particles12.rttex" textureSize="32" frame="23,19"/>
		<Sprite name="s_Trail" fileName="game/particles11.rttex" textureSize="32" frame="12,26" />
		<Animations>
			<SpriteCurveAnimation name="a_gloveFront_glow" isLoop="true" autoPlay="true" sprite="s_gloveFront_glow" animTime="5000">
				<Curve name="alpha">
					<KeyFrame>0.f, 0.f</KeyFrame>
					<KeyFrame>0.2f, 0.f </KeyFrame>
					<KeyFrame>0.4f, 1.f</KeyFrame>
					<KeyFrame>0.8f, 1.f</KeyFrame>
					<KeyFrame>1.f, 0.f</KeyFrame>
				</Curve>
			</SpriteCurveAnimation>
			<SpriteCurveAnimation name="a_gloveBack_glow" isLoop="true" autoPlay="true" sprite="s_gloveBack_glow" animTime="5000">
				<Curve name="alpha">
					<KeyFrame>0.f, 0.f</KeyFrame>
					<KeyFrame>0.2f, 0.f </KeyFrame>
					<KeyFrame>0.4f, 1.f</KeyFrame>
					<KeyFrame>0.8f, 1.f</KeyFrame>
					<KeyFrame>1.f, 0.f</KeyFrame>
				</Curve>
			</SpriteCurveAnimation>
			<SpriteAnimation name="a_punch" sprite="s_punch" animTime="200">
				<Frame>12,26</Frame>
				<Frame>13,26</Frame>
				<Frame>14,26</Frame>
				<Frame>15,26</Frame>
			</SpriteAnimation>
			<SpriteAnimation name="a_aura" sprite="s_aura">
				<Frame>23,18</Frame>
				<Frame>24,18</Frame>
			</SpriteAnimation>
			<SpriteAnimation name="a_Trail" sprite="s_Trail" animTime="400">
				<Frame>12,26</Frame>
				<Frame>13,26</Frame>
				<Frame>14,26</Frame>
				<Frame>15,26</Frame>
			</SpriteAnimation>
		</Animations>
		<StateMachines>
			<StateMachine name="Moving">
				<States>
					<State name="No"/>
					<State name="Yes"/>
				</States>
				<Transitions>
					<Transition to="No" from="Yes">
						<Condition>
							<IsVariableFloat name="speed.length" operator="Less" abs="true">0.1</IsVariableFloat>
						</Condition>
					</Transition>
					<Transition to="Yes" from="No">
						<Condition>
							<IsVariableFloat name="speed.length" operator="Greater" abs="true">0.1</IsVariableFloat>
						</Condition>
					</Transition>
				</Transitions>
			</StateMachine>
			<StateMachine name="Horizontal">
				<States>
					<State name="No"/>
					<State name="Yes"/>
				</States>
				<Transitions>
					<Transition to="No" from="Yes">
						<Condition>
							<IsVariableFloat name="speed.x" operator="Less" abs="true">0.1</IsVariableFloat>
						</Condition>
					</Transition>
					<Transition to="Yes" from="No">
						<Condition>
							<IsVariableFloat name="speed.x" operator="Greater" abs="true">0.1</IsVariableFloat>
						</Condition>
					</Transition>
				</Transitions>
			</StateMachine>
			<StateMachine name="Punch">
				<States>
					<State name="No" />
					<State name="Yes" />
				</States>
				<Transitions>
					<Transition to="No" from="Yes">
						<Condition>
							<IsAction operatorType="NotEqual">PUNCH</IsAction>
						</Condition>
					</Transition>
					<Transition to="Yes" from="No">
						<Condition>
							<IsAction>PUNCH</IsAction>
						</Condition>
					</Transition>
				</Transitions>
			</StateMachine>
		</StateMachines>
		<ParticleSystems>
			<ParticleSystem name="ps_punchBack" updateStage="RenderBackHandItem" updateState="Punch.Yes">
				<Emitter attachment="handspotRoot">
					<Set name="offset">-2, 6</Set>
					<Set name="lifeTime">0.01</Set>
					<Set name="emissionInterval">0.01</Set>
					<Set name="infParticles">true</Set>
					<Set name="checkParticleNumToEmit">true</Set>
					<Set name="particlesPerEmission">1</Set>
					<Set name="particlesToEmit">1</Set>
				</Emitter>
				<Particle randomSpriteFrame="true">
					<Set name="sprite">s_punch</Set>
					<Set name="blendingMode">ADDITIVE</Set>
					<Set name="rotateWithVelocity">true</Set>
					<Set name="lifeTime">0.45</Set>
					<VectorTo name="initialVelocity" source="targetPos" offset="targetPosOffset" duration="lifeTime" x="1" angle="0" />
					<Set name="initalRGB">1, 0.5, 0</Set>
					<Set name="finalRGB">1, 0.9, 0</Set>
					<Set name="interpolateRGB">true</Set>
					<Curve name="initialAlpha">
						<KeyFrame>0, 0.5</KeyFrame>
						<KeyFrame>1, 0.5</KeyFrame>
					</Curve>
					<Random name="initialScale" min="0.5" max="0.6"/>
				</Particle>
			</ParticleSystem>
			<ParticleSystem name="ps_punchFront">
				<Emitter attachment="handspotRoot">
					<Set name="offset">0,10</Set>
					<Set name="lifeTime">0.01</Set>
					<Set name="emissionInterval">0.01</Set>
					<Set name="infParticles">true</Set>
					<Set name="checkParticleNumToEmit">true</Set>
					<Set name="particlesPerEmission">1</Set>
					<Set name="particlesToEmit">1</Set>
				</Emitter>
				<Particle randomSpriteFrame="true">
					<Set name="sprite">s_punch</Set>
					<Set name="blendingMode">ADDITIVE</Set>
					<Set name="rotateWithVelocity">true</Set>
					<Set name="lifeTime">0.45</Set>
					<VectorTo name="initialVelocity" source="targetPos" offset="targetPosOffset" duration="lifeTime" x="1" angle="0" />
					<Set name="initalRGB">1, 0.5, 0</Set>
					<Set name="finalRGB">1, 0.9, 0</Set>
					<Set name="interpolateRGB">true</Set>
					<Curve name="initialAlpha">
						<KeyFrame>0, 0.5</KeyFrame>
						<KeyFrame>1, 0.5</KeyFrame>
					</Curve>
					<Random name="initialScale" min="0.5" max="0.6"/>
				</Particle>
			</ParticleSystem>
			<ParticleSystem name="ps_thrustBack">
				<Emitter attachment="handspotRoot">
					<Set name="offset">12, 24</Set>
					<Set name="lifeTime">0.07</Set>
					<Set name="emissionInterval">0.01</Set>
					<Set name="infParticles">true</Set>
					<Set name="checkParticleNumToEmit">true</Set>
					<Set name="particlesPerEmission">1</Set>
					<Set name="particlesToEmit">1</Set>
				</Emitter>
				<Particle randomSpriteFrame="true">
					<Set name="sprite">s_punch</Set>
					<Set name="blendingMode">ADDITIVE</Set>
					<Set name="rotateWithVelocity">true</Set>
					<Set name="lifeTime">0.4</Set>
					<Set name="relativeToEmitter">true</Set>
					<Set name="initialScale">0.5,0.5</Set>
					<Set name="initialVelocity" source="thrustVel"/>
					<Set name="initalRGB">1, 0.5, 0</Set>
					<Set name="finalRGB">1, 0.9, 0</Set>
					<Set name="interpolateRGB">true</Set>
					<Curve name="initialAlpha">
						<KeyFrame>0, 0.5</KeyFrame>
						<KeyFrame>1, 0.5</KeyFrame>
					</Curve>
				</Particle>
			</ParticleSystem>
			<ParticleSystem name="ps_thrustFront">
				<Emitter attachment="handspotRoot">
					<Set name="offset">1, 13</Set>
					<Set name="lifeTime">0.07</Set>
					<Set name="emissionInterval">0.01</Set>
					<Set name="infParticles">true</Set>
					<Set name="checkParticleNumToEmit">true</Set>
					<Set name="particlesPerEmission">1</Set>
					<Set name="particlesToEmit">1</Set>
				</Emitter>
				<Particle randomSpriteFrame="true">
					<Set name="sprite">s_punch</Set>
					<Set name="blendingMode">ADDITIVE</Set>
					<Set name="rotateWithVelocity">true</Set>
					<Set name="lifeTime">0.4</Set>
					<Set name="relativeToEmitter">true</Set>
					<Set name="initialScale">0.5,0.5</Set>
					<Set name="initialVelocity" source="thrustVel"/>
					<Set name="initalRGB">1, 0.5, 0</Set>
					<Set name="finalRGB">1, 0.9, 0</Set>
					<Set name="interpolateRGB">true</Set>
					<Curve name="initialAlpha">
						<KeyFrame>0, 0.5</KeyFrame>
						<KeyFrame>1, 0.5</KeyFrame>
					</Curve>
				</Particle>
			</ParticleSystem>
			<ParticleSystem name="ps_frontSmoke" updateStage="AddClothingParticles" renderStage="RenderHandItem">
				<Emitter>
					<Set name="emissionInterval">0.1</Set>
					<Set name="infParticles">true</Set>
					<Set name="lifeTime">1</Set>
					<Set name="particlesPerEmission">1</Set>
					<Set name="offset">-8,0</Set>
				</Emitter>
				<Particle randomSpriteFrame="true">
					<Set name="inSpecificOrder">true</Set>
					<Set name="sprite">s_aura</Set>
					<Set name="renderAlignment">DOWN_CENTER</Set>
					<Set name="blendingMode">ADDITIVE</Set>
					<Random name="initialVelocity" min="-5, -7" max="5, -10" />
					<Curve name="initialAlpha">
						<KeyFrame>0, 0.75</KeyFrame>
						<KeyFrame>1, 0</KeyFrame>
					</Curve>
					<Curve name="initialScale">
						<KeyFrame>0, 0.5, 0.5</KeyFrame>
						<KeyFrame>1, 0.75, 0.75</KeyFrame>
					</Curve>
					<Set name="lifeTime">2</Set>
					<Random name="flipX" min="false" max="true"/>
				</Particle>
			</ParticleSystem>
			<ParticleSystem name="ps_backSmoke" updateStage="AddClothingParticles" renderStage="RenderBackHandItem">
				<Emitter>
					<Set name="emissionInterval">0.1</Set>
					<Set name="infParticles">true</Set>
					<Set name="lifeTime">1</Set>
					<Set name="particlesPerEmission">1</Set>
					<Set name="offset">10,0</Set>
				</Emitter>
				<Particle randomSpriteFrame="true">
					<Set name="inSpecificOrder">true</Set>
					<Set name="sprite">s_aura</Set>
					<Set name="renderAlignment">DOWN_CENTER</Set>
					<Set name="blendingMode">ADDITIVE</Set>
					<Random name="initialVelocity" min="-5, -7" max="5, -10" />
					<Curve name="initialAlpha">
						<KeyFrame>0, 0.75</KeyFrame>
						<KeyFrame>1, 0</KeyFrame>
					</Curve>
					<Curve name="initialScale">
						<KeyFrame>0, 0.5, 0.5</KeyFrame>
						<KeyFrame>1, 0.75, 0.75</KeyFrame>
					</Curve>
					<Set name="lifeTime">2</Set>
					<Random name="flipX" min="false" max="true"/>
				</Particle>
			</ParticleSystem>
			<ParticleSystem name="ps_Platform" updateStage="RenderHandItem" renderStage="RenderHandItem" updateState="Moving.Yes">
				<Emitter>
					<Set name="offset">40, 19</Set>
					<Set name="emissionInterval">0.05</Set>
					<Set name="infParticles">true</Set>
					<Set name="infLifeTime">true</Set>
					<Set name="particlesPerEmission">1</Set>
				</Emitter>
				<Particle randomSpriteFrame="true">
					<Set name="sprite">s_Trail</Set>
					<Set name="inSpecificOrder">true</Set>
					<Set name="blendingMode">PREMULTIPLIED_ALPHA</Set>
					<Set name="initialVelocity" source="platformVel"/>
					<Curve name="initialAlpha">
						<KeyFrame>0, 1</KeyFrame>
						<KeyFrame>1, 0.5</KeyFrame>
					</Curve>
					<Set name="finalRGB">1, 0.65, 0</Set>
					<Set name="initalRGB">1, 0.9, 0</Set>
					<Set name="interpolateRGB">true</Set>
					<Random name="initialScale" min="1,1" max="0.8,0.8"/>
					<Set name="lifeTime">0.4</Set>
					<Set name="relativeToEmitter">true</Set>
				</Particle>
			</ParticleSystem>
			<ParticleSystem name="ps_Trail" updateStage="RenderHandItem" renderStage="RenderHandItem" updateState="Horizontal.Yes">
				<Emitter>
					<Set name="offset">5, 19</Set>
					<Set name="emissionInterval">0.01</Set>
					<Set name="infParticles">true</Set>
					<Set name="infLifeTime">true</Set>
					<Set name="particlesPerEmission">1</Set>
					<Set name="particlesToEmit">1</Set>
					<Set name="delayTimer">0.3</Set>
				</Emitter>
				<Particle randomSpriteFrame="true" angleRelativeToPlayerSpeed="true">
					<Set name="sprite">s_Trail</Set>
					<Set name="inSpecificOrder">true</Set>
					<Set name="blendingMode">PREMULTIPLIED_ALPHA</Set>
					<Curve name="initialAlpha">
						<KeyFrame>0, 0</KeyFrame>
						<KeyFrame>0.1, 0.5</KeyFrame>
						<KeyFrame>0.3, 0.5</KeyFrame>
						<KeyFrame>1, 0</KeyFrame>
					</Curve>
					<Curve name="initialScale">
						<KeyFrame>0, 1,0.9</KeyFrame>
						<KeyFrame>1, 1,0.2</KeyFrame>
					</Curve>
					<Set name="lifeTime">0.5</Set>
					<Set name="initalRGB">1, 0.65, 0</Set>
				</Particle>
			</ParticleSystem>
		</ParticleSystems>

		<TileStampData>
			<Set name="RenderObjectName">VolcanicGauntletsTileStamp</Set>
			<Set name="RenderDefaultCracks">true</Set>
			<Sprites>
				<Sprite fname="game/particles12.rttex" scale="1.3,1">
					<Animation animTime="100">
						<Frame>7,18</Frame>
						<Frame>8,18</Frame>
						<Frame>9,18</Frame>
						<Frame>10,18</Frame>
					</Animation>
				</Sprite>
				<Sprite fname="game/particles12.rttex" scale="1.3,1">
					<Animation animTime="100">
						<Frame>11,18</Frame>
						<Frame>12,18</Frame>
						<Frame>13,18</Frame>
						<Frame>14,18</Frame>
					</Animation>
				</Sprite>
				<Sprite fname="game/particles12.rttex" scale="1.3,1">
					<Animation animTime="100">
						<Frame>15,18</Frame>
						<Frame>16,18</Frame>
						<Frame>17,18</Frame>
						<Frame>18,18</Frame>
					</Animation>
				</Sprite>
				<Sprite fname="game/particles12.rttex" scale="1.3,1">
					<Animation animTime="100">
						<Frame>19,18</Frame>
						<Frame>20,18</Frame>
						<Frame>21,18</Frame>
						<Frame>22,18</Frame>
					</Animation>
				</Sprite>
			</Sprites>
		</TileStampData>
		<RenderOptions>
			<Default>
				<Set name="PunchSoundOverride">HAND</Set>
				<Set name="PlayDefaultPunchAudio">false</Set>
				<Set name="RenderBackArmBuild">true</Set>
				<Set name="RenderBackArmInfected">true</Set>
				<Set name="RenderFrontArmInfected">true</Set>
				<Set name="IncludeAllActions">true</Set>
				<Set name="DefaultRenderMannequinHandItem">false</Set>
				<Set name="TargetPosUseTileHealth">true</Set>
				<Set name="IgnoreDefaultDamagedTileEffect">true</Set>
			</Default>
		</RenderOptions>
		<VariableMap>
			<Set name="thrustVel">0,0</Set>
			<Set name="platformVel">0,0</Set>
			<Set name="Player.GetFacing">0</Set>
		</VariableMap>
	</Data>
	<RenderRules>
		<Update>
			<StopIf type="Or">
				<IsZombified>true</IsZombified>
				<IsWearing slot="SHIRT">ITEM_ID_TACTICAL_STEALTH_DEVICE</IsWearing>
			</StopIf>
			<ArithmethicOperation LeftHandVariableName="thrustVel" RightHandVariableName="30,20" OperationType="Set"/>
			<ArithmethicOperation LeftHandVariableName="thrustVel.x" RightHandVariableName="Player.GetFacing" OperationType="Multiply"/>
			<ArithmethicOperation LeftHandVariableName="platformVel" RightHandVariableName="-95,0" OperationType="Set"/>
			<ArithmethicOperation LeftHandVariableName="platformVel.x" RightHandVariableName="Player.GetFacing" OperationType="Multiply"/>
			<AvatarTransform class="FootPosition">
				<Set name="foot1dy">0</Set>
				<Set name="foot2dy">0</Set>
				<Set name="foot1y">0</Set>
				<Set name="foot2y">0</Set>
			</AvatarTransform>
			<Group onState="Moving.Yes">
				<AvatarTransform class="Face">
					<Set name="face">MAD</Set>
				</AvatarTransform>
				<Group onState="Punch.No">
					<AvatarTransform class="ArmAngle">
						<Set name="armName">arm1Angle</Set>
						<Set name="armAngle">-50</Set>
					</AvatarTransform>
				</Group>
				<AvatarTransform class="ArmAngle">
					<Set name="armName">arm2Angle</Set>
					<Set name="armAngle">-50</Set>
				</AvatarTransform>
			</Group>
		</Update>
		<AddClothingParticles>
			<StopIf>
				<IsWearing slot="SHIRT">ITEM_ID_TACTICAL_STEALTH_DEVICE</IsWearing>
			</StopIf>
			<Group onState="Moving.Yes">
				<Group onState="Punch.No">
					<ParticleSystemUpdate name="ps_thrustBack"/>
				</Group>
				<ParticleSystemUpdate name="ps_thrustFront"/>
			</Group>
		</AddClothingParticles>
		<OnPunchUpdate>
			<AvatarTransform class="Face">
				<Set name="face">MAD</Set>
			</AvatarTransform>
			<AvatarTransform class="ArmAngle">
				<Set name="armName">arm1Angle</Set>
				<Set name="pointTowardsPunchTarget">true</Set>
			</AvatarTransform>
			<Group onState="Moving.No">
				<AvatarTransform class="ArmAngle">
					<Set name="armName">arm2Angle</Set>
					<Set name="pointTowardsPunchTarget">true</Set>
				</AvatarTransform>
			</Group>
		</OnPunchUpdate>
		<RenderHandItem>
			<SpriteRender name="s_gloveFront" alignment="UPPER_CENTER" blend="PREMULTIPLIED_ALPHA" />
			<SpriteRender name="s_gloveFront_glow" alignment="UPPER_CENTER" blend="PREMULTIPLIED_ALPHA" />
			<Group onState="Moving.No">
				<ParticleSystemUpdate name="ps_punchFront" onState="Punch.Yes"/>
			</Group>
		</RenderHandItem>
		<RenderBackHandItem>
			<StopIf>
				<IsAction>BUILD</IsAction>
			</StopIf>
			<SpriteRender offset="-2,5" rotateOffset="true" rotationPoint="0,1" name="s_gloveBack" alignment="CENTER" blend="PREMULTIPLIED_ALPHA" />
			<SpriteRender offset="-3,5" rotateOffset="true" rotationPoint="0,1" name="s_gloveBack_glow" alignment="CENTER" blend="PREMULTIPLIED_ALPHA" />
		</RenderBackHandItem>
	</RenderRules>
</ItemRenderer>
