package net.phatcode.rel;

import net.phatcode.rel.math.Spline;
import net.phatcode.rel.math.Utils;
import net.phatcode.rel.math.Vector2D;

public class EnemyEntity extends Entity
{
	class TurretBehaviorInfo
	{
		float angle = Utils.PI / 2;
		float minAngle = 0;
		float maxAngle = Utils.PI * 2;
		float angleDelta = 0.1f;
		int angleDirection =  1;
		boolean seekPlayer = false;
		
		public TurretBehaviorInfo()
		{
			
		}

		public TurretBehaviorInfo( float angle,
								   float minAngle,
								   float maxAngle,
								   float angleDelta,
								   int angleDirection,
								   boolean seekPlayer )
		{
			this.angle = angle;
			this.minAngle = minAngle;
			this.maxAngle = maxAngle;
			this.angleDelta = angleDelta;
			this.angleDirection =  angleDirection;
			this.seekPlayer = seekPlayer;
		}

	}
	
	protected Spline spline = new Spline();
	protected RenderMode renderMode = RenderMode.NORMAL;
	protected int Hp = 1;
	protected boolean killMe = false;
	
	public EnemyEntity( )
	{
		
	}
	
	public void update()
	{
		
	}
	public void update(  BulletFactory bulletFactory, Vector2D playerShipPosition )
	{
		
	}
	
	public int getFrame()
	{
		return animator.getFrame();
	}

	public RenderMode getRenderMode()
	{
		return renderMode;
	}

	public void setRenderMode( RenderMode renderMode )
	{
		this.renderMode = renderMode;
	}

	public int getHp()
	{
		return Hp;
	}

	public void setHp( int hp )
	{
		Hp = hp;
	}
	
	public void decHp( int v )
	{
		Hp -= v;
	}

	public boolean isKillMe()
	{
		return killMe;
	}

	public void setKillMe(boolean killMe)
	{
		this.killMe = killMe;
	}
	
	
	
}
