diff options
author | Jesse Plamondon-Willard <github@jplamondonw.com> | 2016-11-19 18:56:35 -0500 |
---|---|---|
committer | Jesse Plamondon-Willard <github@jplamondonw.com> | 2016-11-19 18:56:35 -0500 |
commit | 1a5eb12cc6877da6dd95bcae8814bc5d3fb87a9b (patch) | |
tree | 6c64f162639d5bfcdb7354696d285b86106d2c8b | |
parent | 7cb77dd2be419eac4135278cf7aefb2f3ddf1b36 (diff) | |
download | SMAPI-1a5eb12cc6877da6dd95bcae8814bc5d3fb87a9b.tar.gz SMAPI-1a5eb12cc6877da6dd95bcae8814bc5d3fb87a9b.tar.bz2 SMAPI-1a5eb12cc6877da6dd95bcae8814bc5d3fb87a9b.zip |
restore obsolete SPlayer for backwards compatibility, mark deprecated
-rw-r--r-- | release-notes.md | 2 | ||||
-rw-r--r-- | src/StardewModdingAPI/Entities/SPlayer.cs | 59 | ||||
-rw-r--r-- | src/StardewModdingAPI/StardewModdingAPI.csproj | 1 |
3 files changed, 61 insertions, 1 deletions
diff --git a/release-notes.md b/release-notes.md index 2fa17b7f..9f38b269 100644 --- a/release-notes.md +++ b/release-notes.md @@ -7,7 +7,7 @@ For players: * Fixed console exiting immediately when some exceptions occur. * Fixed an error in 1.0 when mod uses `config.json` but the file doesn't exist. * Fixed critical errors being saved to a separate log file. - * Fixed compatibility with mods that use obsolete `Log` methods.<sup>1.1.1</sup> + * Fixed compatibility with some older mods.<sup>1.1.1, 1.1.2</sup> * Fixed race condition where some mods would sometimes crash because the game wasn't ready yet.<sup>1.1.1</sup> For developers: diff --git a/src/StardewModdingAPI/Entities/SPlayer.cs b/src/StardewModdingAPI/Entities/SPlayer.cs new file mode 100644 index 00000000..66c7ba44 --- /dev/null +++ b/src/StardewModdingAPI/Entities/SPlayer.cs @@ -0,0 +1,59 @@ +using System; +using System.Collections.Generic; +using StardewModdingAPI.Framework; +using StardewValley; + +namespace StardewModdingAPI.Entities +{ + /// <summary>Static class for integrating with the player.</summary> + [Obsolete("This API was never officially documented and will be removed soon.")] + public class SPlayer + { + /********* + ** Accessors + *********/ + /// <summary>Obsolete.</summary> + [Obsolete("Use " + nameof(Game1) + "." + nameof(Game1.getAllFarmers) + " instead")] + public static List<Farmer> AllFarmers + { + get + { + Program.DeprecationManager.Warn(nameof(SPlayer), "1.0", DeprecationLevel.Info); + return Game1.getAllFarmers(); + } + } + + /// <summary>Obsolete.</summary> + [Obsolete("Use " + nameof(Game1) + "." + nameof(Game1.player) + " instead")] + public static Farmer CurrentFarmer + { + get + { + Program.DeprecationManager.Warn(nameof(SPlayer), "1.0", DeprecationLevel.Info); + return Game1.player; + } + } + + /// <summary>Obsolete.</summary> + [Obsolete("Use " + nameof(Game1) + "." + nameof(Game1.player) + " instead")] + public static Farmer Player + { + get + { + Program.DeprecationManager.Warn(nameof(SPlayer), "1.0", DeprecationLevel.Info); + return Game1.player; + } + } + + /// <summary>Obsolete.</summary> + [Obsolete("Use " + nameof(Game1) + "." + nameof(Game1.player) + "." + nameof(Farmer.currentLocation) + " instead")] + public static GameLocation CurrentFarmerLocation + { + get + { + Program.DeprecationManager.Warn(nameof(SPlayer), "1.0", DeprecationLevel.Info); + return Game1.player.currentLocation; + } + } + } +}
\ No newline at end of file diff --git a/src/StardewModdingAPI/StardewModdingAPI.csproj b/src/StardewModdingAPI/StardewModdingAPI.csproj index 7b28a63e..e0608cce 100644 --- a/src/StardewModdingAPI/StardewModdingAPI.csproj +++ b/src/StardewModdingAPI/StardewModdingAPI.csproj @@ -166,6 +166,7 @@ <Compile Include="Command.cs" /> <Compile Include="Config.cs" /> <Compile Include="Constants.cs" /> + <Compile Include="Entities\SPlayer.cs" /> <Compile Include="Events\ControlEvents.cs" /> <Compile Include="Events\EventArgsCommand.cs" /> <Compile Include="Events\EventArgsClickableMenuChanged.cs" /> |