using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.Xna.Framework;
using ShootingHero.Scene;
using Microsoft.Xna.Framework.Graphics;
using ShootingHero.Components.Manager;
using ShootingHero.Components.Bullets.PlayerBullet;

namespace ShootingHero.Components.Players
{
	class Sentrik : Player
	{
		public Sentrik ( Game game )
			: base ( game, Character.Gloria )
		{

		}

		protected override void LoadContent ()
		{
			base.LoadContent ();
			Animation.Texture = Game.Content.Load<Texture2D> ( "Character/sentrik" );
		}

		public override void ShootBullet ( BulletManager bulletManager )
		{
			int level = IsSuperMode ? 5 : Level;
			switch ( level )
			{
				case 1:
					bulletManager.Add ( new SentrikBullet ( Game, X, Y - 40, 0, 1, false, false ) );
					break;
				case 2:
					bulletManager.Add ( new SentrikBullet ( Game, X, Y - 40, 0, 2, false, false ) );
					break;
				case 3:
					bulletManager.Add ( new SentrikBullet ( Game, X, Y - 40, 0, 2, false, false ) );
					bulletManager.Add ( new SentrikBullet ( Game, X, Y - 40, 0, 1, false, true ) );
					break;
				case 4:
					bulletManager.Add ( new SentrikBullet ( Game, X, Y - 40, 0, 2, false, false ) );
					bulletManager.Add ( new SentrikBullet ( Game, X, Y - 40, 0, 2, false, true ) );
					break;
				case 5:
					bulletManager.Add ( new SentrikBullet ( Game, X - 30, Y - 40, 0, 1, false, false ) );
					bulletManager.Add ( new SentrikBullet ( Game, X + 30, Y - 40, 0, 1, false, false ) );
					bulletManager.Add ( new SentrikBullet ( Game, X, Y - 40, 0, 2, false, true ) );
					break;
			}
		}

		public override void Boom ( BulletManager bulletManager )
		{
			bulletManager.Add ( new SentrikBullet ( Game, 60, 850, 0, 3, true, false ) );
			bulletManager.Add ( new SentrikBullet ( Game, 180, 850, 0, 3, true, false ) );
			bulletManager.Add ( new SentrikBullet ( Game, 320, 850, 0, 3, true, false ) );
			bulletManager.Add ( new SentrikBullet ( Game, 420, 850, 0, 3, true, false ) );
		}
	}
}
