<?xml version="1.0"?>
<ItemRenderer>
	<Data>
        <Sprite name="chaos_gloves" fileName="game/custom_cosmetics1.rttex" textureSize="32" frame="30,7" />
        <Sprite name="magic_sparks" fileName="game/enigma_particles_small1.rttex" textureSize="32"/>
        <Sprite name="magic_sparks_up" fileName="game/enigma_particles_small1.rttex" textureSize="32"/>
        <Sprite name="chaos_magic" fileName="game/particles11.rttex" textureSize="32" frame="31,27"/>
        <Sprite name="chaos_glow_magic" fileName="game/enigma_particles4.rttex" textureSize="64" frame="0,2"/>
        <Sprite name="chaos_glow_idle" fileName="game/enigma_particles4.rttex" textureSize="64" frame="2,2"/>
        <Sprite name="homa_crack_sprite" fileName="game/particles11.rttex" textureSize="32" frame="24,1"/>
	    <Sprite name="HitSpark_Sprite" fileName="game/particles.rttex" textureSize="32"/>
	    <Sprite name="trail_Sprite" fileName="game/enigma_particles_small1.rttex" textureSize="32"/>

		<StateMachines>
			<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>
		</StateMachines>
        <Animations>
		    <SpriteAnimation name="punch_particle_Sprites" autoPlay="false" sprite="magic_sparks">
       		    <Frame>3,11</Frame>
			    <Frame>4,11</Frame>
    	    </SpriteAnimation>
		    <SpriteAnimation name="punch_particle_Sprites" autoPlay="false" sprite="magic_sparks_up">
       		    <Frame>3,11</Frame>
			    <Frame>4,11</Frame>
    	    </SpriteAnimation>
			<SpriteAnimation name="HitSpark_Anim" autoPlay="false" isLoop="false" sprite="HitSpark_Sprite"  animTime="200">
				<Frame>7, 5</Frame>
				<Frame>8, 5</Frame>
				<Frame>9, 5</Frame>
			</SpriteAnimation>
			<SpriteAnimation name="trail_anim" autoPlay="true" sprite="trail_Sprite" animTime="850">
       		    <Frame>3,11</Frame>
			    <Frame>4,11</Frame>
			</SpriteAnimation>
        </Animations>
        <ParticleSystems>
			<ParticleSystem name="punch_continue_particle_trail">
				<Emitter attachment="targetPos">
					<Random name="offset" min="-13,13" max="13,-13"/>
					<Set name="lifeTime">0</Set>
					<Set name="infParticles">true</Set>
					<Set name="particlesPerEmission">1</Set>
					<Set name="particlesToEmit">8</Set>
				</Emitter>
				<Particle randomSpriteFrame="true">
					<Set name="sprite">magic_sparks_up</Set>
					<Set name="offset">0, 0</Set>
					<Set name="blendingMode">ADDITIVE</Set>
					<Set name="lifeTime">1.5</Set>
				        <Curve name="initialAlpha">
					        <KeyFrame>0, 1</KeyFrame>
					        <KeyFrame>0.75, 0.75</KeyFrame>
					        <KeyFrame>1, 0</KeyFrame>
				        </Curve>
                    <Set name="initialRotationRate">360</Set>
                    <Set name="initialVelocity">0,-20</Set>
                    <Set name="useGravity">true</Set>
                    <Set name="gravityVector">0,-75</Set>
				</Particle>
			</ParticleSystem>
		    <ParticleSystem name="ChaosGlow">
                <Emitter>
                    <Set name="offset">0, 0</Set>
                    <Set name="infParticles">true</Set>
                    <Set name="checkParticleNumToEmit">true</Set>
                    <Set name="particlesPerEmission">1</Set>
                    <Set name="particlesToEmit">1</Set>
                </Emitter>
                <Particle>
                    <Set name="sprite">chaos_glow_magic</Set>
                    <Set name="blendingMode">ADDITIVE</Set>
                    <Set name="lifeTime">0.75</Set>
                    <Random name="initialAngle" min="0" max="360"/>
				        <Curve name="initialAlpha">
					        <KeyFrame>0, 0.75</KeyFrame>
					        <KeyFrame>0.75, 0.85</KeyFrame>
					        <KeyFrame>1, 0</KeyFrame>
				        </Curve>
				        <Curve name="initialScale">
					        <KeyFrame>0, 0.45,0.45</KeyFrame>
					        <KeyFrame>0.75, 1.15,1.15</KeyFrame>
					        <KeyFrame>1, 1.15,1.15</KeyFrame>
				        </Curve>
                </Particle>
            </ParticleSystem>
		    <ParticleSystem name="chaos_sparkles_punch">
				<Emitter>
				    <Set name="offset">0,0</Set>
				    <Set name="lifeTime">1.5</Set>
				    <Set name="particlesPerEmission">16</Set>
				    <Set name="delayTimer">0</Set>
				</Emitter>
				<Particle randomSpriteFrame="true">
				    <Set name="sprite">magic_sparks</Set>
				    <Set name="blendingMode">ADDITIVE</Set>
				    <Set name="lifeTime">1.25</Set>
				    <Set name="initalRGB">1,1,1</Set>
				    <Set name="initialScale">1,1</Set>
					    <Curve name="initialAlpha">
						    <KeyFrame>0, 1</KeyFrame>
						    <KeyFrame>0.75, 1</KeyFrame>
						    <KeyFrame>1, 0</KeyFrame>
					    </Curve>
				        <Curve name="initialScale">
            		        <KeyFrame>0, 1,1</KeyFrame>
            		        <KeyFrame>1, 1.5,1.5</KeyFrame>
          		        </Curve>
				    <RandomRadial name="initialVelocity" angleRange="0,360" radiusRange="65,90"/>
			    </Particle>
			</ParticleSystem>
        <ParticleSystem name="chaos_idle">
            <Emitter>
                <Set name="infLifeTime">true</Set>
                <Set name="infParticles">true</Set>
                <Set name="particlesToEmit">1</Set>
                <Set name="particlesPerEmission">1</Set>
                <Set name="randomizeInterval">true</Set>
                <Set name="intervalMin">0.1</Set>
                <Set name="intervalMax">0.15</Set>
            </Emitter>
            <Particle>
                <Set name="offset">-0.5,-14</Set>
                <Set name="sprite">chaos_glow_idle</Set>
                <Set name="blendingMode">ADDITIVE</Set>
                <Set name="relativeToEmitter">true</Set>
                <Set name="isBackgroundParticle">true</Set>
                <Set name="lifeTime">0.75</Set>
                    <Select name="initialRotationRate" input="randomNumber">
                        <Item>-180</Item>
                        <Item>180</Item>
                    </Select>
                    <Curve name="initialAlpha">
                        <KeyFrame>0, 0</KeyFrame>
                        <KeyFrame>0.3, 1</KeyFrame>
                        <KeyFrame>0.8, 1</KeyFrame>
                        <KeyFrame>1, 0</KeyFrame>
                    </Curve>
                    <Curve name="initialScale">
                        <KeyFrame>0, 0</KeyFrame>
                        <KeyFrame>0.3, 1.25</KeyFrame>
                        <KeyFrame>0.6, 1.25</KeyFrame>
                        <KeyFrame>1, 1.25</KeyFrame>
                    </Curve>
                </Particle>
            </ParticleSystem>
			<ParticleSystem name="hitSpark_particle" secondary="trail_particle">
				<Emitter>
					<Set name="particlesPerEmission">8</Set>
					<Set name="lifeTime">2</Set>
					<Set name="useTargetTileColorForTint">true</Set>
				</Emitter>
				<Particle randomSpriteFrame="true">
					<Set name="sprite">HitSpark_Sprite</Set>
					<Set name="blendingMode">PREMULTIPLIED_ALPHA</Set>
					<Set name="useGravity">true</Set>
					<Set name="interpolateScale">true</Set>
					<Set name="initialScale">2,2</Set>
					<Random name="finalScale" min="0.1, 0.1" max="0.4, 0.4"/>
					<Set name="lifeTime">1</Set>
					<RandomRadial name="initialVelocity" angleRange="30,330" radiusRange="80,200"/>
					<Set name="gravityVector">0, 100</Set>
					<Random name="initialRotationRate" min="-300" max="300"/>
					<Random name="posOffset" min="0.1, 0" max="16.1, 16.3"/>
				</Particle>
			</ParticleSystem>
			<ParticleSystem name="trail_particle">
				<Emitter>
					<Set name="lifeTime">1</Set>
					<Set name="particlesPerEmission">1</Set>
					<Set name="particlesToEmit">80</Set>
					<Set name="emissionInterval">0.2</Set>
				</Emitter>
				<Particle>
					<Set name="sprite">trail_Sprite</Set>
					<Set name="blendingMode">ADDITIVE</Set>
					<Set name="lifeTime">1.2</Set>
					<Set name="initialRotationRate">150</Set>
					<Curve name="initialScale">
						<KeyFrame>0, 0, 0</KeyFrame>
						<KeyFrame>0.4, 2.5, 2.5</KeyFrame>
						<KeyFrame>0.8, 1.25, 1.25</KeyFrame>
						<KeyFrame>1, 0</KeyFrame>
					</Curve>
					<Curve name="initialAlpha">
						<KeyFrame>0, 0.75</KeyFrame>
						<KeyFrame>0.8, 0.6</KeyFrame>
						<KeyFrame>1, 0</KeyFrame>
					</Curve>
					<Set name="initialVelocity">0,0</Set>
				</Particle>
			</ParticleSystem>
        </ParticleSystems>

		<RenderOptions>
			<Default>
			    <Set name="IgnoreDefaultDamagedTileEffect">true</Set>
			    <Set name="IgnoreDefaultDestroyedTileEffect">false</Set>
			</Default>
		</RenderOptions>
        <TileStampData>
            <Set name="FileName">game/enigma_particles_small1.rttex</Set>
            <Set name="EndFrame">7,12</Set>
            <Set name="FrameCount">4</Set>
        </TileStampData>
    </Data>

	<RenderRules>
        <RenderHandItem>
            <SpriteRender name="chaos_gloves" blend="PREMULTIPLIED_ALPHA" alignment="UPPER_CENTER"/>
        </RenderHandItem>
        <RenderInFront>
			<ParticleSystemRender name="punch_continue_particle_trail" onAction="PUNCH"/>
			<ParticleSystemRender name="punch_continue_particle_trail_2" onAction="PUNCH"/>
        </RenderInFront>
		<OnPunchBegin>
			<ParticleSystemUpdate name="punch_continue_particle_trail" />
		</OnPunchBegin>
		<OnPunchStop>
			<ParticleSystemUpdate name="punch_continue_particle_trail" />
		</OnPunchStop>
		<OnPunchUpdate>
            <AvatarTransform class="Emotion">
                <Set name="emotion">ANGRY</Set>
            </AvatarTransform>
			<AvatarTransform class="ArmAngle">
				<Set name="armName">arm2Angle</Set>
                <Set name="pointTowardsPunchTarget">true</Set>
			</AvatarTransform>
            <AvatarTransform class="ArmAngle">
				<Set name="armName">arm1Angle</Set>
                <Set name="pointTowardsPunchTarget">true</Set>
			</AvatarTransform>
			<ParticleSystemUpdate name="punch_continue_particle_trail" />
		</OnPunchUpdate>
		<OnDamagedTile>
			<ParticleSystemUpdate name="ChaosGlow" />
			<ParticleSystemUpdate name="chaos_sparkles_punch" />
		</OnDamagedTile>
        <AddClothingParticles>
            <ParticleSystemUpdate name="chaos_idle"/>
        </AddClothingParticles>
		<SwitchOffClothingParticles>
			<ParticleSystemOff name="punch_continue_particle_trail" />
			<ParticleSystemOff name="ChaosGlow" />
			<ParticleSystemOff name="chaos_sparkles_punch" />
			<ParticleSystemOff name="punch_continue_particle_trail_2" />
            <ParticleSystemOff name="chaos_idle" />
            <ParticleSystemOff name="hitSpark_particle"/>
		</SwitchOffClothingParticles>
		<OnDestroyedTile>
			<ParticleSystemUpdate name="hitSpark_particle"/>
		</OnDestroyedTile>
	</RenderRules>
</ItemRenderer>