From cbf741d5ac74a6c4ab1210671cb7ef21826c4fc7 Mon Sep 17 00:00:00 2001 From: Zoryn Aaron Date: Sun, 28 Feb 2016 20:26:36 -0500 Subject: [PATCH] updates --- README.md | 3 +- Release/StardewModdingAPI.exe | Bin 35840 -> 38912 bytes StardewModdingAPI/Events.cs | 36 +++++++++- StardewModdingAPI/Program.cs | 42 +++-------- StardewModdingAPI/SGame.cs | 66 ++++++++++++++++++ StardewModdingAPI/StardewModdingAPI.csproj | 1 + ...rdewModdingAPI.csproj.FileListAbsolute.txt | 1 + 7 files changed, 112 insertions(+), 37 deletions(-) create mode 100644 StardewModdingAPI/SGame.cs diff --git a/README.md b/README.md index 51b5fcad..8a18151d 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,8 @@ A Modding API For Stardew Valley You can create a mod by making a direct reference to the ModdingApi.exe From there, you need to inherit from StardewModdingAPI.Mod -The first class that inherits from that class will be loaded into the game at runtime, and once the game fully initializes the method Entry() will be called once. +The first class that inherits from that class will be loaded into the game at runtime, and once the game fully initializes the mod, the method Entry() will be called once. +It is recommended to subscribe to an event (from Events.cs) to be able to interface with the game rather than directly make changes from the Entry() method TestMod.cs: diff --git a/Release/StardewModdingAPI.exe b/Release/StardewModdingAPI.exe index 6a559643587c0d6700dc80761ce920467329ed58..53745c83fb35ce2954f847142703e5cc598fe1b3 100644 GIT binary patch literal 38912 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 delta 13429 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 R{^oL^Z7{IsBeA>L{=a' for a command's usage"); + LogColour(ConsoleColor.Cyan, "Type 'help' for help, or 'help ' for a command's usage"); Events.InvokeGameLoaded(); } @@ -98,15 +96,13 @@ namespace StardewModdingAPI { try { - gamePtr = new Game1(); + gamePtr = new SGame(); Game1.graphics.GraphicsProfile = GraphicsProfile.HiDef; LoadMods(); StardewForm = Control.FromHandle(Program.gamePtr.Window.Handle).FindForm(); StardewGameInfo.SetValue(StardewProgramType, gamePtr); - KeyboardInput.KeyDown += KeyboardInput_KeyDown; - ready = true; gamePtr.Run(); @@ -116,8 +112,6 @@ namespace StardewModdingAPI LogError("Game failed to start: " + ex); } ready = false; - if (updateThread != null && updateThread.ThreadState == ThreadState.Running) - updateThread.Abort(); if (consoleInputThread != null && consoleInputThread.ThreadState == ThreadState.Running) consoleInputThread.Abort(); Log("Game Execution Finished"); @@ -160,14 +154,9 @@ namespace StardewModdingAPI } } - public static void UpdateThread() + static void Events_KeyPressed(Keys key) { - Events.InvokeUpdateInitialized(); - while (ready) - { - Events.InvokeUpdateTick(); - Thread.Sleep(1000 / 60); - } + } static void Events_UpdateTick() @@ -190,19 +179,6 @@ namespace StardewModdingAPI } } - static void KeyboardInput_KeyDown(object sender, StardewValley.KeyEventArgs e) - { - switch (e.KeyCode) - { - case Keys.B: - Game1.player.hairstyleColor = Extensions.RandomColour(); - break; - case Keys.OemPlus: - Game1.player.Money += 5000; - break; - } - } - public static void StardewInvoke(Action a) { StardewForm.Invoke(a); @@ -231,8 +207,8 @@ namespace StardewModdingAPI Command.RegisterCommand("player_setname", "Sets the player's name | player_setname ", new[] { "(player, pet, farm) (String) The target name" }).CommandFired += player_setName; Command.RegisterCommand("player_setmoney", "Sets the player's money | player_setmoney |inf", new[] { "(Int32) The target money" }).CommandFired += player_setMoney; - Command.RegisterCommand("player_setenergy", "Sets the player's energy | player_setenergy |inf", new[] { "(Int32) The target energy" }).CommandFired += player_setStamina; - Command.RegisterCommand("player_setmaxenergy", "Sets the player's max energy | player_setmaxenergy ", new[] { "(Int32) The target max energy" }).CommandFired += player_setMaxStamina; + Command.RegisterCommand("player_setstamina", "Sets the player's stamina | player_setstamina |inf", new[] { "(Int32) The target stamina" }).CommandFired += player_setStamina; + Command.RegisterCommand("player_setmaxstamina", "Sets the player's max stamina | player_setmaxstamina ", new[] { "(Int32) The target max stamina" }).CommandFired += player_setMaxStamina; Command.RegisterCommand("player_sethealth", "Sets the player's health | player_sethealth |inf", new[] { "(Int32) The target health" }).CommandFired += player_setHealth; Command.RegisterCommand("player_setmaxhealth", "Sets the player's max health | player_setmaxhealth ", new[] { "(Int32) The target max health" }).CommandFired += player_setMaxHealth; Command.RegisterCommand("player_setimmunity", "Sets the player's immunity | player_setimmunity ", new[] { "(Int32) The target immunity" }).CommandFired += player_setImmunity; diff --git a/StardewModdingAPI/SGame.cs b/StardewModdingAPI/SGame.cs new file mode 100644 index 00000000..6af7689a --- /dev/null +++ b/StardewModdingAPI/SGame.cs @@ -0,0 +1,66 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Runtime.CompilerServices; +using System.Text; +using System.Threading.Tasks; +using Microsoft.Xna.Framework; +using Microsoft.Xna.Framework.Input; +using StardewValley; + +namespace StardewModdingAPI +{ + public class SGame : Game1 + { + public KeyboardState KStateNow { get; private set; } + public KeyboardState KStatePrior { get; private set; } + + public Keys[] CurrentlyPressedKeys { get; private set; } + public Keys[] PreviouslyPressedKeys { get; private set; } + + public Keys[] FramePressedKeys + { + get { return CurrentlyPressedKeys.Where(x => !PreviouslyPressedKeys.Contains(x)).ToArray(); } + } + + protected override void Initialize() + { + Program.Log("XNA Initialize"); + Events.InvokeInitialize(); + base.Initialize(); + } + + protected override void LoadContent() + { + Program.Log("XNA LoadContent"); + Events.InvokeLoadContent(); + base.LoadContent(); + } + + protected override void Update(GameTime gameTime) + { + KStateNow = Keyboard.GetState(); + CurrentlyPressedKeys = KStateNow.GetPressedKeys(); + + foreach (Keys k in FramePressedKeys) + Events.InvokeKeyPressed(k); + + if (KStateNow != KStatePrior) + { + Events.InvokeKeyboardChanged(KStateNow); + } + + Events.InvokeUpdateTick(); + base.Update(gameTime); + + KStatePrior = KStateNow; + PreviouslyPressedKeys = CurrentlyPressedKeys; + } + + protected override void Draw(GameTime gameTime) + { + Events.InvokeDrawTick(); + base.Draw(gameTime); + } + } +} \ No newline at end of file diff --git a/StardewModdingAPI/StardewModdingAPI.csproj b/StardewModdingAPI/StardewModdingAPI.csproj index 35a7c01f..39e659bf 100644 --- a/StardewModdingAPI/StardewModdingAPI.csproj +++ b/StardewModdingAPI/StardewModdingAPI.csproj @@ -72,6 +72,7 @@ + diff --git a/StardewModdingAPI/obj/x86/Debug/StardewModdingAPI.csproj.FileListAbsolute.txt b/StardewModdingAPI/obj/x86/Debug/StardewModdingAPI.csproj.FileListAbsolute.txt index 5896e9ec..709d649c 100644 --- a/StardewModdingAPI/obj/x86/Debug/StardewModdingAPI.csproj.FileListAbsolute.txt +++ b/StardewModdingAPI/obj/x86/Debug/StardewModdingAPI.csproj.FileListAbsolute.txt @@ -32,3 +32,4 @@ C:\TFSource\Master-Collection\StardewModdingAPI\StardewModdingAPI\bin\x86\Debug\ C:\TFSource\Master-Collection\StardewModdingAPI\StardewModdingAPI\bin\x86\Debug\Steamworks.NET.dll C:\TFSource\Master-Collection\StardewModdingAPI\StardewModdingAPI\obj\x86\Debug\StardewModdingAPI.exe C:\TFSource\Master-Collection\StardewModdingAPI\StardewModdingAPI\obj\x86\Debug\StardewModdingAPI.pdb +C:\TFSource\Master-Collection\StardewModdingAPI\StardewModdingAPI\obj\x86\Debug\StardewModdingAPI.csprojResolveAssemblyReference.cache