public override void Entry(IModHelper helper) { _instance = this; monitor = Monitor; helper.Events.GameLoop.GameLaunched += (o, e) => { sdata = new CustomObjectData("Parachute", "Parachute/0/-300/Crafting -9/Play 'Parachute with Wumbus' at home!/true/true/0/Parachute", helper.Content.Load <Texture2D>(@"assets/arcade.png"), Color.White, bigCraftable: true, type: typeof(MachineParachute)); if (Helper.ModRegistry.GetApi <IMobilePhoneApi>("aedenthorn.MobilePhone") is IMobilePhoneApi api) { Texture2D appIcon = Helper.Content.Load <Texture2D>(Path.Combine("assets", "mobile_app_icon.png")); bool success = api.AddApp(Helper.ModRegistry.ModID + "Mobile2048", "2048", () => { Game1.currentMinigame = new GameParachute(); }, appIcon); } }; helper.Events.GameLoop.SaveLoaded += (o, e) => addToCatalogue(); helper.ConsoleCommands.Add("getparachute", "", (s, p) => { Game1.player.addItemByMenuIfNecessary(sdata.getObject()); }); }
public override void Entry(IModHelper helper) { _monitor = Monitor; cData = new List <CustomObjectData>(); cartTexture = Helper.Content.Load <Texture2D>(@"Assets/cartridge.png"); romfolder = Path.Combine(helper.DirectoryPath, "roms"); GBCartridge.roms = new Dictionary <string, byte[]>(); GameBoy.attTexture = helper.Content.Load <Texture2D>(@"Assets/slot.png"); gbData = new CustomObjectData("GameBoy", "GameBoy/0/-300/Crafting -9/A classic GameBoy,but it looks damaged./GameBoy", helper.Content.Load <Texture2D>(@"Assets/gameboy.png"), Color.White, type: typeof(GameBoy)); loadRoms(); helper.Events.GameLoop.SaveLoaded += (s, e) => { cData.ForEach(c => new InventoryItem(c.getObject(), 500, 1).addToNPCShop("Gus")); new InventoryItem(gbData.getObject(), 2000, 1).addToNPCShop("Gus"); }; }
private void setup() { new InventoryItem(pdata.getObject(), 0, 1).addToFurnitureCatalogue(); PongMinigame.game = Helper.Reflection.GetField <object>(pong, "game").GetValue(); pongHelper = (IModHelper)typeof(Mod).GetProperty("Helper", BindingFlags.Public | BindingFlags.Instance).GetValue(pong); keyEvents.AddOrReplace(SButton.Space.onPressed(() => { if (Game1.currentMinigame is PongMinigame p) { Helper.Reflection.GetMethod(PongMinigame.game, "Start").Invoke(); } })); keyEvents.AddOrReplace(SButton.Escape.onPressed(() => { if (Game1.currentMinigame is PongMinigame p) { if (Helper.Reflection.GetMethod(PongMinigame.game, "HasStarted").Invoke <bool>()) { PongMinigame.game.GetType().GetMethod("Reset", new Type[] { }).Invoke(PongMinigame.game, null); } else { PongMinigame.quit = true; Game1.options.zoomLevel = PongMachine.zoom; } } })); keyEvents.AddOrReplace(SButton.P.onPressed(() => { if (Game1.currentMinigame is PongMinigame p) { Helper.Reflection.GetMethod(PongMinigame.game, "TogglePaused").Invoke(); } })); }
private static void GameLoop_UpdateTicked(object sender, StardewModdingAPI.Events.UpdateTickedEventArgs e) { string modId = Helper.ModRegistry.ModID; var items = Helper.Data.ReadJsonFile <Items>("data.json"); foreach (Data data in items.Content) { Texture2D texture = Helper.Content.Load <Texture2D>(data.Texture); if (data.ScaleUp) { float scale = (float)(Convert.ToDouble(texture.Width) / Convert.ToDouble(data.OriginalWidth)); int height = (int)(texture.Height / scale); texture = ScaledTexture2D.FromTexture(texture.getArea(new Rectangle(0, 0, data.OriginalWidth, height)), texture, scale); } var cod = new CustomObjectData(modId + "." + data.Id, data.DataString.Replace("{Name}", i18n.Get(data.Id + ".Name")).Replace("{Description}", i18n.Get(data.Id + ".Description")), texture, Color.White, data.TileIndex, data.BigCraftable, typeof(CustomItem), data.CraftingRecipe != null ? new CraftingData(modId + "." + data.Id, data.CraftingRecipe, i18n.Get(data.Id + ".Name"), -1, data.BigCraftable) : null); if (data.SoldBy != null) { var i = new InventoryItem(cod.getObject(), data.Price); i.addToNPCShop(data.SoldBy); } } Helper.Events.GameLoop.UpdateTicked -= GameLoop_UpdateTicked; }
public void addToCatalogue() { new InventoryItem(sdata.getObject(), 5000, 1).addToNPCShop("Gus"); }
private void setup() { new InventoryItem(pdata.getObject(), 5000, 1).addToNPCShop("Gus"); }