summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJesse Plamondon-Willard <Pathoschild@users.noreply.github.com>2018-12-07 13:40:44 -0500
committerJesse Plamondon-Willard <Pathoschild@users.noreply.github.com>2018-12-07 13:40:44 -0500
commita78b1935928919694dfe8de823a1accd6d222732 (patch)
tree3f17b6087cf2749e52c1e237de17e2e9addb6c06 /src
parent4cd9eda1591c3908bf80b60c2902491a7595ee27 (diff)
parent8901218418693d610a17b22fe789ba6279f63446 (diff)
downloadSMAPI-a78b1935928919694dfe8de823a1accd6d222732.tar.gz
SMAPI-a78b1935928919694dfe8de823a1accd6d222732.tar.bz2
SMAPI-a78b1935928919694dfe8de823a1accd6d222732.zip
Merge branch 'develop' into stable
Diffstat (limited to 'src')
-rw-r--r--src/SMAPI.Installer/windows-install.bat9
-rw-r--r--src/SMAPI.Mods.ConsoleCommands/Framework/Commands/World/SetTimeCommand.cs2
-rw-r--r--src/SMAPI.Mods.ConsoleCommands/Framework/ItemRepository.cs14
-rw-r--r--src/SMAPI.Mods.ConsoleCommands/ModEntry.cs4
-rw-r--r--src/SMAPI.Mods.ConsoleCommands/StardewModdingAPI.Mods.ConsoleCommands.csproj2
-rw-r--r--src/SMAPI.Mods.ConsoleCommands/manifest.json4
-rw-r--r--src/SMAPI.Mods.SaveBackup/manifest.json4
-rw-r--r--src/SMAPI.Tests/Utilities/SemanticVersionTests.cs2
-rw-r--r--src/SMAPI.Web/Controllers/ModsApiController.cs7
-rw-r--r--src/SMAPI.Web/Framework/Clients/ModDrop/IModDropClient.cs17
-rw-r--r--src/SMAPI.Web/Framework/Clients/ModDrop/ModDropClient.cs96
-rw-r--r--src/SMAPI.Web/Framework/Clients/ModDrop/ModDropMod.cs24
-rw-r--r--src/SMAPI.Web/Framework/Clients/ModDrop/ResponseModels/FileDataModel.cs21
-rw-r--r--src/SMAPI.Web/Framework/Clients/ModDrop/ResponseModels/ModDataModel.cs15
-rw-r--r--src/SMAPI.Web/Framework/Clients/ModDrop/ResponseModels/ModListModel.cs11
-rw-r--r--src/SMAPI.Web/Framework/Clients/ModDrop/ResponseModels/ModModel.cs12
-rw-r--r--src/SMAPI.Web/Framework/ConfigModels/ApiClientsConfig.cs9
-rw-r--r--src/SMAPI.Web/Framework/ModRepositories/ModDropRepository.cs59
-rw-r--r--src/SMAPI.Web/Startup.cs8
-rw-r--r--src/SMAPI.Web/ViewModels/ModModel.cs5
-rw-r--r--src/SMAPI.Web/Views/Index/Index.cshtml1
-rw-r--r--src/SMAPI.Web/Views/Mods/Index.cshtml11
-rw-r--r--src/SMAPI.Web/appsettings.json3
-rw-r--r--src/SMAPI.Web/wwwroot/Content/js/mods.js84
-rw-r--r--src/SMAPI/Constants.cs7
-rw-r--r--src/SMAPI/Context.cs2
-rw-r--r--src/SMAPI/Events/BuildingListChangedEventArgs.cs2
-rw-r--r--src/SMAPI/Events/ContentEvents.cs17
-rw-r--r--src/SMAPI/Events/ControlEvents.cs59
-rw-r--r--src/SMAPI/Events/CursorMovedEventArgs.cs2
-rw-r--r--src/SMAPI/Events/DebrisListChangedEventArgs.cs2
-rw-r--r--src/SMAPI/Events/EventArgsClickableMenuChanged.cs4
-rw-r--r--src/SMAPI/Events/EventArgsClickableMenuClosed.cs4
-rw-r--r--src/SMAPI/Events/EventArgsControllerButtonPressed.cs2
-rw-r--r--src/SMAPI/Events/EventArgsControllerButtonReleased.cs4
-rw-r--r--src/SMAPI/Events/EventArgsControllerTriggerPressed.cs2
-rw-r--r--src/SMAPI/Events/EventArgsControllerTriggerReleased.cs4
-rw-r--r--src/SMAPI/Events/EventArgsInput.cs2
-rw-r--r--src/SMAPI/Events/EventArgsIntChanged.cs2
-rw-r--r--src/SMAPI/Events/EventArgsInventoryChanged.cs2
-rw-r--r--src/SMAPI/Events/EventArgsKeyPressed.cs2
-rw-r--r--src/SMAPI/Events/EventArgsKeyboardStateChanged.cs2
-rw-r--r--src/SMAPI/Events/EventArgsLevelUp.cs2
-rw-r--r--src/SMAPI/Events/EventArgsLocationBuildingsChanged.cs2
-rw-r--r--src/SMAPI/Events/EventArgsLocationObjectsChanged.cs2
-rw-r--r--src/SMAPI/Events/EventArgsLocationsChanged.cs2
-rw-r--r--src/SMAPI/Events/EventArgsMineLevelChanged.cs4
-rw-r--r--src/SMAPI/Events/EventArgsMouseStateChanged.cs4
-rw-r--r--src/SMAPI/Events/EventArgsPlayerWarped.cs2
-rw-r--r--src/SMAPI/Events/EventArgsValueChanged.cs6
-rw-r--r--src/SMAPI/Events/GameEvents.cs59
-rw-r--r--src/SMAPI/Events/GraphicsEvents.cs53
-rw-r--r--src/SMAPI/Events/InputEvents.cs23
-rw-r--r--src/SMAPI/Events/InventoryChangedEventArgs.cs5
-rw-r--r--src/SMAPI/Events/LargeTerrainFeatureListChangedEventArgs.cs2
-rw-r--r--src/SMAPI/Events/LevelChangedEventArgs.cs5
-rw-r--r--src/SMAPI/Events/LocationEvents.cs29
-rw-r--r--src/SMAPI/Events/LocationListChangedEventArgs.cs2
-rw-r--r--src/SMAPI/Events/MenuChangedEventArgs.cs2
-rw-r--r--src/SMAPI/Events/MenuEvents.cs23
-rw-r--r--src/SMAPI/Events/MineEvents.cs17
-rw-r--r--src/SMAPI/Events/MouseWheelScrolledEventArgs.cs2
-rw-r--r--src/SMAPI/Events/MultiplayerEvents.cs35
-rw-r--r--src/SMAPI/Events/NpcListChangedEventArgs.cs2
-rw-r--r--src/SMAPI/Events/ObjectListChangedEventArgs.cs2
-rw-r--r--src/SMAPI/Events/PlayerEvents.cs29
-rw-r--r--src/SMAPI/Events/SaveEvents.cs47
-rw-r--r--src/SMAPI/Events/SpecialisedEvents.cs17
-rw-r--r--src/SMAPI/Events/TerrainFeatureListChangedEventArgs.cs2
-rw-r--r--src/SMAPI/Events/TimeChangedEventArgs.cs2
-rw-r--r--src/SMAPI/Events/TimeEvents.cs23
-rw-r--r--src/SMAPI/Events/UnvalidatedUpdateTickedEventArgs.cs2
-rw-r--r--src/SMAPI/Events/UnvalidatedUpdateTickingEventArgs.cs2
-rw-r--r--src/SMAPI/Events/UpdateTickedEventArgs.cs2
-rw-r--r--src/SMAPI/Events/UpdateTickingEventArgs.cs2
-rw-r--r--src/SMAPI/Events/WarpedEventArgs.cs5
-rw-r--r--src/SMAPI/Events/WindowResizedEventArgs.cs2
-rw-r--r--src/SMAPI/Framework/ContentCoordinator.cs16
-rw-r--r--src/SMAPI/Framework/ContentManagers/BaseContentManager.cs20
-rw-r--r--src/SMAPI/Framework/ContentManagers/GameContentManager.cs27
-rw-r--r--src/SMAPI/Framework/ContentManagers/IContentManager.cs4
-rw-r--r--src/SMAPI/Framework/DeprecationManager.cs6
-rw-r--r--src/SMAPI/Framework/Events/EventManager.cs8
-rw-r--r--src/SMAPI/Framework/ModHelpers/ModHelper.cs36
-rw-r--r--src/SMAPI/Framework/ModLoading/AssemblyLoader.cs9
-rw-r--r--src/SMAPI/Framework/ModLoading/InstructionHandleResult.cs2
-rw-r--r--src/SMAPI/Framework/ModLoading/ModWarning.cs2
-rw-r--r--src/SMAPI/Framework/SCore.cs86
-rw-r--r--src/SMAPI/Framework/SGame.cs127
-rw-r--r--src/SMAPI/Framework/SMultiplayer.cs2
-rw-r--r--src/SMAPI/Framework/StateTracking/FieldWatchers/ComparableListWatcher.cs83
-rw-r--r--src/SMAPI/Framework/StateTracking/FieldWatchers/ComparableWatcher.cs13
-rw-r--r--src/SMAPI/Framework/StateTracking/FieldWatchers/NetCollectionWatcher.cs3
-rw-r--r--src/SMAPI/Framework/StateTracking/FieldWatchers/NetDictionaryWatcher.cs2
-rw-r--r--src/SMAPI/Framework/StateTracking/FieldWatchers/NetValueWatcher.cs14
-rw-r--r--src/SMAPI/Framework/StateTracking/FieldWatchers/ObservableCollectionWatcher.cs3
-rw-r--r--src/SMAPI/Framework/StateTracking/FieldWatchers/WatcherFactory.cs8
-rw-r--r--src/SMAPI/Framework/StateTracking/WorldLocationsTracker.cs50
-rw-r--r--src/SMAPI/Framework/WatcherCore.cs3
-rw-r--r--src/SMAPI/IModHelper.cs16
-rw-r--r--src/SMAPI/Metadata/CoreAssetPropagator.cs82
-rw-r--r--src/SMAPI/Metadata/InstructionMetadata.cs80
-rw-r--r--src/SMAPI/SemanticVersion.cs2
-rw-r--r--src/SMAPI/StardewModdingAPI.csproj3
-rw-r--r--src/StardewModdingAPI.Toolkit.CoreInterfaces/ISemanticVersion.cs2
-rw-r--r--src/StardewModdingAPI.Toolkit.CoreInterfaces/StardewModdingAPI.Toolkit.CoreInterfaces.csproj4
-rw-r--r--src/StardewModdingAPI.Toolkit/Framework/Clients/WebApi/ModExtendedMetadataModel.cs4
-rw-r--r--src/StardewModdingAPI.Toolkit/Framework/Clients/Wiki/WikiClient.cs4
-rw-r--r--src/StardewModdingAPI.Toolkit/Framework/Clients/Wiki/WikiModEntry.cs3
-rw-r--r--src/StardewModdingAPI.Toolkit/Framework/ModScanning/ModScanner.cs15
-rw-r--r--src/StardewModdingAPI.Toolkit/Framework/UpdateData/ModRepositoryKey.cs3
-rw-r--r--src/StardewModdingAPI.Toolkit/SemanticVersion.cs38
-rw-r--r--src/StardewModdingAPI.Toolkit/Serialisation/Converters/SemanticVersionConverter.cs24
-rw-r--r--src/StardewModdingAPI.Toolkit/StardewModdingAPI.Toolkit.csproj4
114 files changed, 1454 insertions, 319 deletions
diff --git a/src/SMAPI.Installer/windows-install.bat b/src/SMAPI.Installer/windows-install.bat
index 7a8b409b..d02dd4c6 100644
--- a/src/SMAPI.Installer/windows-install.bat
+++ b/src/SMAPI.Installer/windows-install.bat
@@ -1 +1,8 @@
-START /WAIT /B internal/windows-install.exe
+@echo off
+echo %~dp0 | findstr /C:"%TEMP%" 1>nul
+if not errorlevel 1 (
+ echo Oops! It looks like you're running the installer from inside a zip file. Make sure you unzip the download first.
+ pause
+) else (
+ start /WAIT /B internal/windows-install.exe
+)
diff --git a/src/SMAPI.Mods.ConsoleCommands/Framework/Commands/World/SetTimeCommand.cs b/src/SMAPI.Mods.ConsoleCommands/Framework/Commands/World/SetTimeCommand.cs
index 7644ee46..a6075013 100644
--- a/src/SMAPI.Mods.ConsoleCommands/Framework/Commands/World/SetTimeCommand.cs
+++ b/src/SMAPI.Mods.ConsoleCommands/Framework/Commands/World/SetTimeCommand.cs
@@ -47,7 +47,7 @@ namespace StardewModdingAPI.Mods.ConsoleCommands.Framework.Commands.World
{
// define conversion between game time and TimeSpan
TimeSpan ToTimeSpan(int value) => new TimeSpan(0, value / 100, value % 100, 0);
- int FromTimeSpan(TimeSpan span) => (int)((span.Hours * 100) + span.Minutes);
+ int FromTimeSpan(TimeSpan span) => (span.Hours * 100) + span.Minutes;
// transition to new time
int intervals = (int)((ToTimeSpan(time) - ToTimeSpan(Game1.timeOfDay)).TotalMinutes / 10);
diff --git a/src/SMAPI.Mods.ConsoleCommands/Framework/ItemRepository.cs b/src/SMAPI.Mods.ConsoleCommands/Framework/ItemRepository.cs
index 7a3d8694..f4a38403 100644
--- a/src/SMAPI.Mods.ConsoleCommands/Framework/ItemRepository.cs
+++ b/src/SMAPI.Mods.ConsoleCommands/Framework/ItemRepository.cs
@@ -25,15 +25,11 @@ namespace StardewModdingAPI.Mods.ConsoleCommands.Framework
public IEnumerable<SearchableItem> GetAll()
{
// get tools
- for (int quality = Tool.stone; quality <= Tool.iridium; quality++)
- {
- yield return new SearchableItem(ItemType.Tool, ToolFactory.axe, ToolFactory.getToolFromDescription(ToolFactory.axe, quality));
- yield return new SearchableItem(ItemType.Tool, ToolFactory.hoe, ToolFactory.getToolFromDescription(ToolFactory.hoe, quality));
- yield return new SearchableItem(ItemType.Tool, ToolFactory.pickAxe, ToolFactory.getToolFromDescription(ToolFactory.pickAxe, quality));
- yield return new SearchableItem(ItemType.Tool, ToolFactory.wateringCan, ToolFactory.getToolFromDescription(ToolFactory.wateringCan, quality));
- if (quality != Tool.iridium)
- yield return new SearchableItem(ItemType.Tool, ToolFactory.fishingRod, ToolFactory.getToolFromDescription(ToolFactory.fishingRod, quality));
- }
+ yield return new SearchableItem(ItemType.Tool, ToolFactory.axe, ToolFactory.getToolFromDescription(ToolFactory.axe, 0));
+ yield return new SearchableItem(ItemType.Tool, ToolFactory.hoe, ToolFactory.getToolFromDescription(ToolFactory.hoe, 0));
+ yield return new SearchableItem(ItemType.Tool, ToolFactory.pickAxe, ToolFactory.getToolFromDescription(ToolFactory.pickAxe, 0));
+ yield return new SearchableItem(ItemType.Tool, ToolFactory.wateringCan, ToolFactory.getToolFromDescription(ToolFactory.wateringCan, 0));
+ yield return new SearchableItem(ItemType.Tool, ToolFactory.fishingRod, ToolFactory.getToolFromDescription(ToolFactory.fishingRod, 0));
yield return new SearchableItem(ItemType.Tool, this.CustomIDOffset, new MilkPail()); // these don't have any sort of ID, so we'll just assign some arbitrary ones
yield return new SearchableItem(ItemType.Tool, this.CustomIDOffset + 1, new Shears());
yield return new SearchableItem(ItemType.Tool, this.CustomIDOffset + 2, new Pan());
diff --git a/src/SMAPI.Mods.ConsoleCommands/ModEntry.cs b/src/SMAPI.Mods.ConsoleCommands/ModEntry.cs
index 7588043d..30951064 100644
--- a/