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); } } }