private bool FindTargetEntity(GameObject other, out IDamageableEntity target)
        {
            target = null;

            if (!IsServer)
            {
                return(false);
            }

            target = other.GetComponent <IDamageableEntity>();

            if (target == null || attacker == null || target.IsDead() || attacker.gameObject == target.gameObject || !target.CanReceiveDamageFrom(attacker))
            {
                return(false);
            }

            if (LockingTarget != null && LockingTarget != target)
            {
                return(false);
            }

            return(true);
        }