private Location findFood(Location location) {
        List<Location> adjacent = getField().adjacentLocations(location);
        Iterator<Location> it = adjacent.iterator();
        while (it.hasNext()) {
            Location where = it.next();
            Object character = getField().getObjectAt(where);
            // XXX: Caster mieux...
            Character c = null;
            try {
            	c = (Character) character;
            } catch (ClassCastException e) {
            	continue;
            }
            if (c != null) {
                if (c.getCharacter() ==  TypeCharacter.HUMAN) {
                    Human h = (Human) character;
                    if (h.getAlive()) {
                    	if(isThirsty){
                    		bite(h);
                    		return where;
                    	}
                    	else{
                    		attack(h);
                    		if(!h.getAlive()){
                    			h.setDead();
                    		}
                    	}
                    }
                }
            }
        }
        return null;
    }