Esempio n. 1
0
        public static void Prefix(HeraldryNameWidget __instance)
        {
            try
            {
                Logger.Debug("[HeraldryNameWidget_SetData_PREFIX] Disable text validation, expand character limit");

                HBS_InputField nameInput = (HBS_InputField)AccessTools.Field(typeof(HeraldryNameWidget), "nameInput").GetValue(__instance);
                nameInput.characterLimit      = 80;
                nameInput.contentType         = HBS_InputField.ContentType.Standard;
                nameInput.characterValidation = HBS_InputField.CharacterValidation.None;
            }
            catch (Exception e)
            {
                Logger.Error(e);
            }
        }
Esempio n. 2
0
        public static void Postfix(HeraldryNameWidget __instance)
        {
            try
            {
                HBS_InputField nameInput           = (HBS_InputField)AccessTools.Field(typeof(HeraldryNameWidget), "nameInput").GetValue(__instance);
                string         currentHeraldryName = nameInput.text;

                if (string.IsNullOrEmpty(currentHeraldryName))
                {
                    Logger.Debug("[HeraldryNameWidget_OnNameInputEndEdit_POSTFIX] No input");
                    return;
                }
                if (currentHeraldryName.Length > 0 && currentHeraldryName.Substring(0, 1) != "/")
                {
                    Logger.Debug("[HeraldryNameWidget_OnNameInputEndEdit_POSTFIX] No command");
                    return;
                }

                List <string> validCommands = new List <string>()
                {
                    "/help", "/list", "/mech", "/comp", "/funds", "/xp", "/upgr", "/ronin", "/rep", "/travel", "/event"
                };
                string command = validCommands.FirstOrDefault(c => currentHeraldryName.Contains(c));

                if (command != null)
                {
                    Logger.Debug("[HeraldryNameWidget_OnNameInputEndEdit_POSTFIX] Command: " + command);

                    string param = currentHeraldryName.Replace(command, "").Trim();

                    if (command != "/help" && String.IsNullOrEmpty(param))
                    {
                        Logger.Debug("[HeraldryNameWidget_OnNameInputEndEdit_POSTFIX] Recognized a command but no param was given");
                        PopupHelper.Info("Recognized a command but no param was given");
                        return;
                    }

                    switch (command)
                    {
                    case "/help":

                        Info.Help.Show();

                        return;

                    case "/list":

                        Info.Data.List(param);

                        return;

                    case "/mech":

                        Cheater.Mech.Add(param);

                        return;

                    case "/comp":

                        Cheater.Component.Add(param);

                        return;

                    case "/rep":

                        Cheater.Reputation.Add(param);

                        return;

                    case "/funds":

                        Cheater.Funds.Add(param);

                        return;

                    case "/xp":

                        Cheater.Experience.Add(param);

                        return;

                    case "/upgr":

                        Cheater.Upgrade.Add(param);

                        return;

                    case "/ronin":

                        Cheater.Ronin.Add(param);

                        return;

                    case "/travel":

                        Cheater.Travel.To(param);

                        return;

                    case "/event":

                        Cheater.Event.Force(param);

                        return;

                    default:
                        return;
                    }
                }
                else
                {
                    Logger.Debug("[HeraldryNameWidget_OnNameInputEndEdit_POSTFIX] Unknown command");
                    PopupHelper.Info("Unknown command");
                }
            }
            catch (Exception e)
            {
                Logger.Error(e);
            }
        }