CombatChipChest.cs 2.0 KB

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