Exemple #1
0
        public static string GetModName(UIState prevUi, UIState currUi)
        {
            Type      uiType          = currUi.GetType();
            FieldInfo uiLocalmodField = uiType.GetField("localMod", BindingFlags.NonPublic | BindingFlags.Instance);

            if (uiLocalmodField == null)
            {
                LogHelpers.Warn("No 'localMod' field in " + uiType);
                return(null);
            }

            object localmod = uiLocalmodField.GetValue(currUi);

            if (localmod != null)
            {
                return(ModMenuHelpers.GetLocalMod(localmod).name);
            }
            else
            {
                if (prevUi?.GetType().Name == "UIModBrowser")
                {
                    return(ModMenuHelpers.GetSelectedModBrowserModName(prevUi));
                }
            }

            LogHelpers.Alert("No mod loaded.");
            return(null);
        }
Exemple #2
0
        ////////////////

        public static TmodFile GetLocalMod(UIState ui)
        {
            Type      uiType          = ui.GetType();
            FieldInfo uiLocalmodField = uiType.GetField("localMod", BindingFlags.NonPublic | BindingFlags.Instance);

            if (uiLocalmodField == null)
            {
                LogHelpers.Warn("No 'localMod' field in " + uiType);
                return(null);
            }

            object localmod = uiLocalmodField.GetValue(ui);

            if (localmod != null)
            {
                return(ModMenuHelpers.GetLocalMod(localmod));
            }

            LogHelpers.Alert("No mod loaded.");
            return(null);
        }