EffectDefinition
{
	EffectComponent ParticleEffect "horn_rising_left"
	{
		RepeatTime		0.2
		ParticleLifespan	0.5
		BlendMode		add
		Texture			"data/gfx/particles/hud/corner_horn_mask.png"
		FollowEmitter		true

		EmitterEvents
		{
			SpawnParticles
			{
				count=1
				duration=0
				delay=0
				orientation=[0,0]
				speed=[0, 0]
				rotationalSpeed=[0,0]
				direction=[270,270]
				spawnOffsetAbsX=-370
				spawnOffsetAbsY=-25
			}			
			
			Dynamics
			{
				delay=0.0, absoluteAcceleration=(0,0)
			}
			
		}
		
		ParticleEvents
		{
			RGB
			{
				age=0, rgb=(255,255,255)	
			}
			
			Alpha
			{
				age=0, alpha=0
				age=0.05, alpha=100
				age=1, alpha=0
				
			}
			
			Scale
			{
				age=0, scale=(1.5625, 1.5625)						
				age=1.0, scale=(2.5, 2.5)				
			}

			MoveWithEmitter
			{
				age=0, moveWithEmitter=1
			}
		}
	}
	
	EffectComponent ParticleEffect "horn_rising_right"
	{
		RepeatTime		0.2
		ParticleLifespan	0.5
		BlendMode		add
		Texture			"data/gfx/particles/hud/corner_horn_mask.png"
		FollowEmitter		true

		EmitterEvents
		{
			SpawnParticles
			{
				count=1
				duration=0
				delay=0
				orientation=[0,0]
				speed=[0, 0]
				rotationalSpeed=[0,0]
				direction=[270,270]
				spawnOffsetAbsX=370
				spawnOffsetAbsY=-25
			}			
			
			Dynamics
			{
				delay=0.0, absoluteAcceleration=(0,0)
			}
			
		}
		
		ParticleEvents
		{
			RGB
			{
				age=0, rgb=(255,255,255)	
			}
			
			Alpha
			{
				age=0, alpha=0
				age=0.05, alpha=100
				age=1, alpha=0
				
			}
			
			Scale
			{
				// Remember negative scale
				age=0, scale=(-1.5625, 1.5625)						
				age=1.0, scale=(-2.5, 2.5)				
			}

			MoveWithEmitter
			{
				age=0, moveWithEmitter=1
			}
		}
	}
	
	EffectComponent ParticleEffect "thick alpha smoke"
	{
		RepeatTime		0.1
		ParticleLifespan	[1.5,1.7]
		BlendMode		alpha
		Texture			"data/gfx/particles/smoke_02.png"
		FollowEmitter		true

		EmitterEvents
		{
			// Left
			SpawnParticles
			{
				count=1
				duration=0
				delay=0
				orientation=[0,360]
				speed=[5, 10]
				rotationalSpeed=[-50,-80]
				direction=[265,275]
				spawnOffsetAbsX=-384
				spawnOffsetAbsY=-42
			}			

			// Right
			SpawnParticles
			{
				count=1
				duration=0
				delay=0
				orientation=[0,360]
				speed=[5, 10]
				rotationalSpeed=[50,80]
				direction=[265,275]
				spawnOffsetAbsX=384
				spawnOffsetAbsY=-42
			}
			
			Dynamics
			{
				delay=0.0, absoluteAcceleration=(0,-80)
			}
			
		}
		
		ParticleEvents
		{
			RGB
			{
				age=0, rgb=(255,190,190)	
				age=0.5, rgb=(190,255,190)
				age=1.0, rgb=(190,190,255)
			}
			
			Alpha
			{
				age=0, alpha=0
				age=0.1, alpha=200
				age=1, alpha=0
				
			}
			
			Scale
			{
				age=0, scale=(0.2, 0.2)						
				age=1.0, scale=(1.5, 1.5)				
			}

			MoveWithEmitter
			{
				age=0, moveWithEmitter=1
			}
		}
	}

	EffectComponent ParticleEffect "thin additive smoke"
	{
		RepeatTime		0.2
		ParticleLifespan	[1.5,1.7]
		BlendMode		add
		Texture			"data/gfx/particles/smoke_02.png"
		FollowEmitter		true

		EmitterEvents
		{
			// Left
			SpawnParticles
			{
				count=1
				duration=0
				delay=0
				orientation=[0,360]
				speed=[5, 10]
				rotationalSpeed=[20,30]
				direction=[265,275]
				spawnOffsetAbsX=-384
				spawnOffsetAbsY=-42
			}			

			// Right
			SpawnParticles
			{
				count=1
				duration=0
				delay=0
				orientation=[0,360]
				speed=[5, 10]
				rotationalSpeed=[20,30]
				direction=[265,275]
				spawnOffsetAbsX=384
				spawnOffsetAbsY=-42
			}
			
			Dynamics
			{
				delay=0.0, absoluteAcceleration=(0,-80)
			}
			
		}
		
		ParticleEvents
		{
			RGB
			{
				age=0, rgb=(255,100,100)	
				age=0.5, rgb=(100,255,100)
				age=1.0, rgb=(100,100,255)
					
			}
			
			Alpha
			{
				age=0, alpha=0
				age=0.2, alpha=110
				age=0.5, alpha=110
				age=1, alpha=0
				
			}
			
			Scale
			{
				age=0, scale=(0.2, 0.2)						
				age=1.0, scale=(1.7, 1.7)				
			}

			MoveWithEmitter
			{
				age=0, moveWithEmitter=1
			}
		}
	}

	

	EffectComponent ParticleEffect "sparkles_01_both_sides"
	{
		RepeatTime		1.0
		ParticleLifespan	[2.0,2.1]
		BlendMode		add
		AnimSequence		"sparkle_dust"
		FollowEmitter		true

		EmitterEvents
		{
			// Left
			SpawnParticles
			{
				count=1
				duration=0
				delay=0
				orientation=[0,360]
				speed=[0, 0]
				rotationalSpeed=[-20,-30]
				direction=[0,0]
				spawnOffsetAbsX=-375
				spawnOffsetAbsY=-25
			}			

			// Right
			SpawnParticles
			{
				count=1
				duration=0
				delay=0
				orientation=[0,360]
				speed=[0, 0]
				rotationalSpeed=[20,30]
				direction=[0,0]
				spawnOffsetAbsX=375
				spawnOffsetAbsY=-25
			}
			
			Dynamics
			{
				delay=0.0, absoluteAcceleration=(0,-1)
			}
			
		}
		
		ParticleEvents
		{
			RGB
			{
				age=0, rgb=(150,200,255)	
			}
			
			Alpha
			{
				age=0, alpha=0
				age=0.05, alpha=150
				age=0.5, alpha=150
				age=1, alpha=0
				
			}
			
			Scale
			{
				age=0, scale=(5.5, 5.5)						
				age=1.0, scale=(8.5, 8.5)				
			}

			MoveWithEmitter
			{
				age=0, moveWithEmitter=1
			}
		}
	}

	EffectComponent ParticleEffect "halos_rising_both_sides"
	{
		RepeatTime		0.2
		ParticleLifespan	[1.4,1.4]
		BlendMode		add
		Texture			"data/gfx/particles/blur_ring_32.png"
		FollowEmitter		true

		EmitterEvents
		{
			// Left
			SpawnParticles
			{
				count=1
				duration=0
				delay=0
				orientation=0
				speed=[0, 0]
				rotationalSpeed=0
				direction=[0,0]
				spawnOffsetAbsX=-390
				spawnOffsetAbsY=-30
			}			

			// Right
			SpawnParticles
			{
				count=1
				duration=0
				delay=0
				orientation=0
				speed=[0, 0]
				rotationalSpeed=0
				direction=[0,0]
				spawnOffsetAbsX=390
				spawnOffsetAbsY=-30
			}
			
			Dynamics
			{
				delay=0.0, absoluteAcceleration=(0,-120)
			}
			
		}
		
		ParticleEvents
		{
			RGB
			{
				age=0, rgb=(255,200,150)	
			}
			
			Alpha
			{
				age=0, alpha=0
				age=0.5, alpha=60
				age=1, alpha=0
				
			}
			
			Scale
			{
				age=0, scale=(1.0, 0.75)														
				age=1.0, scale=(4.0, 3.0)						

			}

			MoveWithEmitter
			{
				age=0, moveWithEmitter=1
			}
		}
	}

	EffectComponent ParticleEffect "halo_both_sides_big"
	{
		RepeatTime		3.5
		ParticleLifespan	[3.5,3.5]
		BlendMode		add
		Texture			"data/gfx/particles/blur_ring_32.png"
		FollowEmitter		true

		EmitterEvents
		{
			// Left
			SpawnParticles
			{
				count=1
				duration=0
				delay=0
				orientation=[0,0]
				speed=[0, 0]
				rotationalSpeed=0
				direction=[0,0]
				spawnOffsetAbsX=-380
				spawnOffsetAbsY=-40
			}			

			// Right
			SpawnParticles
			{
				count=1
				duration=0
				delay=0
				orientation=[0,0]
				speed=[0, 0]
				rotationalSpeed=0
				direction=[0,0]
				spawnOffsetAbsX=380
				spawnOffsetAbsY=-40
			}
			
			Dynamics
			{
				delay=0.0, absoluteAcceleration=(0,0)
			}
			
		}
		
		ParticleEvents
		{
			RGB
			{
				age=0, rgb=(170,255,140)	
				age=1, rgb=(140,255,170)
			}
			
			Alpha
			{
				age=0, alpha=0
				age=0.5, alpha=70
				age=1, alpha=0
				
			}
			
			Scale
			{
				age=0, scale=(4.0, 4.0)						
				age=0.5, scale=(5.0, 5.0)						
				age=1.0, scale=(4.0, 4.0)						

			}

			MoveWithEmitter
			{
				age=0, moveWithEmitter=1
			}
		}
	}

	EffectComponent ParticleEffect "side_sparks"
	{
		RepeatTime		0.05
		ParticleLifespan	[0.6,1.0]
		BlendMode		add
		Texture			"data/gfx/particles/blurcircle_8.png"
		FollowEmitter		true

		EmitterEvents
		{
			// Left
			SpawnParticles
			{
				count=1
				duration=0
				delay=0
				orientation=[0,360]
				speed=[100, 130]
				rotationalSpeed=[-20,-30]
				direction=[-90,-30]
				spawnOffsetAbsX=-384
				spawnOffsetAbsY=-42
			}			

			// Right
			SpawnParticles
			{
				count=1
				duration=0
				delay=0
				orientation=[0,360]
				speed=[100, 130]
				rotationalSpeed=[20,30]
				direction=[210,270]
				spawnOffsetAbsX=384
				spawnOffsetAbsY=-42
			}
			
			Dynamics
			{
				delay=0.0, absoluteAcceleration=(0,-300)
			}
			
		}
		
		ParticleEvents
		{
			RGB
			{
				age=0, rgb=(170,255,140)	
				age=1, rgb=(140,255,170)
			}
			
			Alpha
			{
				age=0, alpha=0
				age=0.2, alpha=80
				age=1, alpha=0
				
			}
			
			Scale
			{
				age=0, scale=(1.2, 1.2)						
				age=0.5, scale=(1.5, 1.5)						
				age=1.0, scale=(0.8, 0.8)					

			}

						MoveWithEmitter
			{
				age=0, moveWithEmitter=1
			}
		}
	}
	
}