示例#1
0
        public async Task be_always_no_active()
        {
            var toggle = new OnToggle();
            var active = await toggle.IsActiveAsync(Constants.FeatureName, Constants.ProductName);

            active.Should().BeFalse();
        }
示例#2
0
        public override void OnUpdate()
        {
            if (Input.GetKeyUp(Key))
            {
                State = !State;
            }

            if (State && !prevState)
            {
                OnEnable?.Invoke();
                OnToggle?.Invoke();
            }
            else if (!State && prevState)
            {
                OnDisable?.Invoke();
                OnToggle?.Invoke();
            }


            if (State)
            {
                Funky?.Invoke();
            }

            prevState = State;
        }
示例#3
0
 public IconBar(int x, int y, Texture2D texture, int w = 45, int h = 45)
     : base(x, y, w, h, texture, alpha: 1f)
 {
     AddEventListener(Drawing.Events.Event.CLICKLEFT, delegate
     {
         OnToggle?.Invoke();
     });
 }
示例#4
0
    void HandleClick()
    {
        isOn = !isOn;

        target.sprite = isOn ? spriteOn : spriteOff;

        OnToggle?.Invoke(isOn);
        OnToggleEvent.Invoke();
    }
示例#5
0
 public void InvokeToggleGUI(bool bToggled)
 {
     if ((bool)(OnToggle?.Invoke(this, bToggled)))
     {
         OnShowGUI?.Invoke(this);
     }
     else
     {
         OnHideGUI?.Invoke(this);
     }
 }
        public void ToggleEditMode()
        {
            if (OnToggle == null)
            {
                return;
            }



            IsInEditMode = !IsInEditMode;
            OnToggle.Invoke();
        }
示例#7
0
 public void OnSelectAtkActionButton(PlayerSeat Seat, AbilityID Id)
 {
     if (Seat == seat && ability != null && Id == ability.Ability.AbilityID)
     {
         OnToggle.Invoke(!actionOutline.Active);
         GameEvents.Instance.Notify <IActionBoard>(i => i.OnBoardActionCheck(seat, actionOutline.Active ? ability : null));
     }
     else
     {
         OnToggle.Invoke(false);
     }
 }
示例#8
0
        public override void Instantiate()
        {
            if (initialized)
            {
                return;
            }

            //We have to find our own target
            //TODO: Clean up time complexity issue. This is called for each new option
            SoloFreePlayFlowCoordinator sfpfc = Resources.FindObjectsOfTypeAll <SoloFreePlayFlowCoordinator>().First();
            GameplaySetupViewController gsvc  = sfpfc.GetField <GameplaySetupViewController>("_gameplaySetupViewController");
            RectTransform container           = (RectTransform)gsvc.transform.Find("GameplayModifiers").Find("RightColumn");

            gameObject                         = UnityEngine.Object.Instantiate(container.Find("NoFail").gameObject, container);
            gameObject.name                    = optionName;
            gameObject.layer                   = container.gameObject.layer;
            gameObject.transform.parent        = container;
            gameObject.transform.localPosition = Vector3.zero;
            gameObject.transform.localScale    = Vector3.one;
            gameObject.transform.rotation      = Quaternion.identity;
            gameObject.SetActive(false);

            var gmt = gameObject.GetComponent <GameplayModifierToggle>();

            if (gmt != null)
            {
                gmt.toggle.isOn = GetValue;
                gmt.toggle.onValueChanged.RemoveAllListeners();
                gmt.toggle.onValueChanged.AddListener((bool e) => { OnToggle?.Invoke(e); });

                GameplayModifierParamsSO _gameplayModifier = new GameplayModifierParamsSO();
                _gameplayModifier.SetPrivateField("_modifierName", optionName);
                _gameplayModifier.SetPrivateField("_hintText", hintText);
                _gameplayModifier.SetPrivateField("_multiplier", 0.0f);
                _gameplayModifier.SetPrivateField("_icon", optionIcon == null ? gmt.GetPrivateField <GameplayModifierParamsSO>("_gameplayModifier").icon : optionIcon);
                gmt.SetPrivateField("_gameplayModifier", _gameplayModifier);

                if (hintText != String.Empty)
                {
                    var hoverHint = gmt.GetPrivateField <HoverHint>("_hoverHint");
                    hoverHint.text    = hintText;
                    hoverHint.name    = optionName;
                    hoverHint.enabled = true;
                    var hoverHintController = Resources.FindObjectsOfTypeAll <HoverHintController>().First();
                    hoverHint.SetPrivateField("_hoverHintController", hoverHintController);
                }
            }



            initialized = true;
        }
 private async Task Toggle(ReferenceType type, bool status)
 {
     if (status)
     {
         BitMask |= type;
     }
     else
     {
         BitMask &= ~type;
     }
     StateHasChanged();
     await OnToggle.InvokeAsync(type);
 }
