Пример #1
0
        protected static T Create <T>(T template, EMaskEffect effect, Action <EResult> dialogResult) where T : ModalDialog
        {
#if DEDICATED_SERVER
            return(null);
#else
            T dialog = Instantiate(template);
            dialog._result            = dialogResult;
            dialog.defaultAcceptValid = true;

            GameManager.instance.dialogManager.AddDialog(dialog.gameObject, effect == EMaskEffect.Darken);
            return(dialog);
#endif
        }
Пример #2
0
        static MessageBox Create(EType type, EMaskEffect effect, Action <EResult> dialogResult)
        {
            var mb = Create(GameManager.instance.clientData.messageBoxPrefab, effect, dialogResult);

            int typeIndex = (int)type;

            for (int i = 0; i < mb._icons.Length; ++i)
            {
                mb._icons[i].gameObject.SetActive(i == typeIndex);
            }

            if ((mb._sounds != null) && (typeIndex < mb._sounds.Length))
            {
                GameManager.instance.PlaySound(Vector3.zero, mb._sounds[typeIndex]);
            }

            return(mb);
        }
        public static void Display(LineEditDialog template, string title, string message, string inputText, string okButtonText, string cancelButtonText, EMaskEffect effect, Action <EResult> dialogResult, ValidateInputDelegate validate)
        {
            var dialog = Create(template, effect, dialogResult);

            dialog._validate             = validate;
            dialog._title.text           = title;
            dialog._message.text         = message;
            dialog._input.text           = inputText;
            dialog._buttonLabels[0].text = okButtonText;
            dialog._buttonLabels[1].text = cancelButtonText;

            dialog._buttons[0].onClick.AddListener(() => {
                dialog.Close(EResult.OK);
            });

            dialog._buttons[1].onClick.AddListener(() => {
                dialog.Close(EResult.Cancel);
            });

            value = inputText;

            dialog._input.onValueChanged.AddListener(dialog.Validate);
            EventSystem.current.SetSelectedGameObject(dialog._input.gameObject);

            dialog.Validate(inputText);
            dialog.Center();
            dialog.WaitForKeys(EResult.OK, EResult.Cancel);
        }
 public static void Display(LineEditDialog template, string title, string message, string inputText, EMaskEffect effect, Action <EResult> dialogResult, ValidateInputDelegate validate)
 {
     Display(template, title, message, inputText, Utils.GetLocalizedText("UI.MessageBox.OK"), Utils.GetLocalizedText("UI.MessageBox.Cancel"), effect, dialogResult, validate);
 }
 public static void Display(string title, string message, string inputText, EMaskEffect effect, Action <EResult> dialogResult, ValidateInputDelegate validate)
 {
     Display(GameManager.instance.clientData.defaultLineEditorDialogPrefab, title, message, inputText, effect, dialogResult, validate);
 }
Пример #6
0
 public static MessageBox YesNoCancel(EType type, string title, string message, EMaskEffect effect, Action <EResult> dialogResult)
 {
     return(Create(type, effect, dialogResult).DoYesNoCancel(title, message));
 }