public void StopGrabbingObject(InteractableGrabbable grabbableObject)
    {
        m_GrabbedObject.transform.parent = transform.root;
        Collider2D grabObjectCollider = grabbableObject.GetComponent <Collider2D>();

        grabbableObject.SetIsGrabbing(false);

//		if( grabObjectCollider != null )
//		{
//			grabObjectCollider.isTrigger = false;
//		}

        m_MovementModel.SetIsPushing(false);
        m_GrabbedObject.SetIsGrabbing(false);
        m_MovementModel.RestrictXAxis(false);
        m_MovementModel.RestrictYAxis(false);
        m_GrabbedObject = null;
    }
    public void GrabObject(InteractableGrabbable grabbableObject, Character character)
    {
        m_GrabbedObject = grabbableObject;
        m_GrabbedObject.transform.parent = m_MovementModel.pickupItemParent;
        m_MovementModel.SetIsPushing(true);
        Vector3 facingDirection = m_MovementModel.GetFacingDirectionNoDiagonal();

        m_MovementModel.SetPushingDirection(facingDirection);
        if (grabbableObject.GetRestrict())
        {
            if (facingDirection == Helper.LEFT || facingDirection == Helper.RIGHT)
            {
                Debug.Log("facing left or right");
                m_MovementModel.RestrictYAxis(true);
            }
            else
            {
                Debug.Log("facing up or down");
                m_MovementModel.RestrictXAxis(true);
            }
        }
    }