public override void OnDeselected()
    {
        base.OnDeselected();

        grabObjectAction.RemoveOnUpdateListener(GrabObject, castingHand.handType);
        pullPushAction.RemoveOnChangeListener(SetPullPushMode, castingHand.handType);
        isGrabbing           = false;
        isPullPushModeActive = false;
        particles.Stop();

        if (currentTarget != null)
        {
            currentTarget.OnRelease();
        }
    }