From 1e0b895ecba86d43a4cd71d9fa1540d07256cb45 Mon Sep 17 00:00:00 2001 From: Bassoonian Date: Fri, 8 Dec 2023 01:05:54 +0100 Subject: [PATCH] Add missing check to prevents water grinding --- data/scripts/berry_tree.inc | 2 ++ data/specials.inc | 1 + src/berry.c | 7 +++++++ 3 files changed, 10 insertions(+) diff --git a/data/scripts/berry_tree.inc b/data/scripts/berry_tree.inc index 10376d4c58..99768d5457 100644 --- a/data/scripts/berry_tree.inc +++ b/data/scripts/berry_tree.inc @@ -216,6 +216,8 @@ BerryTree_EventScript_WantToWater:: .endif checkitem ITEM_WAILMER_PAIL goto_if_eq VAR_RESULT, FALSE, BerryTree_EventScript_DontWater + specialvar VAR_RESULT, CanWaterBerryPlot + goto_if_eq VAR_RESULT, FALSE, BerryTree_EventScript_DontWater special ObjectEventInteractionGetBerryName msgbox BerryTree_Text_WantToWater, MSGBOX_YESNO goto_if_eq VAR_RESULT, YES, BerryTree_EventScript_WaterBerry diff --git a/data/specials.inc b/data/specials.inc index 717970767c..d5e659e1f9 100644 --- a/data/specials.inc +++ b/data/specials.inc @@ -549,3 +549,4 @@ gSpecials:: def_special ObjectEventInteractionClearBerryPests def_special ObjectEventInteractionBerryHasWeed def_special ObjectEventInteractionBerryHasPests + def_special CanWaterBerryPlot diff --git a/src/berry.c b/src/berry.c index 68c32db822..ac8dab7e16 100644 --- a/src/berry.c +++ b/src/berry.c @@ -2229,6 +2229,13 @@ static u8 GetPestsBonusByBerryType(u8 berry) return (bonus == 0) ? 2 : bonus * 5; } +bool8 CanWaterBerryPlot(void) +{ + if (!OW_BERRY_MOISTURE || OW_BERRY_ALWAYS_WATERABLE) + return TRUE; + return (gSaveBlock1Ptr->berryTrees[GetObjectEventBerryTreeId(gSelectedObjectEvent)].moistureLevel == 0); +} + void ObjectEventInteractionGetBerryTreeData(void) { u8 id;