public void changePosition(Player player, ArrayList <Monster> monsters)
	{
		Rectangle newPosition = new Rectangle(
				position.x + direction.x, 
				position.y + direction.y,
				WIDTH, HEIGHT); 
	
		// If I'm hitting a player, tell him and then get set to die
		if (newPosition.intersects(player.getBox()))
		{
			player.setHit(true);
			quadrant = Map.OUT_OF_BOUNDS;
			return;
		}
		
		// if I hit a monster, tell the monster, then die
		for (int i=0; i<monsters.size(); i++)
		{
			if (newPosition.intersects(monsters.get(i).getBox()))
			{
				monsters.get(i).setHit(true);
				
				if (isPlayerBullet)
					monsters.get(i).setHitByPlayer(true);
				
				quadrant = Map.OUT_OF_BOUNDS;
				return;
			}
		}
		
		// if I hit a wall, set my quadrant to die
		for (int i=0; i<walls[quadrant].size(); i++)
		{
			if (newPosition.intersects(walls[quadrant].get(i)))
			{
				quadrant = Map.OUT_OF_BOUNDS;
				return;
			}
		}
		
		// finally: move and figure out where I am
		position.x += direction.x;
		position.y += direction.y;
		determineQuadrant();
	}