public void draw(Graphics g){
		g.setColor(Color.BLACK);
		g.fillRect(50 * location.x, 50 * location.y, 50, 50);
		g.setColor(Color.CYAN.brighter());
		g.drawRect(50 * location.x, 50 * location.y, 50, 50);
		g.drawLine(50 * location.x, 50 * location.y+50, 50*location.x+50,50 * location.y);
		g.drawOval( 50 * location.x, 50 * location.y, 50,50);
		g.setColor(Color.GREEN);
		g.drawString(new Integer(health).toString(), 50 * location.x , 50 * location.y );
		g.drawString(new Integer(level).toString(), 50*location.x, 50*location.y + 50);
		if (drawShot && enemy != null && numEnemiesInRange > 0){
			g.setColor(Color.CYAN.brighter());
			if (!abilityIsOn){
				Point l = enemy.getExactLocation();
				g.drawLine(50 * location.x + 25, 50 * location.y + 25, l.x, l.y);
			}
			else{
				for (Enemy e : enemies){
					g.drawLine(50*location.x+25, 50*location.y+25, e.getExactLocation().x, e.getExactLocation().y);
				}
			}
		}
		if (towerMode == Mode.FARTHEST)
			g.setColor(Color.YELLOW);
		else if (towerMode == Mode.WEAKEST)
			g.setColor(Color.GREEN);
		else
			g.setColor(Color.RED);
		g.fillRect(50 * location.x + 1, 50 * location.y + 1, 7, 7);
		drawShot = !drawShot;
	}