public void locateTree(MainGame game, Person person) {
		targetTree = null;

		Random rand = new Random();
		int cx = person.getX() + (rand.nextInt(4) - 2);
		int cy = person.getY() + (rand.nextInt(4) - 2);
		
		for(Person fellowPerson : game.people) {
			if(fellowPerson.task == null || !fellowPerson.task.equals(this)) continue;
			
			TaskGatherWood task = (TaskGatherWood)fellowPerson.task;			
			if(task.targetTree != null) {

				cx = task.targetTree.x;
				cy = task.targetTree.y;
				
				while(cx == task.targetTree.x && cy == task.targetTree.y) {
					cx += (rand.nextInt(4) - 2);
					cy += (rand.nextInt(4) - 2);
				}
				
				break;
			}
		}

		this.searchRadius = game.world.width > game.world.height ? game.world.width : game.world.height;
		
		//If no one has a tree already, find one
		for(int r = 0; r < searchRadius; r++) {
			for(int a = 0; a < 360; a++) {
				double angle = Math.toRadians(a);
				int x = (int)(cx + r * Math.cos(angle));
				int y = (int)(cy + r * Math.sin(angle));
				
				Tile tile = game.world.getTile(x, y);
				if(tile == null) continue;
				if(tile.getID() != World.tree.getID()) continue;
				if(((TileResource)tile).getResource() != "Wood") continue;
				
				targetTree = new Point(x,y);
				return;
			}
		}
	}