VendingMachine.cs 6.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. using GadgetCore.API;
  2. using GadgetCore.API.ConfigMenu;
  3. using GadgetCore.Util;
  4. using System.Collections.Generic;
  5. namespace VendingMachine
  6. {
  7. [Gadget("VendingMachine")]
  8. public class VendingMachine : Gadget<VendingMachine>
  9. {
  10. public const string MOD_VERSION = "1.0"; // Set this to the version of your mod.
  11. public const string CONFIG_VERSION = "1.0"; // Increment this whenever you change your mod's config file.
  12. protected override void LoadConfig()
  13. {
  14. Config.Load();
  15. string fileVersion = Config.ReadString("ConfigVersion", CONFIG_VERSION, comments: "The Config Version (not to be confused with mod version)");
  16. if (fileVersion != CONFIG_VERSION)
  17. {
  18. Config.Reset();
  19. Config.WriteString("ConfigVersion", CONFIG_VERSION, comments: "The Config Version (not to be confused with mod version)");
  20. }
  21. Config.Reset();
  22. Config.Save();
  23. }
  24. public override IGadgetConfigMenu GetConfigMenu() { return null; }
  25. public override string GetModDescription()
  26. {
  27. return "A mod that adds ultimate version of rings.";
  28. }
  29. protected override void Initialize()
  30. {
  31. Logger.Log("Vending Machine v" + Info.Mod.Version);
  32. Core.logger = Logger;
  33. List<ItemInfo> infoList = new List<ItemInfo>();
  34. infoList.Add(new ItemInfo(ItemType.RING, "Fit Ring", "", GadgetCoreAPI.LoadTexture2D("i900U1.png"), Stats: new EquipStats(1, 3, 2, 0, 0, 0)).Register("ring900U1"));
  35. infoList.Add(new ItemInfo(ItemType.RING, "Gear Ring", "", GadgetCoreAPI.LoadTexture2D("i900U2.png"), Stats: new EquipStats(1, 2, 1, 3, 0, 0)).Register("ring900U2"));
  36. infoList.Add(new ItemInfo(ItemType.RING, "Heart Ring", "", GadgetCoreAPI.LoadTexture2D("i900U3.png"), Stats: new EquipStats(5, 1, 1, 0, 0, 0)).Register("ring900U3"));
  37. infoList.Add(new ItemInfo(ItemType.RING, "Shattered Ring", "", GadgetCoreAPI.LoadTexture2D("i901U1.png"), Stats: new EquipStats(1, 1, 1, 1, 1, 1)).Register("ring901U1"));
  38. infoList.Add(new ItemInfo(ItemType.RING, "Dragon Egg Ring", "", GadgetCoreAPI.LoadTexture2D("i901U2.png"), Stats: new EquipStats(0, 0, 0, 0, 4, 3)).Register("ring901U2"));
  39. infoList.Add(new ItemInfo(ItemType.RING, "Space Ring", "", GadgetCoreAPI.LoadTexture2D("i901U3.png"), Stats: new EquipStats(2, 0, 0, 4, 2, 1)).Register("ring901U3"));
  40. infoList.Add(new ItemInfo(ItemType.RING, "Shine Ring", "", GadgetCoreAPI.LoadTexture2D("i902U1.png"), Stats: new EquipStats(2, 0, 0, 0, 3, 3)).Register("ring902U1"));
  41. infoList.Add(new ItemInfo(ItemType.RING, "Obsidian Ring", "", GadgetCoreAPI.LoadTexture2D("i902U2.png"), Stats: new EquipStats(4, 0, 0, 0, 1, 2)).Register("ring902U2"));
  42. infoList.Add(new ItemInfo(ItemType.RING, "Wing Ring", "", GadgetCoreAPI.LoadTexture2D("i902U3.png"), Stats: new EquipStats(3, 0, 0, 0, 2, 2)).Register("ring902U3"));
  43. infoList.Add(new ItemInfo(ItemType.RING, "Lucky 4 Ring", "", GadgetCoreAPI.LoadTexture2D("i903U1.png"), Stats: new EquipStats(0, 0, 0, 0, 0, 0)).Register("ring903U1"));
  44. infoList.Add(new ItemInfo(ItemType.RING, "Bomb Ring", "", GadgetCoreAPI.LoadTexture2D("i903U2.png"), Stats: new EquipStats(0, 2, 2, 4, 0, 0)).Register("ring903U2"));
  45. infoList.Add(new ItemInfo(ItemType.RING, "Banana Ring", "", GadgetCoreAPI.LoadTexture2D("i903U3.png"), Stats: new EquipStats(0, 3, 3, 2, 0, 0)).Register("ring903U3"));
  46. infoList.Add(new ItemInfo(ItemType.RING, "Gem Ring", "", GadgetCoreAPI.LoadTexture2D("i904U1.png"), Stats: new EquipStats(0, 2, 2, 0, 2, 2)).Register("ring904U1"));
  47. infoList.Add(new ItemInfo(ItemType.RING, "Void Ring", "", GadgetCoreAPI.LoadTexture2D("i904U2.png"), Stats: new EquipStats(2, 0, 2, 1, 0, 0)).Register("ring904U2"));
  48. infoList.Add(new ItemInfo(ItemType.RING, "Resonance Ring", "", GadgetCoreAPI.LoadTexture2D("i904U3.png"), Stats: new EquipStats(2, 0, 2, 1, 0, 0)).Register("ring904U3"));
  49. infoList.Add(new ItemInfo(ItemType.RING, "Forrest Ring", "", GadgetCoreAPI.LoadTexture2D("i905U1.png"), Stats: new EquipStats(0, 5, 2, 0, 0, 0)).Register("ring905U1"));
  50. infoList.Add(new ItemInfo(ItemType.RING, "Emptiness Ring", "", GadgetCoreAPI.LoadTexture2D("i905U2.png"), Stats: new EquipStats(0, 8, 0, 0, 0, 0)).Register("ring905U2"));
  51. infoList.Add(new ItemInfo(ItemType.RING, "Fresh Ring", "", GadgetCoreAPI.LoadTexture2D("i905U3.png"), Stats: new EquipStats(0, 5, 2, 0, 0, 0)).Register("ring905U3"));
  52. Core.infoList = infoList;
  53. GadgetCoreAPI.AddUltimateForgeRecipe(new Tuple<int, int>(900, 89), Core.infoList[0].GetID());
  54. GadgetCoreAPI.AddUltimateForgeRecipe(new Tuple<int, int>(900, 90), Core.infoList[1].GetID());
  55. GadgetCoreAPI.AddUltimateForgeRecipe(new Tuple<int, int>(900, 91), Core.infoList[2].GetID());
  56. GadgetCoreAPI.AddUltimateForgeRecipe(new Tuple<int, int>(901, 89), Core.infoList[3].GetID());
  57. GadgetCoreAPI.AddUltimateForgeRecipe(new Tuple<int, int>(901, 90), Core.infoList[4].GetID());
  58. GadgetCoreAPI.AddUltimateForgeRecipe(new Tuple<int, int>(901, 91), Core.infoList[5].GetID());
  59. GadgetCoreAPI.AddUltimateForgeRecipe(new Tuple<int, int>(902, 89), Core.infoList[6].GetID());
  60. GadgetCoreAPI.AddUltimateForgeRecipe(new Tuple<int, int>(902, 90), Core.infoList[7].GetID());
  61. GadgetCoreAPI.AddUltimateForgeRecipe(new Tuple<int, int>(902, 91), Core.infoList[8].GetID());
  62. GadgetCoreAPI.AddUltimateForgeRecipe(new Tuple<int, int>(903, 89), Core.infoList[9].GetID());
  63. GadgetCoreAPI.AddUltimateForgeRecipe(new Tuple<int, int>(903, 90), Core.infoList[10].GetID());
  64. GadgetCoreAPI.AddUltimateForgeRecipe(new Tuple<int, int>(903, 91), Core.infoList[11].GetID());
  65. GadgetCoreAPI.AddUltimateForgeRecipe(new Tuple<int, int>(904, 89), Core.infoList[12].GetID());
  66. GadgetCoreAPI.AddUltimateForgeRecipe(new Tuple<int, int>(904, 90), Core.infoList[13].GetID());
  67. GadgetCoreAPI.AddUltimateForgeRecipe(new Tuple<int, int>(904, 91), Core.infoList[14].GetID());
  68. GadgetCoreAPI.AddUltimateForgeRecipe(new Tuple<int, int>(905, 89), Core.infoList[15].GetID());
  69. GadgetCoreAPI.AddUltimateForgeRecipe(new Tuple<int, int>(905, 90), Core.infoList[16].GetID());
  70. GadgetCoreAPI.AddUltimateForgeRecipe(new Tuple<int, int>(905, 91), Core.infoList[17].GetID());
  71. }
  72. }
  73. }