summaryrefslogtreecommitdiff
path: root/src/TrainerMod/Framework/Commands/Saves
diff options
context:
space:
mode:
authorJesse Plamondon-Willard <github@jplamondonw.com>2017-07-02 01:32:07 -0400
committerJesse Plamondon-Willard <github@jplamondonw.com>2017-07-02 01:32:07 -0400
commitf9482906ae7ce4dfd41bb4236e094be5d4fa7689 (patch)
treed1f881d2e44d39090c55f9290113a957bc031cad /src/TrainerMod/Framework/Commands/Saves
parent6364e162f22973201b9da69f76db512005a5501e (diff)
downloadSMAPI-f9482906ae7ce4dfd41bb4236e094be5d4fa7689.tar.gz
SMAPI-f9482906ae7ce4dfd41bb4236e094be5d4fa7689.tar.bz2
SMAPI-f9482906ae7ce4dfd41bb4236e094be5d4fa7689.zip
split TrainerMod commands into separate classes (#302)
Diffstat (limited to 'src/TrainerMod/Framework/Commands/Saves')
-rw-r--r--src/TrainerMod/Framework/Commands/Saves/LoadCommand.cs28
-rw-r--r--src/TrainerMod/Framework/Commands/Saves/SaveCommand.cs27
2 files changed, 55 insertions, 0 deletions
diff --git a/src/TrainerMod/Framework/Commands/Saves/LoadCommand.cs b/src/TrainerMod/Framework/Commands/Saves/LoadCommand.cs
new file mode 100644
index 00000000..1a70b54c
--- /dev/null
+++ b/src/TrainerMod/Framework/Commands/Saves/LoadCommand.cs
@@ -0,0 +1,28 @@
+using StardewModdingAPI;
+using StardewValley;
+using StardewValley.Menus;
+
+namespace TrainerMod.Framework.Commands.Saves
+{
+ /// <summary>A command which shows the load screen.</summary>
+ internal class LoadCommand : TrainerCommand
+ {
+ /*********
+ ** Public methods
+ *********/
+ /// <summary>Construct an instance.</summary>
+ public LoadCommand()
+ : base("load", "Shows the load screen.") { }
+
+ /// <summary>Handle the command.</summary>
+ /// <param name="monitor">Writes messages to the console and log file.</param>
+ /// <param name="command">The command name.</param>
+ /// <param name="args">The command arguments.</param>
+ public override void Handle(IMonitor monitor, string command, string[] args)
+ {
+ monitor.Log("Triggering load menu...", LogLevel.Info);
+ Game1.hasLoadedGame = false;
+ Game1.activeClickableMenu = new LoadGameMenu();
+ }
+ }
+}
diff --git a/src/TrainerMod/Framework/Commands/Saves/SaveCommand.cs b/src/TrainerMod/Framework/Commands/Saves/SaveCommand.cs
new file mode 100644
index 00000000..8ce9738d
--- /dev/null
+++ b/src/TrainerMod/Framework/Commands/Saves/SaveCommand.cs
@@ -0,0 +1,27 @@
+using StardewModdingAPI;
+using StardewValley;
+
+namespace TrainerMod.Framework.Commands.Saves
+{
+ /// <summary>A command which saves the game.</summary>
+ internal class SaveCommand : TrainerCommand
+ {
+ /*********
+ ** Public methods
+ *********/
+ /// <summary>Construct an instance.</summary>
+ public SaveCommand()
+ : base("save", "Saves the game? Doesn't seem to work.") { }
+
+
+ /// <summary>Handle the command.</summary>
+ /// <param name="monitor">Writes messages to the console and log file.</param>
+ /// <param name="command">The command name.</param>
+ /// <param name="args">The command arguments.</param>
+ public override void Handle(IMonitor monitor, string command, string[] args)
+ {
+ monitor.Log("Saving the game...", LogLevel.Info);
+ SaveGame.Save();
+ }
+ }
+}