| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- using GadgetCore.API;
- using HarmonyLib;
- using System.Collections;
- using System.Reflection;
- using UnityEngine;
- namespace StorageExpansion.Patches
- {
- [HarmonyPatch]
- [HarmonyGadget("StorageExpansion")]
- public static class RePatch_GameScript_RefreshStoragePage
- {
- [HarmonyTargetMethod]
- static MethodBase TargetMethod()
- {
- return AccessTools.Method(typeof(GadgetCoreAPI).Assembly.GetType("GadgetCore.Patches.Patch_GameScript_RefreshStoragePage"), "RefreshStoragePage");
- }
- public static readonly FieldInfo curStoragePage = typeof(GameScript).GetField("curStoragePage", BindingFlags.NonPublic | BindingFlags.Instance);
- [HarmonyPrefix]
- public static bool Prefix(GameScript __instance, int p, ref IEnumerator __result)
- {
- __result = RefreshStoragePage(__instance, p);
- return false;
- }
- private static IEnumerator RefreshStoragePage(GameScript instance, int p)
- {
- var __instance = InstanceTracker.GameScript;
- curStoragePage.SetValue(__instance, p);
- __instance.storageSelect.transform.position = new Vector3(__instance.storageButton[p].transform.position.x, __instance.storageButton[p].transform.position.y, __instance.storageSelect.transform.position.z);
- for (int i = 0; i < Core.settingAmountSlots; i++)
- {
- __instance.RefreshSlotStorage(i);
- }
- yield break;
- }
- }
- }
|