|
@@ -20,97 +20,102 @@ namespace StorageExpansion.Patches
|
|
|
public static bool Prefix(GameScript __instance, ref Item[] ___storage, ref GameObject ___storageSelect, ref GameObject[] ___storageButton,
|
|
public static bool Prefix(GameScript __instance, ref Item[] ___storage, ref GameObject ___storageSelect, ref GameObject[] ___storageButton,
|
|
|
ref GameObject ___menuStorage, ref GameObject[] ___storageIcon, ref GameObject[] ___storageIconBack, ref TextMesh[] ___txtQStorage, ref TextMesh[] ___txtStorageCost)
|
|
ref GameObject ___menuStorage, ref GameObject[] ___storageIcon, ref GameObject[] ___storageIconBack, ref TextMesh[] ___txtQStorage, ref TextMesh[] ___txtStorageCost)
|
|
|
{
|
|
{
|
|
|
- UpdateSizes();
|
|
|
|
|
-
|
|
|
|
|
- ___storage = new Item[Core.settingAmountPages * Core.settingAmountSlots];
|
|
|
|
|
- for (int i = 0; i < ___storage.Length; i++)
|
|
|
|
|
- {
|
|
|
|
|
- ___storage[i] = new Item(0, 0, 0, 0, 0, new int[3], new int[3]);
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- ___storageButton = new GameObject[Core.settingAmountPages];
|
|
|
|
|
-
|
|
|
|
|
- ___storageIcon = new GameObject[Core.settingAmountSlots];
|
|
|
|
|
- ___storageIconBack = new GameObject[Core.settingAmountSlots];
|
|
|
|
|
- ___txtQStorage = new TextMesh[Core.settingAmountSlots];
|
|
|
|
|
|
|
|
|
|
var storageMenu = GameObject.Find("Main Camera").transform.Find("menuStorage").gameObject;
|
|
var storageMenu = GameObject.Find("Main Camera").transform.Find("menuStorage").gameObject;
|
|
|
- storageMenu.GetComponent<Renderer>().material = new Material(Shader.Find("Unlit/Transparent")) { mainTexture = GetTexture() };
|
|
|
|
|
- ___menuStorage = storageMenu;
|
|
|
|
|
- ___storageSelect = storageMenu.transform.FindChild("-").gameObject;
|
|
|
|
|
-
|
|
|
|
|
- ___txtStorageCost[0] = storageMenu.transform.FindChild("bStorageU").GetChild(0).GetComponent<TextMesh>();
|
|
|
|
|
- ___txtStorageCost[1] = storageMenu.transform.FindChild("bStorageU").GetChild(0).GetChild(0).GetComponent<TextMesh>();
|
|
|
|
|
|
|
|
|
|
- if (IsLargeMode())
|
|
|
|
|
- {
|
|
|
|
|
- var upgradeButton = storageMenu.transform.FindChild("bStorageU");
|
|
|
|
|
- upgradeButton.GetComponent<Renderer>().material = materialUpgradeButton;
|
|
|
|
|
- upgradeButton.GetComponent<ButtonMenu>().button = materialUpgradeButton;
|
|
|
|
|
- upgradeButton.GetComponent<ButtonMenu>().buttonSelect = materialUpgradeButtonSelected;
|
|
|
|
|
- upgradeButton.transform.localPosition = new Vector3(0.5473f, -0.3367f, 0.15f);
|
|
|
|
|
- upgradeButton.GetComponent<BoxCollider>().size = new Vector3(0.53f, 0.41f, 1);
|
|
|
|
|
- upgradeButton.GetComponent<BoxCollider>().center = new Vector3(-0.01f, -0.05f, 0);
|
|
|
|
|
- upgradeButton.GetChild(0).localPosition = new Vector3(0.071f, 0.057f, 0.35f);
|
|
|
|
|
- upgradeButton.GetChild(1).localPosition = new Vector3(-0.015f, -0.089f, 0.35f);
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- PositionSet pos = GetSizes();
|
|
|
|
|
-
|
|
|
|
|
- for (int i = 0; i < 29; i++)
|
|
|
|
|
- GameObject.DestroyImmediate(storageMenu.transform.GetChild(1).gameObject);
|
|
|
|
|
-
|
|
|
|
|
- for (int i = 1; i < Core.settingAmountSlots; i++)
|
|
|
|
|
- {
|
|
|
|
|
- var slot = GameObject.Instantiate(storageMenu.transform.GetChild(0).gameObject);
|
|
|
|
|
- slot.name = "" + i;
|
|
|
|
|
- slot.transform.parent = storageMenu.transform;
|
|
|
|
|
- slot.transform.localScale = storageMenu.transform.GetChild(0).localScale;
|
|
|
|
|
- slot.transform.localPosition = pos.slotPos + new Vector3(+0.1328607f * (i % pos.slotWrap), +0.1328607f * (i / pos.slotWrap), 0);
|
|
|
|
|
- slot.transform.localEulerAngles = storageMenu.transform.GetChild(0).localEulerAngles;
|
|
|
|
|
- if (i >= Core.settingAmountActualSlots)
|
|
|
|
|
- slot.transform.localPosition += new Vector3(10, 0, 0);
|
|
|
|
|
- }
|
|
|
|
|
- storageMenu.transform.GetChild(0).transform.localPosition = pos.slotPos;
|
|
|
|
|
-
|
|
|
|
|
- for (int i = 0; i < 11; i++)
|
|
|
|
|
- GameObject.DestroyImmediate(storageMenu.transform.GetChild(3).gameObject);
|
|
|
|
|
-
|
|
|
|
|
- if (HasSmallPageButtons())
|
|
|
|
|
- {
|
|
|
|
|
- var tab = storageMenu.transform.GetChild(2).gameObject;
|
|
|
|
|
- tab.GetComponent<BoxCollider>().size = new Vector3(0.42f, 1.1f, 1);
|
|
|
|
|
- tab.GetComponent<Renderer>().material = materialPageButtonLockSmall;
|
|
|
|
|
- var frame = storageMenu.transform.FindChild("-").gameObject;
|
|
|
|
|
- frame.GetComponent<Renderer>().material = materialPageButtonFrameSmall;
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- for (int i = 1; i < Core.settingAmountPages; i++)
|
|
|
|
|
- {
|
|
|
|
|
- var tab = GameObject.Instantiate(storageMenu.transform.GetChild(2).gameObject);
|
|
|
|
|
- tab.name = "page" + i;
|
|
|
|
|
- tab.transform.parent = storageMenu.transform;
|
|
|
|
|
- tab.transform.localScale = storageMenu.transform.GetChild(2).localScale;
|
|
|
|
|
- tab.transform.localPosition = pos.pagePos + new Vector3(
|
|
|
|
|
- (HasSmallPageButtons() ? 0.05457f : +0.1328607f) * (pos.pageWrap < 0 ? (i / -pos.pageWrap) : (i % pos.pageWrap)),
|
|
|
|
|
- +0.1328607f * (pos.pageWrap < 0 ? (i % -pos.pageWrap) : (i / pos.pageWrap)),
|
|
|
|
|
- 0);
|
|
|
|
|
- tab.transform.localEulerAngles = storageMenu.transform.GetChild(2).localEulerAngles;
|
|
|
|
|
- if (i >= Core.settingAmountActualPages)
|
|
|
|
|
- tab.transform.localPosition += new Vector3(10, 0, 0);
|
|
|
|
|
- }
|
|
|
|
|
- storageMenu.transform.GetChild(2).transform.localPosition = pos.pagePos;
|
|
|
|
|
-
|
|
|
|
|
- for (int i = 0; i < Core.settingAmountSlots; i++)
|
|
|
|
|
- {
|
|
|
|
|
- ___storageIcon[i] = storageMenu.transform.FindChild("" + i).gameObject;
|
|
|
|
|
- ___txtQStorage[i] = storageMenu.transform.FindChild("" + i).GetChild(0).GetComponent<TextMesh>();
|
|
|
|
|
- ___txtQStorage[i].text = "";
|
|
|
|
|
- ___storageIconBack[i] = storageMenu.transform.FindChild("" + i).GetChild(1).gameObject;
|
|
|
|
|
- }
|
|
|
|
|
- for (int i = 0; i < Core.settingAmountPages; i++)
|
|
|
|
|
|
|
+ if (storageMenu.transform.GetChild(1).gameObject.name == "1")
|
|
|
{
|
|
{
|
|
|
- ___storageButton[i] = storageMenu.transform.FindChild("page" + i).gameObject;
|
|
|
|
|
|
|
+ UpdateSizes();
|
|
|
|
|
+
|
|
|
|
|
+ ___storage = new Item[Core.settingAmountPages * Core.settingAmountSlots];
|
|
|
|
|
+ for (int i = 0; i < ___storage.Length; i++)
|
|
|
|
|
+ {
|
|
|
|
|
+ ___storage[i] = new Item(0, 0, 0, 0, 0, new int[3], new int[3]);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ ___storageButton = new GameObject[Core.settingAmountPages];
|
|
|
|
|
+
|
|
|
|
|
+ ___storageIcon = new GameObject[Core.settingAmountSlots];
|
|
|
|
|
+ ___storageIconBack = new GameObject[Core.settingAmountSlots];
|
|
|
|
|
+ ___txtQStorage = new TextMesh[Core.settingAmountSlots];
|
|
|
|
|
+
|
|
|
|
|
+ storageMenu.GetComponent<Renderer>().material = new Material(Shader.Find("Unlit/Transparent")) { mainTexture = GetTexture() };
|
|
|
|
|
+ ___menuStorage = storageMenu;
|
|
|
|
|
+ ___storageSelect = storageMenu.transform.FindChild("-").gameObject;
|
|
|
|
|
+
|
|
|
|
|
+ ___txtStorageCost[0] = storageMenu.transform.FindChild("bStorageU").GetChild(0).GetComponent<TextMesh>();
|
|
|
|
|
+ ___txtStorageCost[1] = storageMenu.transform.FindChild("bStorageU").GetChild(0).GetChild(0).GetComponent<TextMesh>();
|
|
|
|
|
+
|
|
|
|
|
+ if (IsLargeMode())
|
|
|
|
|
+ {
|
|
|
|
|
+ var upgradeButton = storageMenu.transform.FindChild("bStorageU");
|
|
|
|
|
+ upgradeButton.GetComponent<Renderer>().material = materialUpgradeButton;
|
|
|
|
|
+ upgradeButton.GetComponent<ButtonMenu>().button = materialUpgradeButton;
|
|
|
|
|
+ upgradeButton.GetComponent<ButtonMenu>().buttonSelect = materialUpgradeButtonSelected;
|
|
|
|
|
+ upgradeButton.transform.localPosition = new Vector3(0.5473f, -0.3367f, 0.15f);
|
|
|
|
|
+ upgradeButton.GetComponent<BoxCollider>().size = new Vector3(0.53f, 0.41f, 1);
|
|
|
|
|
+ upgradeButton.GetComponent<BoxCollider>().center = new Vector3(-0.01f, -0.05f, 0);
|
|
|
|
|
+ upgradeButton.GetChild(0).localPosition = new Vector3(0.071f, 0.057f, 0.35f);
|
|
|
|
|
+ upgradeButton.GetChild(1).localPosition = new Vector3(-0.015f, -0.089f, 0.35f);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ PositionSet pos = GetSizes();
|
|
|
|
|
+
|
|
|
|
|
+ for (int i = 0; i < 29; i++)
|
|
|
|
|
+ GameObject.DestroyImmediate(storageMenu.transform.GetChild(1).gameObject);
|
|
|
|
|
+
|
|
|
|
|
+ for (int i = 1; i < Core.settingAmountSlots; i++)
|
|
|
|
|
+ {
|
|
|
|
|
+ var slot = GameObject.Instantiate(storageMenu.transform.GetChild(0).gameObject);
|
|
|
|
|
+ slot.name = "" + i;
|
|
|
|
|
+ slot.transform.parent = storageMenu.transform;
|
|
|
|
|
+ slot.transform.localScale = storageMenu.transform.GetChild(0).localScale;
|
|
|
|
|
+ slot.transform.localPosition = pos.slotPos + new Vector3(+0.1328607f * (i % pos.slotWrap), +0.1328607f * (i / pos.slotWrap), 0);
|
|
|
|
|
+ slot.transform.localEulerAngles = storageMenu.transform.GetChild(0).localEulerAngles;
|
|
|
|
|
+ if (i >= Core.settingAmountActualSlots)
|
|
|
|
|
+ slot.transform.localPosition += new Vector3(10, 0, 0);
|
|
|
|
|
+ }
|
|
|
|
|
+ storageMenu.transform.GetChild(0).transform.localPosition = pos.slotPos;
|
|
|
|
|
+
|
|
|
|
|
+ for (int i = 0; i < 11; i++)
|
|
|
|
|
+ GameObject.DestroyImmediate(storageMenu.transform.GetChild(3).gameObject);
|
|
|
|
|
+
|
|
|
|
|
+ if (HasSmallPageButtons())
|
|
|
|
|
+ {
|
|
|
|
|
+ var tab = storageMenu.transform.GetChild(2).gameObject;
|
|
|
|
|
+ tab.GetComponent<BoxCollider>().size = new Vector3(0.42f, 1.1f, 1);
|
|
|
|
|
+ tab.GetComponent<Renderer>().material = materialPageButtonLockSmall;
|
|
|
|
|
+ var frame = storageMenu.transform.FindChild("-").gameObject;
|
|
|
|
|
+ frame.GetComponent<Renderer>().material = materialPageButtonFrameSmall;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ for (int i = 1; i < Core.settingAmountPages; i++)
|
|
|
|
|
+ {
|
|
|
|
|
+ var tab = GameObject.Instantiate(storageMenu.transform.GetChild(2).gameObject);
|
|
|
|
|
+ tab.name = "page" + i;
|
|
|
|
|
+ tab.transform.parent = storageMenu.transform;
|
|
|
|
|
+ tab.transform.localScale = storageMenu.transform.GetChild(2).localScale;
|
|
|
|
|
+ tab.transform.localPosition = pos.pagePos + new Vector3(
|
|
|
|
|
+ (HasSmallPageButtons() ? 0.05457f : +0.1328607f) * (pos.pageWrap < 0 ? (i / -pos.pageWrap) : (i % pos.pageWrap)),
|
|
|
|
|
+ +0.1328607f * (pos.pageWrap < 0 ? (i % -pos.pageWrap) : (i / pos.pageWrap)),
|
|
|
|
|
+ 0);
|
|
|
|
|
+ tab.transform.localEulerAngles = storageMenu.transform.GetChild(2).localEulerAngles;
|
|
|
|
|
+ if (i >= Core.settingAmountActualPages)
|
|
|
|
|
+ tab.transform.localPosition += new Vector3(10, 0, 0);
|
|
|
|
|
+ }
|
|
|
|
|
+ storageMenu.transform.GetChild(2).transform.localPosition = pos.pagePos;
|
|
|
|
|
+
|
|
|
|
|
+ for (int i = 0; i < Core.settingAmountSlots; i++)
|
|
|
|
|
+ {
|
|
|
|
|
+ ___storageIcon[i] = storageMenu.transform.FindChild("" + i).gameObject;
|
|
|
|
|
+ ___txtQStorage[i] = storageMenu.transform.FindChild("" + i).GetChild(0).GetComponent<TextMesh>();
|
|
|
|
|
+ ___txtQStorage[i].text = "";
|
|
|
|
|
+ ___storageIconBack[i] = storageMenu.transform.FindChild("" + i).GetChild(1).gameObject;
|
|
|
|
|
+ }
|
|
|
|
|
+ for (int i = 0; i < Core.settingAmountPages; i++)
|
|
|
|
|
+ {
|
|
|
|
|
+ ___storageButton[i] = storageMenu.transform.FindChild("page" + i).gameObject;
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
return false;
|
|
return false;
|
|
|
}
|
|
}
|