From 569311c61e68f2e1b08926d3d093c1709746bf12 Mon Sep 17 00:00:00 2001 From: bradjrenshaw Date: Thu, 12 May 2022 20:04:33 -0400 Subject: [PATCH 1/3] Fix incorrect AM and PM time announcement and :00 formatting. --- stardew-access/Features/CurrentPlayer.cs | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/stardew-access/Features/CurrentPlayer.cs b/stardew-access/Features/CurrentPlayer.cs index 7a2f525..5331576 100644 --- a/stardew-access/Features/CurrentPlayer.cs +++ b/stardew-access/Features/CurrentPlayer.cs @@ -96,15 +96,10 @@ namespace stardew_access.Features int minutes = timeOfDay % 100; int hours = timeOfDay / 100; - string amOrpm = "A M"; - if (hours >= 12) - { - amOrpm = "P M"; - if (hours > 12) - hours -= 12; - } - - return $"{hours}:{minutes} {amOrpm}"; + string amOrpm = hours / 12 == 1 ? "PM" : "AM"; + hours = hours % 12; + if (hours == 0) hours = 12; + return $"{hours}:{minutes:00} {amOrpm}"; } } From 153b1207301a95a91e4ffc59f6f94e8d09f2142e Mon Sep 17 00:00:00 2001 From: bradjrenshaw Date: Thu, 12 May 2022 20:05:01 -0400 Subject: [PATCH 2/3] Added old mariner to npcs category when present. --- stardew-access/Features/TileInfo.cs | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/stardew-access/Features/TileInfo.cs b/stardew-access/Features/TileInfo.cs index 716d9c8..665a836 100644 --- a/stardew-access/Features/TileInfo.cs +++ b/stardew-access/Features/TileInfo.cs @@ -47,16 +47,15 @@ namespace stardew_access.Features (string? name, CATEGORY category) staticTile = MainClass.STiles.getStaticTileInfoAtWithCategory(x, y); string? bush = getBushAtTile(x, y, lessInfo); - if (Game1.currentLocation.isCharacterAtTile(tile) != null) + if (Game1.currentLocation.isCharacterAtTile(tile) is NPC npc) { - NPC npc = Game1.currentLocation.isCharacterAtTile(tile); - toReturn = npc.displayName; + toReturn = npc.displayName; if (npc.isVillager() || npc.CanSocialize) category = CATEGORY.Farmers; else category = CATEGORY.NPCs; } - else if (farmAnimal != null) + else if (farmAnimal != null) { toReturn = farmAnimal; category = CATEGORY.FarmAnimals; @@ -408,7 +407,11 @@ namespace stardew_access.Features } else if (Game1.currentLocation is Beach beach) { - if (x == 58 && y == 13) + if (MainClass.ModHelper.Reflection.GetField(beach, "oldMariner").GetValue() is NPC mariner && mariner.getTileLocation() == new Vector2(x, y)) + { + return (CATEGORY.NPCs, "Old Mariner"); + } + else if (x == 58 && y == 13) { if (!beach.bridgeFixed.Value) return (CATEGORY.Interactables, "Repair Bridge"); From f4a47bf64a69f8b20db4da4506d1fe1afe65a860 Mon Sep 17 00:00:00 2001 From: bradjrenshaw Date: Thu, 12 May 2022 20:33:50 -0400 Subject: [PATCH 3/3] Added ore panning spot to interactables category. --- stardew-access/Features/TileInfo.cs | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/stardew-access/Features/TileInfo.cs b/stardew-access/Features/TileInfo.cs index 665a836..5c13689 100644 --- a/stardew-access/Features/TileInfo.cs +++ b/stardew-access/Features/TileInfo.cs @@ -49,13 +49,13 @@ namespace stardew_access.Features if (Game1.currentLocation.isCharacterAtTile(tile) is NPC npc) { - toReturn = npc.displayName; + toReturn = npc.displayName; if (npc.isVillager() || npc.CanSocialize) category = CATEGORY.Farmers; else category = CATEGORY.NPCs; } - else if (farmAnimal != null) + else if (farmAnimal != null) { toReturn = farmAnimal; category = CATEGORY.FarmAnimals; @@ -300,7 +300,11 @@ namespace stardew_access.Features ///
name: This is the name of the tile. Default to null if the tile tile has nothing on it. public static (CATEGORY? category, string? name) getDynamicTilesInfo(int x, int y, bool lessInfo = false) { - if (Game1.currentLocation is Farm farm) + if (Game1.currentLocation.orePanPoint != Point.Zero && Game1.currentLocation.orePanPoint == new Point(x, y)) + { + return (CATEGORY.Interactables, "panning spot"); + } + else if (Game1.currentLocation is Farm farm) { if (farm.GetMainMailboxPosition().X == x && farm.GetMainMailboxPosition().Y == y) return (CATEGORY.Interactables, "Mail box"); @@ -407,7 +411,7 @@ namespace stardew_access.Features } else if (Game1.currentLocation is Beach beach) { - if (MainClass.ModHelper.Reflection.GetField(beach, "oldMariner").GetValue() is NPC mariner && mariner.getTileLocation() == new Vector2(x, y)) + if (MainClass.ModHelper.Reflection.GetField(beach, "oldMariner").GetValue() is NPC mariner && mariner.getTileLocation() == new Vector2(x, y)) { return (CATEGORY.NPCs, "Old Mariner"); }