void UpdateToggle <TBehavior>(Toggle toggle, TeleportOrientationHandler.OrientationModes mode) where TBehavior : TeleportOrientationHandlerThumbstick { var component = GetExactComponent <TBehavior>(); var isEnabled = component.enabled && component.OrientationMode == mode; UpdateToggle(toggle, isEnabled); }
Toggle SetupToggle <TCategory, TActivate>(string label, TeleportOrientationHandler.OrientationModes mode) where TCategory : MonoBehaviour where TActivate : TeleportOrientationHandlerThumbstick { var toggle = AddToggle(label); toggle.onValueChanged.AddListener((b) => { if (!_updating) { var orientationComponent = ActivateCategory <TCategory, TActivate>(); orientationComponent.OrientationMode = mode; } }); return(toggle); }