CombatChipChest.cs 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. using UnityEngine;
  2. using GadgetCore.API;
  3. using System.Collections;
  4. using System;
  5. using UnityEngine.SceneManagement;
  6. namespace CombatChipChest
  7. {
  8. [Gadget("CombatChipChest")]
  9. public class CombatChipChest : Gadget<CombatChipChest>
  10. {
  11. public const string MOD_VERSION = "1.0"; // Set this to the version of your mod.
  12. public const string CONFIG_VERSION = "1.0"; // Increment this whenever you change your mod's config file.
  13. protected override void LoadConfig()
  14. {
  15. Config.Reset();
  16. Config.Save();
  17. }
  18. public override string GetModDescription()
  19. {
  20. return "A mod that adds a combat chip chest block for your ship.";
  21. }
  22. protected override void Initialize()
  23. {
  24. Logger.Log("Combat Chip Chest v" + Info.Mod.Version);
  25. Core.logger = Logger;
  26. var tile = ItemUtil.CreatePlacableItem("cCombatSimulator.png", "iCombatSimulator.png", "Combat Chest");
  27. Core.itemCombatChipChestId = tile.Item.GetID();
  28. Core.npcID = tile.GetID();
  29. var asset = GadgetCoreAPI.LoadAssetBundle("menucombat");
  30. var menuCombat = UnityEngine.Object.Instantiate((GameObject)asset.LoadAsset("assets/resources/menucombat.prefab"));
  31. menuCombat.transform.localPosition = new Vector3(0, 0, -3);
  32. menuCombat.AddComponent<MenuOpenEventScript>();
  33. Core.menu = new MenuInfo(MenuType.CHIP, menuCombat, tile);
  34. Core.menu.Register("Combat Chip Chest");
  35. SceneManager.sceneLoaded += OnSceneLoaded;
  36. }
  37. internal static void OnSceneLoaded(Scene scene, LoadSceneMode mode)
  38. {
  39. if (scene.buildIndex == 1)
  40. {
  41. GadgetCoreAPI.CreateMarketStand(ItemRegistry.GetItem(Core.itemCombatChipChestId), new Vector2(-138f - 1 * 4, -7.49f), 100);
  42. }
  43. }
  44. }
  45. }