Exemple #1
0
        public static void TranslateComponents(GameObject go)
        {
            var zettai = GameObjectUtils.AbsoluteTransform(go);
            var scene  = go.scene.name;

            if (scene == "DontDestroyOnLoad")
            {
                scene = SceneManager.GetActiveScene().name;
            }
            foreach (var comp in go.GetComponents <Component>())
            {
                switch (comp)
                {
                case UnityEngine.UI.Image i:
                    TranslateImage(i, zettai, scene);
                    break;

                case RawImage i:
                    TranslateRawImage(i, zettai, scene);
                    break;

                case Button b:
                    TranslateButton(b, zettai, scene);
                    break;

                case SpriteChangeCtrl s:
                    TranslateHSpriteChangeCtrl(s, zettai, scene);
                    break;
                }
            }
        }
Exemple #2
0
        public static void CustomSelectListCtrlHook(ChaCustom.CustomSelectListCtrl __instance)
        {
            var objContent = (GameObject)AccessTools.Field(typeof(ChaCustom.CustomSelectListCtrl), "objContent").GetValue(__instance);

            foreach (Transform t in objContent.transform)
            {
                var go   = t.gameObject;
                var csic = go.GetComponent <ChaCustom.CustomSelectInfoComponent>();
                if (!csic)
                {
                    continue;
                }
                var image = csic.img;
                if (image == null)
                {
                    return;
                }
                var path  = GameObjectUtils.AbsoluteTransform(go);
                var scene = go.scene.name;

                var mt = csic?.img?.mainTexture;
                if (mt)
                {
                    if (mt.name.StartsWith("*"))
                    {
                        mt.name = mt.name.Substring(1);
                    }
                }
                ImageTranslator.TranslateImage(csic.img, path, scene);
            }
        }
        public static void LoadSpriteHook(ref UnityEngine.UI.Image image)
        {
            var go    = image.gameObject;
            var path  = GameObjectUtils.AbsoluteTransform(go);
            var scene = go.scene.name;

            ImageTranslator.TranslateImage(image, path, scene);
        }
        public static void DoSpriteSwapHook(ref Selectable __instance, ref Sprite newSprite)
        {
            if (newSprite == null)
            {
                newSprite = __instance.image.sprite;
            }
            var go    = __instance.gameObject;
            var path  = GameObjectUtils.AbsoluteTransform(go);
            var scene = go.scene.name;

            ImageTranslator.RegisterTexture(newSprite, path, scene);
            ImageTranslator.ReplaceTexture(ref newSprite, path, scene);
        }
        public static void ActionChangeUISetHook(ref ActionChangeUI __instance)
        {
            var image = (UnityEngine.UI.Image)AccessTools.Field(typeof(ActionChangeUI), "target").GetValue(__instance);

            if (image == null)
            {
                return;
            }
            var go    = __instance.gameObject;
            var path  = GameObjectUtils.AbsoluteTransform(go);
            var scene = go.scene.name;

            ImageTranslator.RegisterTexture(image, path, scene);
            ImageTranslator.ReplaceTexture(image, path, scene);
        }