示例#10
0
 public bool CheckCorrectItem(BasicItem item)
 {
     if (item?.Kind != RequiredItem)
     {
         OnWrongItem.Invoke();
         return(false);
     }
     else
     {
         OnToggle.Invoke();
         return(true);
     }
 }
示例#11
0
        private static bool Prefix(OnToggle __instance)
        {
            var buyNum = 1;

            if (Input.GetKey(KeyCode.LeftShift) || Input.GetKey(KeyCode.RightShift))
            {
                buyNum = -99;
            }
            Main.Logger.Log($"{__instance.name} = {buyNum}");
            ShopSystem.instance.ChangeItem(int.Parse(__instance.name.Split(',')[1]), int.Parse(__instance.name.Split(',')[2]), int.Parse(__instance.name.Split(',')[3]), buyNum);
            ShopSystem.instance.UpdateMoneyText();
            return(false);
        }
示例#12
0
        public void Hide(string id)
        {
            if (id == null || id == "")
            {
                throw new InvalidOperationException("Id must be used with Drop Down Manager");
            }

            foreach (KeyAndValue <string, bool> menu in MenuState)
            {
                menu.Value = false;
            }
            OnToggle.Invoke(this, new EventArgs());
        }
示例#13
0
        public override void Instantiate()
        {
            gameObject       = UnityEngine.Object.Instantiate(Resources.FindObjectsOfTypeAll <GameplayModifierToggle>().Where(g => g.transform.Find("BG"))?.Last().gameObject, Container);
            gameObject.name  = optionName;
            gameObject.layer = Container.gameObject.layer;
            gameObject.transform.SetParent(Container);
            gameObject.transform.localPosition = Vector3.zero;
            gameObject.transform.localScale    = Vector3.one;
            gameObject.transform.rotation      = Quaternion.identity;
            gameObject.SetActive(false);

            // Add a separator for this menu option
            AddSeparator(Container);

            // Remove the multiplier text if the toggle has no multiplier
            if (multiplier == 0)
            {
                gameObject.AddComponent <ToggleNameOverride>();
            }

            var currentToggle = gameObject.GetComponent <GameplayModifierToggle>();

            if (currentToggle != null)
            {
                currentToggle.toggle.isOn = GetValue;
                currentToggle.toggle.onValueChanged.RemoveAllListeners();
                currentToggle.toggle.onValueChanged.AddListener((bool e) => OnToggle?.Invoke(e));
                currentToggle.name = optionName;

                GameplayModifierParamsSO _gameplayModifier = ScriptableObject.CreateInstance <GameplayModifierParamsSO>();
                _gameplayModifier.SetPrivateField("_modifierName", optionName);
                _gameplayModifier.SetPrivateField("_hintText", hintText);
                _gameplayModifier.SetPrivateField("_multiplier", multiplier);
                _gameplayModifier.SetPrivateField("_icon", optionIcon == null ? UIUtilities.BlankSprite : optionIcon);
                currentToggle.SetPrivateField("_gameplayModifier", _gameplayModifier);

                if (hintText != String.Empty)
                {
                    HoverHint hoverHint = currentToggle.GetPrivateField <HoverHint>("_hoverHint");
                    hoverHint.text = hintText;
                    hoverHint.name = optionName;
                    HoverHintController hoverHintController = Resources.FindObjectsOfTypeAll <HoverHintController>().First();
                    hoverHint.SetPrivateField("_hoverHintController", hoverHintController);
                }
            }
            initialized = true;
        }
示例#14
0
        public MySwitch()
        {
            HeightRequest = 30.0;

            InitializeComponent();

            BindingContext = this;

            var tapGestureRecognizer = new TapGestureRecognizer();

            tapGestureRecognizer.Tapped += (s, e) =>
            {
                IsSelected = !IsSelected;
                OnToggle?.Invoke(this, e);
            };

            _image.GestureRecognizers.Add(tapGestureRecognizer);
        }
示例#15
0
 public void OnSelectMoheActionButton(PlayerSeat Seat, string instanceId)
 {
     if (Seat == seat && moheData != null && moheData.InstanceID == instanceId)
     {
         if (!waitingForSwap)
         {
             OnToggle.Invoke(true);
         }
         else
         {
             OnToggle.Invoke(false);
             GameEvents.Instance.Notify <IMoheSwap>(i => i.OnMoheSwap(seat, moheData.InstanceID));
         }
     }
     else
     {
         OnToggle.Invoke(false);
     }
 }
        public void Toggle(string id)
        {
            if (id == null || id == "")
            {
                throw new InvalidOperationException("Id must be used with Drop Down Manager");
            }

            foreach (var menu in MenuState)
            {
                if (menu.Key == id)
                {
                    menu.Value = !menu.Value;
                }
                else
                {
                    menu.Value = false;
                }
            }
            OnToggle.Invoke(this, new EventArgs());
        }
示例#17
0
 public static void ToggleInverted() => OnToggle?.Invoke();
