<?xml version="1.0" encoding="utf-8"?>
<ItemRenderer NPCType="JelatinousChunkBoss" NPCTypeID="2">
	<Data>
		<Sprite name="sprite" fileName="game/bb_page3.rttex" textureSize="128" frame="0,0"/>
		<Sprite name="jelatinous_sprite" fileName="game/bb_page2.rttex" textureSize="128" frame="0,0"/>
		<Sprite name="trail_sprite" fileName="game/particles_large14.rttex" textureSize="64" frame="10,1"/>
		<Sprite name="s_HitEffect" fileName="game/particles.rttex" textureSize="32" frame="10,9" />
		<StateMachines>
			<StateMachine name="NPC" ServerOnly="true">
				<States start="Patrol">
					<NPCPlatformPatrol name="Patrol">
						<PatrolSpeed>70</PatrolSpeed>
						<DisableFall>false</DisableFall>
					</NPCPlatformPatrol>
					<NPCPlatformDash name="Dash" ExitTime="5">
						<DashVelocity>400, -10</DashVelocity>
						<UsePlayerPosition>true</UsePlayerPosition>
					</NPCPlatformDash>				
					<NPCPlatformSpawnParticlesWithMinions name="SpawnParticlesWithMinions" ExitTime="3">
						<ProjectileName>"JellyBossNPCFire"</ProjectileName>
					</NPCPlatformSpawnParticlesWithMinions>	
					<NPCPlatformJump name="Jump" ExitTime="1">
						<JumpHeight>150</JumpHeight>
					</NPCPlatformJump>				
					<NPCCounterOperation name="JumpCounter">
						<CounterName>"JumpCounter"</CounterName>
						<CounterModifier>-1</CounterModifier>
					</NPCCounterOperation>
					<NPCAnticipation name="AnticipationDash" ExitTime="1.5"/>
					<NPCAnticipation name="AnticipationLeap" ExitTime="0.5"/>
					<NPCAnticipation name="AnticipationFire" ExitTime="2"/>
				</States>
				<Transitions>
					<Transition to="Patrol" from="Dash|SpawnParticlesWithMinions"/>
					<Transition to="Patrol" from="Jump">
						<Condition>
							<CheckCounter ResetOnSuccess="true" operatorType="LessOrEqual" name="JumpCounter">0</CheckCounter>
						</Condition>
					</Transition>	
					<Transition to="AnticipationDash" from="Patrol">
						<Condition>
							<CheckRandomRangeNumber EndNumber="3">0</CheckRandomRangeNumber>
						</Condition>
					</Transition>			
					<Transition to="AnticipationFire" from="Patrol">
						<Condition>
							<CheckRandomRangeNumber EndNumber="3">1</CheckRandomRangeNumber>
						</Condition>
					</Transition>
					<Transition to="AnticipationLeap" from="Patrol">
						<Condition>
							<CheckRandomRangeNumber EndNumber="3">2</CheckRandomRangeNumber>
						</Condition>
					</Transition>						
					<Transition to="AnticipationLeap" from="Jump">
						<Condition>
							<CheckCounter operatorType="Greater" name="JumpCounter">0</CheckCounter>
						</Condition>
					</Transition>				
					<Transition to="Dash" from="AnticipationDash"/>
					<Transition to="SpawnParticlesWithMinions" from="AnticipationFire"/>						
					<Transition to="JumpCounter" from="AnticipationLeap"/>			
					<Transition to="Jump" from="JumpCounter"/>
				</Transitions>
			</StateMachine>
		</StateMachines>
		<Animations>
			<SpriteAnimation name="trail_anim" sprite="trail_sprite">
				<Frame>10,1</Frame>
				<Frame>11,1</Frame>
				<Frame>12,1</Frame>
			</SpriteAnimation>
			<SpriteAnimation name="slash_anim" sprite="sprite" animTime="800" isLoop="true">
				<Frame>0,0</Frame>
				<Frame>1,0</Frame>
				<Frame>2,0</Frame>
				<Frame>3,0</Frame>
				<Frame>4,0</Frame>
				<Frame>5,0</Frame>
				<Frame>6,0</Frame>
				<Frame>7,0</Frame>
			</SpriteAnimation>
			<SpriteAnimation name="a_sprite_walk" playOnState="NPC.Patrol" sprite="jelatinous_sprite" isLoop="true" animTime="1500">
				<Frame>0, 0</Frame>
				<Frame>1, 0</Frame>
				<Frame>2, 0</Frame>
				<Frame>3, 0</Frame>
				<Frame>4, 0</Frame>
				<Frame>5, 0</Frame>
				<Frame>6, 0</Frame>
				<Frame>7, 0</Frame>
				<Frame>0, 1</Frame>
				<Frame>1, 1</Frame>
				<Frame>2, 1</Frame>
				<Frame>3, 1</Frame>
				<Frame>4, 1</Frame>
				<Frame>5, 1</Frame>
				<Frame>6, 1</Frame>
			</SpriteAnimation>			
			<SpriteAnimation name="a_sprite_anticipation_dash" playOnState="NPC.AnticipationDash" sprite="jelatinous_sprite" isLoop="false" animTime="800">
				<Frame>0, 6</Frame>
				<Frame>1, 6</Frame>
				<Frame>2, 6</Frame>
				<Frame>3, 6</Frame>
				<Frame>4, 6</Frame>
				<Frame>5, 6</Frame>
				<Frame>6, 6</Frame>
			</SpriteAnimation>
			<SpriteAnimation name="a_sprite_anticipation_leap" playOnState="NPC.AnticipationLeap" sprite="jelatinous_sprite" isLoop="false" animTime="1000">
				<Frame>0, 2</Frame>
				<Frame>1, 2</Frame>
				<Frame>2, 2</Frame>
				<Frame>3, 2</Frame>
				<Frame>4, 2</Frame>
				<Frame>5, 2</Frame>
				<Frame>6, 2</Frame>
				<Frame>7, 2</Frame>
				<Frame>0, 3</Frame>
				<Frame>1, 3</Frame>
				<Frame>2, 3</Frame>
				<Frame>3, 3</Frame>
				<Frame>4, 3</Frame>
				<Frame>5, 3</Frame>
				<Frame>6, 3</Frame>
			</SpriteAnimation>
			<SpriteAnimation name="a_sprite_jump_attack" playOnState="NPC.Jump" sprite="jelatinous_sprite" isLoop="true" animTime="50">
				<Frame>7, 1</Frame>
			</SpriteAnimation>
			<SpriteAnimation name="a_sprite_dash_attack" playOnState="NPC.Dash" sprite="jelatinous_sprite" isLoop="true" animTime="800">
				<Frame>0, 7</Frame>
				<Frame>1, 7</Frame>
				<Frame>2, 7</Frame>
				<Frame>3, 7</Frame>
				<Frame>4, 7</Frame>
				<Frame>5, 7</Frame>
				<Frame>6, 7</Frame>
				<Frame>7, 7</Frame>
			</SpriteAnimation>
			<SpriteAnimation name="a_sprite_anticipation_fire" playOnState="NPC.AnticipationFire" sprite="jelatinous_sprite" isLoop="false" animTime="1000">
				<Frame>0, 4</Frame>
				<Frame>1, 4</Frame>
				<Frame>2, 4</Frame>
				<Frame>3, 4</Frame>
				<Frame>4, 4</Frame>
				<Frame>5, 4</Frame>
				<Frame>6, 4</Frame>				
				<Frame>7, 4</Frame>
				<Frame>0, 5</Frame>
				<Frame>1, 5</Frame>
				<Frame>2, 5</Frame>
				<Frame>3, 5</Frame>
				<Frame>4, 5</Frame>
				<Frame>5, 5</Frame>
				<Frame>6, 5</Frame>
			</SpriteAnimation>
			<SpriteAnimation name="a_sprite_fire_attack" playOnState="NPC.SpawnParticlesWithMinions" sprite="jelatinous_sprite" isLoop="false" animTime="400">
				<Frame>0, 1</Frame>
				<Frame>1, 1</Frame>
				<Frame>2, 1</Frame>
				<Frame>3, 1</Frame>
			</SpriteAnimation>
		</Animations>
		<ParticleSystems>
			<ParticleSystem name="fireParticle1">
				<Emitter>
					<Set name="offset">8,0</Set>
					<Set name="emissionInterval">0.8</Set>
					<Set name="infParticles">true</Set>
					<Set name="infLifeTime">true</Set>
					<Set name="particlesPerEmission">1</Set>
				</Emitter>
				<Particle usePlayerFacing="true">
					<Set name="sprite">sprite</Set>
					<Set name="blendingMode">PREMULTIPLIED_ALPHA</Set>
					<Set name="isBackgroundParticle">false</Set>
					<Set name="relativeToEmitter">true</Set>
					<Set name="collisionDamageAmount">5</Set>
					<Set name="destroyOnCollision">false</Set>
					<Set name="collisionSize">102,128</Set>
					<Set name="initialScale">1,1</Set>
					<Set name="lifeTime">0.9</Set>
					<Set name="collisionType">
						<CollisionType>PROJECTILES_ENEMY</CollisionType>
					</Set>
					<Set name="collisionFlag">
						<CollisionFlag>PLAYERS</CollisionFlag>
					</Set>
				</Particle>
			</ParticleSystem>
			<ParticleSystem name="damagingAura">
				<Emitter>
					<Set name="offset">0,0</Set>
					<Set name="emissionInterval">0.8</Set>
					<Set name="infParticles">true</Set>
					<Set name="infLifeTime">true</Set>
					<Set name="particlesPerEmission">1</Set>
				</Emitter>
				<Particle usePlayerFacing="true">
					<Set name="sprite">sprite</Set>
					<Set name="blendingMode">PREMULTIPLIED_ALPHA</Set>
					<Set name="isBackgroundParticle">false</Set>
					<Set name="relativeToEmitter">true</Set>
					<Set name="collisionDamageAmount">5</Set>
					<Set name="destroyOnCollision">false</Set>
					<Set name="collisionSize">128,128</Set>
					<Set name="initialScale">1,1</Set>
					<Set name="lifeTime">0.9</Set>
					<Set name="initialAlpha">0</Set>
					<Set name="collisionType">
						<CollisionType>PROJECTILES_ENEMY</CollisionType>
					</Set>
					<Set name="collisionFlag">
						<CollisionFlag>PLAYERS</CollisionFlag>
					</Set>
				</Particle>
			</ParticleSystem>
			<ParticleSystem name="trail_particle">
				<Emitter>
					<Set name="offset">0, 0</Set>
					<Set name="emissionInterval">0.15</Set>
					<Set name="lifeTime">1</Set>
					<Set name="infParticles">true</Set>
					<Set name="particlesPerEmission">1</Set>
					<Set name="offset">-32,32</Set>
				</Emitter>
				<Particle randomSpriteFrame="true">
					<Set name="sprite">trail_sprite</Set>
					<Set name="blendingMode">PREMULTIPLIED_ALPHA</Set>
					<Set name="lifeTime">1</Set>
					<Set name="initalRGB">1,1,1</Set>
					<Set name="collisionDamageAmount">10</Set>
					<Set name="destroyOnCollision">false</Set>
					<Set name="collisionSize">64,48</Set>
					<Set name="interpolateAlpha">true</Set>
					<Set name="initialAlpha">1</Set>
					<Set name="finalAlpha">0</Set>
					<Set name="collisionType">
						<CollisionType>PROJECTILES_ENEMY</CollisionType>
					</Set>
					<Set name="collisionFlag">
						<CollisionFlag>PLAYERS</CollisionFlag>
					</Set>
				</Particle>
			</ParticleSystem>
			<ParticleSystem name="ps_HitEffect" updateStage="OnDamaged">
				<Emitter>
					<Set name="particlesPerEmission">10</Set>
				</Emitter>
				<Particle>
					<Set name="sprite">s_HitEffect</Set>
					<Set name="rotateWithVelocity">true</Set>
					<Curve name="initialAlpha">
						<KeyFrame>0, 0</KeyFrame>
						<KeyFrame>0.4, 0</KeyFrame>
						<KeyFrame>0.41, 1</KeyFrame>
						<KeyFrame>1, 0</KeyFrame>
					</Curve>
					<Set name="initialScale">1.5,1.5</Set>
					<Set name="lifeTime">0.5</Set>
					<Set name="initalRGB">0.37,0.9,0.4</Set>
					<RandomRadial name="initialVelocity" angleRange="0,360" radiusRange="50,130" />
				</Particle>
			</ParticleSystem>
		</ParticleSystems>
		<Components>
			<Info/>
			<MustKillNPC/>
      <IsBossNPC>
        <Set name="displayName">"Jelatinous Chunk"</Set>
      </IsBossNPC>
			<StateMachineCounter>
				<Set name="JumpCounter">3</Set>
			</StateMachineCounter>
			<AttachmentSlotsCmp/>
			<TintOverrideCmp/>
			<Enemy>
				<Set name="SoulsReward">200</Set>
				<Set name="destroyTileId">11782</Set>
			</Enemy>
			<Movement/>
			<Damage>
				<Set name="damage">20</Set>
			</Damage>
			<NPCRenderActionCmp/>
			<StateMachine/>
			<Physics>
				<Set name="acceleration">0, 9.81</Set>
				<Set name="mass">100</Set>
				<Set name="drag">0, 0</Set>
			</Physics>
			<Health>
				<Set name="healthAmount">20000</Set>
				<Set name="maxHealth">20000</Set>
			</Health>
			<CollisionBox>
				<Set name="size">96,128</Set>
				<Set name="CollisionFlag">"PLAYERS|PROJECTILES"</Set>
				<Set name="CollisionType">"ENEMY_NPC"</Set>
			</CollisionBox>
			<DebugDraw/>
		</Components>
	</Data>
	<RenderRules>
		<Render>
			<SpriteRender name="jelatinous_sprite"/>
		</Render>
		<Update>
			<ParticleSystemUpdate name="fireParticle1" onState="NPC.Dash" />
			<ParticleSystemUpdate name="trail_particle" onState="NPC.Dash" />
			<ParticleSystemUpdate name="damagingAura" onState="NPC.Patrol|NPC.Jump" />
		</Update>
		<SwitchOffClothingParticles>
			<ParticleSystemOff name="fireParticle1"/>
			<ParticleSystemOff name="trail_particle"/>
			<ParticleSystemOff name="damagingAura"/>
		</SwitchOffClothingParticles>
	</RenderRules>
</ItemRenderer>