diff --git a/Languages/English/Keyed/HighDensityHydro.xml b/Languages/English/Keyed/HighDensityHydro.xml index 7cc4073..1e2f22d 100644 --- a/Languages/English/Keyed/HighDensityHydro.xml +++ b/Languages/English/Keyed/HighDensityHydro.xml @@ -6,4 +6,5 @@ Waiting for all plants to be harvested. Occupied Plant Bays Growth + resting \ No newline at end of file diff --git a/Source/HydroponicsExpanded/Buildings/Building_DenseHydroponicsBasin.cs b/Source/HydroponicsExpanded/Buildings/Building_DenseHydroponicsBasin.cs index 8e74d02..6e90b96 100644 --- a/Source/HydroponicsExpanded/Buildings/Building_DenseHydroponicsBasin.cs +++ b/Source/HydroponicsExpanded/Buildings/Building_DenseHydroponicsBasin.cs @@ -114,8 +114,7 @@ namespace HydroponicsExpanded { } // Temperature & time of day check. - float temperature = Position.GetTemperature(Map); - if (temperature.Between(10f, 42f) && GenLocalDate.DayPercent(this).Between(0.25f, 0.8f)) { + if (IsResting()) { float growthAmount = 1f / (60_000f * growthTrackingPlant.def.plant.growDays) * 250f; // Debug gizmo can set growth to 100%, thus Math.min check here. @@ -129,8 +128,16 @@ namespace HydroponicsExpanded { Stage = HydroponicsStage.Harvest; } - private void HarvestTick() { + /// + /// Determines whether the hydroponics basin is in a resting state. + /// + /// true if the hydroponics basin is in a resting state; otherwise, false. + private bool IsResting() { + float temperature = Position.GetTemperature(Map); + return temperature.Between(10f, 42f) && GenLocalDate.DayPercent(this).Between(0.25f, 0.8f); + } + private void HarvestTick() { // Try to place every plant in the container in any cell. foreach (Thing nextInnerThing in _innerContainer) { var nextPlant = (Plant)nextInnerThing; @@ -289,6 +296,10 @@ namespace HydroponicsExpanded { if (_innerContainer.Count > 0) { inspectString += "\n"; inspectString += "HydroponicsExpanded.Growth".Translate() + $": {_highestGrowth * 100f:#0}%"; + + if (IsResting()) { + inspectString += " (" + "HydroponicsExpanded.Resting".Translate() + ")"; + } } return inspectString;