import java.util.ArrayList;

public class Statistics
{
	private int patientTotal;	
	private int deathTotal;
	private int z = 0;
	
	private int patientID;
	private int Xcoordinate;
	private int Ycoordinate;
	
	private ArrayList<Event> deaths;
	private ArrayList<Event> pickup;
	
	public Statistics()
	{
		deaths = new ArrayList<Event>();
		pickup = new ArrayList<Event>();
	}

	public void addEvent(int X, int Y, int ID, String status)
	{
		if (status.equals("dead"))
		{
			deaths.add(new Event(X, Y, ID, status));
			printStatDeath();
			
		}
		else 
		{
			if (status.equals("pickedup")) 
			{
				pickup.add(new Event(X, Y, ID, status));
				printStatPickup();
			}
		}
	}
	
	public void printStatDeath()
	{
		Event d = deaths.get(deaths.size() - 1);
		System.out.println("Patient " +d.getpatientID() +" died at location " +d.getXcoordinate() +"," +d.getYcoordinate() );
		addDeathTotal();
	}
	
	public void printStatPickup()
	{
		Event p = pickup.get(deaths.size() - 1);
		System.out.println("Patient " +p.getpatientID() +" was picked up at location " +p.getXcoordinate() +"," +p.getYcoordinate() );
		addPatientTotal();
	}

	public void addPatientTotal()
	// increment a patient
	{
		patientTotal++;

	}
	
	public void addDeathTotal()
	// increment a death
	{
		deathTotal++;
	}

	public int getDeaths()
	{
		return deathTotal;
	}

	public int getPatientTotal()
	{
		return patientTotal;
	}
	
	public void getQuickStats()
	{
		System.out.println("**********************************");
		System.out.println("*                                *");
		System.out.println("*          Quick Stats           *");
		System.out.println("*                                *");
		System.out.println("**********************************");
		System.out.println("");
		System.out.println("Deaths for the current day: " +getDeaths() +" death(s)");
		System.out.println("Patients picked up by ambulances today: " +getPatientTotal() +" patient(s)");
	}

	public void getCurrentPosition(int ID)
	{
		int i = 0;
		int z = 0;
		
		Event d = deaths.get(i);
		Event p = pickup.get(z);
		
		for(i=0; i<deaths.size(); i++)
		{
			if(d.getpatientID() == ID)
			{
				System.out.println("Patient " +d.getpatientID() +" is currently at the morgue");
			}
		}
		
		for(z=0; z<pickup.size(); z++)
		{
			if(p.getpatientID() == ID)
			{
				System.out.println("Patient " +p.getpatientID() +" is currently located at position " +p.getXcoordinate()
			+"," +p.getYcoordinate());
			}
		}
	}
}