public void gatherObectives(UQuest plugin, Player player, Quester quester) {
		for(Objective objective : this.objectives){
			if(objective.getType() == "gather") {
	        	int questLevel = 1;
				if(plugin.isScaleQuestLevels()){
					questLevel = plugin.getQuestInteraction().getQuestLevel(player)+1;
	    		}
				int amounthave = quester.getTracker(plugin, objective.getObjectiveName());
				int amountNeeded = objective.getAmountNeeded()*questLevel;
				if(amounthave < amountNeeded) {
					int itemcount = objective.countItems(player, Integer.parseInt(objective.getObjectiveName()), (short) objective.getItemDurability());
					if(itemcount > 0) {
						if(itemcount > (amountNeeded - amounthave)) {
							int keep = itemcount - (amountNeeded - amounthave);
							itemcount = itemcount - keep;
						}
						objective.removeItem(player, Integer.parseInt(objective.getObjectiveName()), (short) objective.getItemDurability(), itemcount, null);	
						quester.addToTracker(plugin, objective.getObjectiveName(), itemcount);
					}
					player.sendMessage(UQuestUtils.formatUpdateMessage("gather", objective.getDisplayname(), quester.getTracker(plugin, objective.getObjectiveName()), amountNeeded));
				}
			}
		}
	}