// Release conditions are a little different than grab bool inputCheckRelease() { var grabbingGrabbable = RemoteGrabbingItem ? flyingGrabbable : HeldGrabbable; // Can't release anything we're not holding if (grabbingGrabbable == null) { return(false); } // Check Hold Controls HoldType closestHoldType = getHoldType(grabbingGrabbable); GrabButton closestGrabButton = GetGrabButton(grabbingGrabbable); if (closestHoldType == HoldType.HoldDown) { return(getGrabInput(closestGrabButton) <= ReleaseGripAmount); } // Check for toggle controls else if (closestHoldType == HoldType.Toggle) { return(getToggleInput(closestGrabButton)); } return(false); }
bool getToggleInput(GrabButton btn) { if (input == null) { return(false); } // Left Hand if (HandSide == ControllerHand.Left) { if (btn == GrabButton.Grip) { return(input.LeftGripDown); } else if (btn == GrabButton.Trigger) { return(input.LeftTriggerDown); } } // Right Hand else if (HandSide == ControllerHand.Right) { if (btn == GrabButton.Grip) { return(input.RightGripDown); } else if (btn == GrabButton.Trigger) { return(input.RightTriggerDown); } } return(false); }
public virtual bool GetInputDownForGrabbable(Grabbable grabObject) { if (grabObject == null) { return(false); } // Check Hold Controls HoldType closestHoldType = getHoldType(grabObject); GrabButton closestGrabButton = GetGrabButton(grabObject); // Hold to grab controls if (closestHoldType == HoldType.HoldDown) { bool grabInput = getGrabInput(closestGrabButton) >= GripAmount; if (closestGrabButton == GrabButton.Grip && !FreshGrip) { return(false); } //if(HandSide == ControllerHand.Left && InputBridge.Instance.LeftTrigger > 0.9f) { // Debug.Log("Trigger Down"); //} return(grabInput); } // Check Toggle Controls else if (closestHoldType == HoldType.Toggle) { return(getToggleInput(closestGrabButton)); } return(false); }
// Use this for initialization void Start() { if (!multiplayer) { mygrabbutton = FindObjectOfType <GrabButton>(); } }
public void OnGrab(GrabButton _grab) { grab = _grab.grab; if (grab) { //Debug.Log("grab it hoe"); } }
// Start is called before the first frame update void Start() { facingRight = true; myRigidBody = GetComponent <Rigidbody2D>(); myAnimator = GetComponent <Animator>(); myBodyCollider = GetComponent <CapsuleCollider2D>(); myFeet = GetComponent <CircleCollider2D>(); myjoystick = FindObjectOfType <Joystick>(); myjumpbutton = FindObjectOfType <JumpButton>(); switchPlayerButton = FindObjectOfType <SwitchPlayerButton>(); myattackbutton = FindObjectOfType <AttackButton>(); mygrabbutton = FindObjectOfType <GrabButton>(); }
public virtual GrabButton GetGrabButton(Grabbable grab) { GrabButton grabButton = grab.GrabButton; // Inherit from Grabber if (grabButton == GrabButton.Inherit) { grabButton = DefaultGrabButton; } // Inherit isn't a value in itself. Use "Grip" instead and warn the user if (grabButton == GrabButton.Inherit) { grabButton = GrabButton.Grip; Debug.LogWarning("Inherit found on both Grabber and Grabbable. Consider updating the Grabber's DefaultHoldType"); } return(grabButton); }
float getGrabArrowInput() { // If we are holding an arrow, check the arrow details for input if (arrowGrabber != null && arrowGrabbable != null) { GrabButton grabButton = arrowGrabber.GetGrabButton(arrowGrabbable); // Grip Controls if (grabButton == GrabButton.Grip) { return(getGripInput(arrowGrabber.HandSide)); } // Trigger else if (grabButton == GrabButton.Trigger) { return(getTriggerInput(arrowGrabber.HandSide)); } } return(0); }
// See if we are inputting controls to grab an item protected virtual bool inputCheckGrab() { // Can only hold one grabbable at a time if (HeldGrabbable != null) { return(false); } // Nothing nearby to grab Grabbable closest = getClosestOrRemote(); if (closest == null) { return(false); } // Check Hold Controls HoldType closestHoldType = getHoldType(closest); GrabButton closestGrabButton = GetGrabButton(closest); // Hold to grab controls if (closestHoldType == HoldType.HoldDown) { bool grabInput = getGrabInput(closestGrabButton) >= GripAmount; if (closestGrabButton == GrabButton.Grip && !FreshGrip) { return(false); } return(grabInput); } // Toggle controls else if (closestHoldType == HoldType.Toggle) { return(getToggleInput(closestGrabButton)); } return(false); }
float getGrabInput(GrabButton btn) { float gripValue = 0; if (input == null) { return(0); } // Left Hand if (HandSide == ControllerHand.Left) { if (btn == GrabButton.Grip) { gripValue = input.LeftGrip; } else if (btn == GrabButton.Trigger) { gripValue = input.LeftTrigger; } } // Right Hand else if (HandSide == ControllerHand.Right) { if (btn == GrabButton.Grip) { gripValue = input.RightGrip; } else if (btn == GrabButton.Trigger) { gripValue = input.RightTrigger; } } return(gripValue); }
// Use this for initialization void Start() { mygrabbutton = FindObjectOfType <GrabButton>(); }