void Start() { _storage = gameObject.GetComponent <PackageUIBase>(); if (_storage is null) { Main.Logger.Log("PackageUIBase component not found!"); } }
static bool Prefix(PackageUIBase __instance, int obj, bool ___IsSplitMode, int ___bagIndex) { if (obj == -1) { return(true); } ItemObject item = Module <Player> .Self.bag.GetItem(___bagIndex, obj); if (item != null && ___IsSplitMode && item.Number == 1) { Module <Player> .Self.bag.AddItem(item, true); __instance.FreshCurpageItem(); __instance.playerItemBar.FreshItem(); return(false); } return(true); }
public static bool Prefix(PackageUIBase __instance) { if (!enabled) { return(true); } int id = ((ItemObject)typeof(PackageUIBase).GetProperty("curSelectItem", BindingFlags.NonPublic | BindingFlags.Instance).GetValue(__instance, new object[0])).ItemDataId; if (MissionRequire.IsMissionRequired(id)) { UIUtils.ShowTipsMode2(TextMgr.GetStr(103554, -1), Color.white, 1.5f, null, false); } else { __instance.DeleteItem(); } return(false); }
static void Postfix(PackageUIBase __instance, UIPageTurning ___bagPageTurning) { if (!enabled || Module <InputSolutionModule> .Self.CurSolutionType == SolutionType.ColorConfig) { return; } bool shift = Input.GetKey("left shift"); bool prevPage = KeyDown(settings.PrevPageKey); bool nextPage = KeyDown(settings.NextPageKey); if (__instance is StoreageUICtr) { if (KeyDown(settings.PrevStorageKey)) { (__instance as StoreageUICtr).SwitchStorage(false); return; } else if (KeyDown(settings.NextStorageKey)) { (__instance as StoreageUICtr).SwitchStorage(true); return; } } if (!shift) { if (prevPage) { ___bagPageTurning.TurnPage(false); } else if (nextPage) { ___bagPageTurning.TurnPage(true); } return; } if (!prevPage && !nextPage) { return; } UIPageTurning ___storagePageTurning = null; if (__instance is StoreageUIBase || __instance is StoreageUICtr) { ___storagePageTurning = AccessTools.FieldRefAccess <StoreageUIBase, UIPageTurning>((__instance as StoreageUIBase), "storagePageTurning"); } else if (__instance is PackageExchangeAutoSortUICtr || __instance is PackageExchangeUICtr) { ___storagePageTurning = AccessTools.FieldRefAccess <PackageExchangeUICtr, UIPageTurning>((__instance as PackageExchangeUICtr), "storagePageTurning"); } else if (__instance is Store_Npc_UI) { ___storagePageTurning = AccessTools.FieldRefAccess <Store_Npc_UI, UIPageTurning>((__instance as Store_Npc_UI), "storePageTurning"); } if (___storagePageTurning != null) { if (prevPage) { ___storagePageTurning.TurnPage(false); } else if (nextPage) { ___storagePageTurning.TurnPage(true); } } }