if ((actor.getRealDistance3D(target) <= (actor.getPhysicalAttackRange() + 40)) && GeoEngine.canSeeTarget(actor, target, false))
{
clientStopMoving();
_pathfindFails = 0;
setAttackTimeout(getMaxAttackTimeout() + System.currentTimeMillis());
actor.doAttack(target);
return maybeNextTask(currentTask);
}
if (actor.isMovementDisabled() || !getIsMobile())
{
return true;