Add Berry color and drain rate

This commit is contained in:
Bassoonian 2023-12-05 02:16:22 +01:00
parent 0d70d9951d
commit 6da03e6cf0
6 changed files with 197 additions and 18 deletions

View file

@ -40,7 +40,7 @@ BerryTree_EventScript_WantToPlant::
end
BerryTree_EventScript_WantToMulch::
.if OW_MULCH_USAGE == TRUE
.if OW_BERRY_MULCH_USAGE == TRUE
msgbox BerryTree_Text_WantToMulch, MSGBOX_YESNO
goto_if_eq VAR_RESULT, YES, BerryTree_EventScript_ChooseMulchToUse
goto_if_eq VAR_RESULT, NO, BerryTree_EventScript_CancelPlanting
@ -48,7 +48,7 @@ BerryTree_EventScript_WantToMulch::
end
BerryTree_EventScript_WantToPlantMulch::
.if OW_MULCH_USAGE == TRUE
.if OW_BERRY_MULCH_USAGE == TRUE
message BerryTree_Text_ItsSoftLoamySoil
waitmessage
multichoice 0, 0, MULTI_BERRY_PLOT, FALSE
@ -355,7 +355,7 @@ BerryTree_Text_PutAwayBerry_Mutation:
.string "loamy state.$"
.endif
.if OW_MULCH_USAGE == TRUE
.if OW_BERRY_MULCH_USAGE == TRUE
BerryTree_EventScript_UseMulch::
special ObjectEventInteractionApplyMulch
message BerryTree_Text_ScatteredMulch

View file

@ -13,8 +13,12 @@
#define OW_PC_JAPAN_WALDA_ICONS TRUE // In the US release of Emerald, the Cross, Bolt, and Plusle icons for Walda's wallpapers were left blank from the Japan release. Setting this to TRUE will restore them.
// Berry settings
#define OW_BERRY_MUTATIONS FALSE // If enabled, Berry plants can mutate based on berries planted next to them.
#define OW_MULCH_USAGE TRUE // If enabled, Mulch can be used on soil to fertilize it. Otherwise, it is considered unusable.
#define OW_BERRY_MUTATIONS FALSE // If enabled, Berry plants can mutate based on berries planted next to them.
#define OW_BERRY_MULCH_USAGE TRUE // If enabled, Mulch can be used on soil to fertilize it. Otherwise, it is considered unusable.
#define OW_BERRY_WEEDS FALSE // If enabled, weeds may grow on Berry plants that the player needs to take care of.
#define OW_BERRY_PESTS FALSE // If enabled, pests may approach Berry plants that the player needs to take care of.
#define OW_BERRY_MOISTURE FALSE // If enabled, Berry watering is not a matter of watering it once per stage, but rather of keeping the soil moist.
#define OW_BERRY_VARIABLE_DRAIN_RATE FALSE // If moisture is enabled, this setting uses the Gen4 drain rates for different berries
// Out-of-battle Ability effects
#define OW_SYNCHRONIZE_NATURE GEN_LATEST // In Gen8, if a Pokémon with Synchronize is leading the party, it's 100% guaranteed that wild Pokémon will have the same Nature, as opposed to 50% previously. Stationary Pokémon are excluded in Gen3. In Gen6, all No Eggs Discovered gift Pokémon will have the same Nature, while in Gen7 all gift Pokémon will, regardless of Egg Group - In Gen 8, no gift Pokémon are affected. In Gen9, this ability has no out-of-battle effect.

View file

@ -10,6 +10,13 @@
#define BERRY_FIRMNESS_VERY_HARD 4
#define BERRY_FIRMNESS_SUPER_HARD 5
#define BERRY_COLOR_RED 0
#define BERRY_COLOR_BLUE 1
#define BERRY_COLOR_PURPLE 2
#define BERRY_COLOR_GREEN 3
#define BERRY_COLOR_YELLOW 4
#define BERRY_COLOR_PINK 5
#define FLAVOR_SPICY 0
#define FLAVOR_DRY 1
#define FLAVOR_SWEET 2

View file

