public boolean hasValidTarget(final Creature creature) { if (!creature.isAttacking()) { return false; } final RPEntity victim = creature.getAttackTarget(); if (victim.isInvisibleToCreatures()) { return false; } if (!victim.getZone().equals(creature.getZone())) { return false; } if (!creature.getZone().has(victim.getID())) { return false; } return creature.squaredDistance(victim) < (FOLLOW_RADIUS * FOLLOW_RADIUS); }
@Override protected boolean isAllowed(final RPEntity user) { return (has("locked") && user.isEquipped(get("locked"), requiredAmount)); }