void tryToAttackTarget(Entity target) {
		if (target == null) {
			throw new IllegalArgumentException();
		}
		boolean withinDistance = isLocationWithinDistance(target.getLocation(),
				attack.getRange());
		if (attack.isReady() && withinDistance && !isStunned()) {
			attackTarget(target);
		}
	}