@ -7,7 +7,8 @@
struct Berry
{
const u8 name[BERRY_NAME_LENGTH + 1];
u8 firmness;
u8 firmness:4;
u8 color:4;
u16 size;
u8 maxYield;
u8 minYield;
@ -20,6 +21,7 @@ struct Berry
u8 bitter;
u8 sour;
u8 smoothness;
u8 drainRate;
};
// with no const fields
@ -27,7 +29,8 @@ struct Berry
struct Berry2
{
u8 name[BERRY_NAME_LENGTH + 1];
u8 firmness;
u8 firmness:4;
u8 color:4;
u16 size;
u8 maxYield;
u8 minYield;
@ -40,7 +43,7 @@ struct Berry2
u8 bitter;
u8 sour;
u8 smoothness;
//u8 padding;
u8 drainRate;
};
struct EnigmaBerry

File diff suppressed because it is too large Load diff

View file

@ -2164,7 +2164,7 @@ const struct Item gItems[] =
{
.name = _("Growth Mulch"),
.price = 200,
.description = OW_MULCH_USAGE ? sGrowthMulchDesc : sGenericMulchDesc,
.description = OW_BERRY_MULCH_USAGE ? sGrowthMulchDesc : sGenericMulchDesc,
.pocket = POCKET_ITEMS,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
@ -2176,7 +2176,7 @@ const struct Item gItems[] =
{
.name = _("Damp Mulch"),
.price = 200,
.description = OW_MULCH_USAGE ? sDampMulchDesc : sGenericMulchDesc,
.description = OW_BERRY_MULCH_USAGE ? sDampMulchDesc : sGenericMulchDesc,
.pocket = POCKET_ITEMS,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
@ -2188,7 +2188,7 @@ const struct Item gItems[] =
{
.name = _("Stable Mulch"),
.price = 200,
.description = OW_MULCH_USAGE ? sStableMulchDesc : sGenericMulchDesc,
.description = OW_BERRY_MULCH_USAGE ? sStableMulchDesc : sGenericMulchDesc,
.pocket = POCKET_ITEMS,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
@ -2200,7 +2200,7 @@ const struct Item gItems[] =
{
.name = _("Gooey Mulch"),
.price = 200,
.description = OW_MULCH_USAGE ? sGooeyMulchDesc : sGenericMulchDesc,
.description = OW_BERRY_MULCH_USAGE ? sGooeyMulchDesc : sGenericMulchDesc,
.pocket = POCKET_ITEMS,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
@ -2212,7 +2212,7 @@ const struct Item gItems[] =
{
.name = _("Rich Mulch"),
.price = 200,
.description = OW_MULCH_USAGE ? sRichMulchDesc : sGenericMulchDesc,
.description = OW_BERRY_MULCH_USAGE ? sRichMulchDesc : sGenericMulchDesc,
.pocket = POCKET_ITEMS,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
@ -2224,7 +2224,7 @@ const struct Item gItems[] =
{
.name = _("SurprseMulch"),
.price = 200,
.description = OW_MULCH_USAGE ? sSurpriseMulchDesc : sGenericMulchDesc,
.description = OW_BERRY_MULCH_USAGE ? sSurpriseMulchDesc : sGenericMulchDesc,
.pocket = POCKET_ITEMS,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
@ -2236,7 +2236,7 @@ const struct Item gItems[] =
{
.name = _("Boost Mulch"),
.price = 200,
.description = OW_MULCH_USAGE ? sBoostMulchDesc : sGenericMulchDesc,
.description = OW_BERRY_MULCH_USAGE ? sBoostMulchDesc : sGenericMulchDesc,
.pocket = POCKET_ITEMS,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,
@ -2248,7 +2248,7 @@ const struct Item gItems[] =
{
.name = _("Amaze Mulch"),
.price = 200,
.description = OW_MULCH_USAGE ? sAmazeMulchDesc : sGenericMulchDesc,
.description = OW_BERRY_MULCH_USAGE ? sAmazeMulchDesc : sGenericMulchDesc,
.pocket = POCKET_ITEMS,
.type = ITEM_USE_BAG_MENU,
.fieldUseFunc = ItemUseOutOfBattle_CannotUse,