diff --git a/stardew-access/Features/TileInfo.cs b/stardew-access/Features/TileInfo.cs
index 3e1605b..322e691 100644
--- a/stardew-access/Features/TileInfo.cs
+++ b/stardew-access/Features/TileInfo.cs
@@ -470,52 +470,10 @@ namespace stardew_access.Features
string? toReturn = null;
CATEGORY category = CATEGORY.Others;
- if (terrain.Get() is HoeDirt)
+ if (terrain.Get() is HoeDirt dirt)
{
+ toReturn = getHoeDirtDetail(dirt);
category = CATEGORY.Crops;
- HoeDirt dirt = (HoeDirt)terrain.Get();
- if (dirt.crop != null && !dirt.crop.forageCrop.Value)
- {
- string cropName = Game1.objectInformation[dirt.crop.indexOfHarvest.Value].Split('/')[0];
- toReturn = $"{cropName}";
-
- bool isWatered = dirt.state.Value == HoeDirt.watered;
- bool isHarvestable = dirt.readyForHarvest();
- bool isFertilized = dirt.fertilizer.Value != HoeDirt.noFertilizer;
-
- if (isWatered)
- toReturn = "Watered " + toReturn;
-
- if (isFertilized)
- toReturn = "Fertilized " + toReturn;
-
- if (isHarvestable)
- toReturn = "Harvestable " + toReturn;
-
- if (dirt.crop.dead.Value)
- toReturn = "Dead " + toReturn;
- }
- else if (dirt.crop != null && dirt.crop.forageCrop.Value)
- {
- toReturn = dirt.crop.whichForageCrop.Value switch
- {
- 1 => "Spring onion",
- 2 => "Ginger",
- _ => "Forageable crop"
- };
- }
- else
- {
- toReturn = "Soil";
- bool isWatered = dirt.state.Value == HoeDirt.watered;
- bool isFertilized = dirt.fertilizer.Value != HoeDirt.noFertilizer;
-
- if (isWatered)
- toReturn = "Watered " + toReturn;
-
- if (isFertilized)
- toReturn = "Fertilized " + toReturn;
- }
}
else if (terrain.Get() is CosmeticPlant)
{
@@ -561,6 +519,62 @@ namespace stardew_access.Features
}
return (toReturn, category);
+
+
+ }
+
+ ///
+ /// Returns the detail about the HoeDirt i.e. soil, plant, etc.
+ ///
+ /// The HoeDirt to be checked
+ /// The details about the given HoeDirt
+ public static string getHoeDirtDetail(HoeDirt dirt)
+ {
+ string detail;
+
+ if (dirt.crop != null && !dirt.crop.forageCrop.Value)
+ {
+ string cropName = Game1.objectInformation[dirt.crop.indexOfHarvest.Value].Split('/')[0];
+ detail = $"{cropName}";
+
+ bool isWatered = dirt.state.Value == HoeDirt.watered;
+ bool isHarvestable = dirt.readyForHarvest();
+ bool isFertilized = dirt.fertilizer.Value != HoeDirt.noFertilizer;
+
+ if (isWatered)
+ detail = "Watered " + detail;
+
+ if (isFertilized)
+ detail = "Fertilized " + detail;
+
+ if (isHarvestable)
+ detail = "Harvestable " + detail;
+
+ if (dirt.crop.dead.Value)
+ detail = "Dead " + detail;
+ }
+ else if (dirt.crop != null && dirt.crop.forageCrop.Value)
+ {
+ detail = dirt.crop.whichForageCrop.Value switch
+ {
+ 1 => "Spring onion",
+ 2 => "Ginger",
+ _ => "Forageable crop"
+ };
+ }
+ else
+ {
+ detail = "Soil";
+ bool isWatered = dirt.state.Value == HoeDirt.watered;
+ bool isFertilized = dirt.fertilizer.Value != HoeDirt.noFertilizer;
+
+ if (isWatered)
+ detail = "Watered " + detail;
+
+ if (isFertilized)
+ detail = "Fertilized " + detail;
+ }
+ return detail;
}
public static string getFruitTree(FruitTree fruitTree)
@@ -677,6 +691,10 @@ namespace stardew_access.Features
Chest chest = (Chest)obj;
toReturn = (chest.DisplayName, CATEGORY.Chests);
}
+ else if (obj is IndoorPot indoorPot)
+ {
+ toReturn.name = $"{obj.DisplayName} {getHoeDirtDetail(indoorPot.hoeDirt)}";
+ }
else if (obj is Furniture)
{
if (lessInfo && (((Furniture)obj).TileLocation.X != x || ((Furniture)obj).TileLocation.Y != y))