示例#18
0
        internal void ToggleNavMap(bool ignoreCursorLock = false)
        {
            if (MapRenderer.i == null)
            {
                return;
            }

            scrollRect.StopMovement();

            isOpen = !isOpen;
            scrollRect.gameObject.SetActive(isOpen);
            MapRenderer.i.parcelHighlightEnabled = isOpen;

            if (isOpen)
            {
                cursorLockedBeforeOpening = Utils.isCursorLocked;
                if (!ignoreCursorLock && cursorLockedBeforeOpening)
                {
                    Utils.UnlockCursor();
                }

                minimapViewport          = MapRenderer.i.atlas.viewport;
                mapRendererMinimapParent = MapRenderer.i.transform.parent;
                atlasOriginalPosition    = MapRenderer.i.atlas.chunksParent.transform.localPosition;

                MapRenderer.i.atlas.viewport = scrollRect.viewport;
                MapRenderer.i.transform.SetParent(scrollRectContentTransform);
                MapRenderer.i.atlas.UpdateCulling();

                scrollRect.content = MapRenderer.i.atlas.chunksParent.transform as RectTransform;

                // Reparent the player icon parent to scroll everything together
                MapRenderer.i.atlas.overlayLayerGameobject.transform.SetParent(scrollRect.content);

                // Center map
                MapRenderer.i.atlas.CenterToTile(Utils.WorldToGridPositionUnclamped(CommonScriptableObjects.playerWorldPosition));

                // Set shorter interval of time for populated scenes markers fetch
                MapRenderer.i.usersPositionMarkerController?.SetUpdateMode(MapGlobalUsersPositionMarkerController.UpdateMode.FOREGROUND);

                AudioScriptableObjects.dialogOpen.Play(true);

                CommonScriptableObjects.isFullscreenHUDOpen.Set(true);
            }
            else
            {
                if (!ignoreCursorLock && cursorLockedBeforeOpening)
                {
                    Utils.LockCursor();
                }

                toastView.OnCloseClick();

                MapRenderer.i.atlas.viewport = minimapViewport;
                MapRenderer.i.transform.SetParent(mapRendererMinimapParent);
                MapRenderer.i.atlas.chunksParent.transform.localPosition = atlasOriginalPosition;
                MapRenderer.i.atlas.UpdateCulling();

                // Restore the player icon to its original parent
                MapRenderer.i.atlas.overlayLayerGameobject.transform.SetParent(MapRenderer.i.atlas.chunksParent.transform.parent);
                (MapRenderer.i.atlas.overlayLayerGameobject.transform as RectTransform).anchoredPosition = Vector2.zero;

                MapRenderer.i.UpdateRendering(Utils.WorldToGridPositionUnclamped(CommonScriptableObjects.playerWorldPosition.Get()));

                // Set longer interval of time for populated scenes markers fetch
                MapRenderer.i.usersPositionMarkerController?.SetUpdateMode(MapGlobalUsersPositionMarkerController.UpdateMode.BACKGROUND);

                AudioScriptableObjects.dialogClose.Play(true);
                CommonScriptableObjects.isFullscreenHUDOpen.Set(false);
            }

            OnToggle?.Invoke(isOpen);
        }
示例#19
0
 public void Toggle()
 {
     OnToggle.Invoke();
 }
 private void Toggle()
 {
     IsOn = !IsOn;
     OnToggle.Dispatch(IsOn);
 }
示例#21
0
 public void OnResetAtkActionButton()
 {
     OnToggle.Invoke(false);
 }
示例#22
0
 public void SetOnToggle(OnToggle onToggle)
 {
     _onToggle = onToggle;
 }
示例#23
0
 private void HandleTriggerDown(float triggerValue)
 {
     OnToggle?.Invoke();
 }
示例#24
0
 public void SetOnToggle(OnToggle onToggle)
 {
     this.onToggle = onToggle;
 }
示例#25
0
 protected override void OnMouseClick(MouseButtonEventArgs data)
 {
     On = !On;
     OnToggle?.Invoke(this, EventArgs.Empty);
 }
示例#26
0
 void On_ToggleValue_Changed(bool isOn)
 {
     OnToggle.Dispatch(this);
 }
 public override bool Toggle()
 {
     Value = _state;
     OnToggle?.Invoke(Value);
     return(Value);
 }
示例#28
0
 public virtual void HandleNoEnergyToggleDidSwitch(HMUI.Toggle toggle, bool isOn)
 {
     this.Value = isOn;
     ModPrefs.SetBool(Plugin.PluginName, _prefKey, isOn);
     OnToggle?.Invoke(isOn);
 }
示例#29
0
 public void Toggle()
 {
     Active = !Active;
     OnToggle?.Invoke();
 }
 public void Set(bool descending)
 {
     SetWithoutNotify(descending);
     OnToggle?.Invoke(descending);
 }