From f9482906ae7ce4dfd41bb4236e094be5d4fa7689 Mon Sep 17 00:00:00 2001 From: Jesse Plamondon-Willard Date: Sun, 2 Jul 2017 01:32:07 -0400 Subject: split TrainerMod commands into separate classes (#302) --- .../Framework/Commands/Saves/LoadCommand.cs | 28 ++++++++++++++++++++++ .../Framework/Commands/Saves/SaveCommand.cs | 27 +++++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 src/TrainerMod/Framework/Commands/Saves/LoadCommand.cs create mode 100644 src/TrainerMod/Framework/Commands/Saves/SaveCommand.cs (limited to 'src/TrainerMod/Framework/Commands/Saves') 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 +{ + /// A command which shows the load screen. + internal class LoadCommand : TrainerCommand + { + /********* + ** Public methods + *********/ + /// Construct an instance. + public LoadCommand() + : base("load", "Shows the load screen.") { } + + /// Handle the command. + /// Writes messages to the console and log file. + /// The command name. + /// The command arguments. + 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 +{ + /// A command which saves the game. + internal class SaveCommand : TrainerCommand + { + /********* + ** Public methods + *********/ + /// Construct an instance. + public SaveCommand() + : base("save", "Saves the game? Doesn't seem to work.") { } + + + /// Handle the command. + /// Writes messages to the console and log file. + /// The command name. + /// The command arguments. + public override void Handle(IMonitor monitor, string command, string[] args) + { + monitor.Log("Saving the game...", LogLevel.Info); + SaveGame.Save(); + } + } +} -- cgit