Patch_KylockeStand_Set.cs 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. using System;
  2. using System.Collections;
  3. using GadgetCore.API;
  4. using HarmonyLib;
  5. using UnityEngine;
  6. namespace PlatformBlock.Patches
  7. {
  8. [HarmonyPatch(typeof(KylockeStand))]
  9. [HarmonyPatch("Set")]
  10. [HarmonyGadget("PlatformBlock")]
  11. public static class Patch_KylockeStand_Set
  12. {
  13. [HarmonyPostfix]
  14. public static bool Prefix(KylockeStand __instance, int[] p)
  15. {
  16. if (p[0] == Core.itemPlatformId)
  17. {
  18. __instance.itemID = p[0];
  19. __instance.cost = p[1];
  20. __instance.icon.GetComponent<Renderer>().material = (Material)Resources.Load("i/i" + __instance.itemID.ToString());
  21. __instance.txtCost[0].text = string.Empty + __instance.cost.ToString();
  22. __instance.txtCost[1].text = __instance.txtCost[0].text;
  23. __instance.txtName[0].text = string.Empty + ItemRegistry.GetItem(__instance.itemID).GetName();
  24. __instance.txtName[1].text = __instance.txtName[0].text;
  25. __instance.StartCoroutine(Patch_KylockeStand_Set.DoUpdatePlatformStand(__instance));
  26. return false;
  27. }
  28. return true;
  29. }
  30. private static IEnumerator DoUpdatePlatformStand(KylockeStand instance)
  31. {
  32. instance.isBuild = true;
  33. instance.isCredits = false;
  34. instance.isTrophies = false;
  35. instance.currency.GetComponent<Renderer>().material = (Material)Resources.Load("i/i57");
  36. yield break;
  37. }
  38. }
  39. }