public WumpusPerception eventMove(AID hunterAID) {
		
		Hunter hunter = getHunter(hunterAID);

		int previousXCoord = hunter.getxCoord();
		int previousYCoord = hunter.getyCoord();

		hunter = hunter.move();

		int currentXCoord = hunter.getxCoord();
		int currentYCoord = hunter.getyCoord();
		
		WumpusPerception perception = getPerception(worldMap[currentXCoord][currentYCoord]);
		
		if ((previousXCoord == currentXCoord) && (previousYCoord == currentYCoord)) {
			perception.setBump();
		} else {
			worldMap[previousXCoord][previousYCoord].hunters.remove(hunter);
			worldMap[currentXCoord][currentYCoord].hunters.add(hunter);
		}
		
		if (worldMap[currentXCoord][currentYCoord].hasPit()) {
			perception.setState(WumpusConsts.STATE_DEAD);
			hunter.setState(WumpusConsts.STATE_DEAD);
			hunter.setPerformance(hunter.getPerformance() - 1000);
			//hunter.deathByPit();
		}
		
		if ((worldMap[currentXCoord][currentYCoord].hasWumpus()) && (worldMap[currentXCoord][currentYCoord].isWumpusAlive())) {
			perception.setState(WumpusConsts.STATE_DEAD);
			hunter.setState(WumpusConsts.STATE_DEAD);
			hunter.setPerformance(hunter.getPerformance() - 1000);
			//hunter.deathByWumpus();
		}
		
		if (worldMap[currentXCoord][currentYCoord].hasGold()) {
			perception.setGlitter(WumpusConsts.SENSOR_GLITTER);
		}

		notifyHunterListListeners();
		notifyWorldModelListeners();
		return perception;
	}