diff --git a/src/constants.c b/src/constants.c index 7fd6e9d7..41cfee0f 100755 --- a/src/constants.c +++ b/src/constants.c @@ -2330,30 +2330,40 @@ const char *drinks[] = {"water", "blood", "salt water", "clear water", + "juice", + "nectar", + "ambrosia", + "silvanesti wine", + "elvenblossom wine", + "herbal remedy" + "tarbean tea" "\n"}; CHECK_TABLE_SIZE(drinks, NUM_LIQ_TYPES + 1); /** Describes a one word alias for each type of liquid. * @pre Must be in the same order as the defines. * Must end array with a single newline. */ -const char *drinknames[] = {"water", "beer", "wine", "ale", "ale", "whisky", - "lemonade", "firebreather", "local", "juice", "milk", "tea", - "coffee", "blood", "salt", "water", "\n"}; +const char *drinknames[] = {"water", "beer", "wine", "ale", "ale", "whisky", + "lemonade", "firebreather", "local", "milk", "tea", "coffee", + "blood", "salt", "water", "juice", "nectar", "silvwine", + "elvenblossom", "healremedy", "tarbean", "\n"}; CHECK_TABLE_SIZE(drinknames, NUM_LIQ_TYPES + 1); /** Define the effect of liquids on hunger, thirst, and drunkenness, in that * order. See values.doc for more information. * @pre Must be in the same order as the defines. */ -int drink_aff[][3] = {{0, 1, 10}, {3, 2, 5}, {5, 2, 5}, {2, 2, 5}, {1, 2, 5}, {6, 1, 4}, - {0, 1, 8}, {10, 0, 0}, {3, 3, 3}, {0, 4, -8}, {0, 3, 6}, {0, 1, 6}, - {0, 1, 6}, {0, 2, -1}, {0, 1, -2}, {0, 0, 13}}; +int drink_aff[][3] = {{0, 1, 10}, {3, 2, 5}, {5, 2, 5}, {2, 2, 5}, {1, 2, 5}, {6, 1, 4}, + {0, 1, 8}, {10, 0, 0}, {3, 3, 3}, {0, 4, -8}, {0, 3, 6}, {0, 1, 6}, + {0, 1, 6}, {0, 2, -1}, {0, 1, -2}, {0, 0, 13}, {0, 1, 10}, {0, 1, 10}, + {5, 2, 5}, {0, 1, 4}, {0, 1, 10}, {0, 2, -1}}; /** Describes the color of the various drinks. * @pre Must be in the same order as the defines. * Must end array with a single newline. */ const char *color_liquid[] = {"clear", "brown", "clear", "brown", "dark", "golden", "red", "green", "clear", "light green", "white", "brown", - "black", "red", "clear", "crystal clear", "\n"}; + "black", "red", "clear", "crystal clear", "bright", "multicolor", + "silver", "crystal green", "disgusting green", "black", "\n"}; CHECK_TABLE_SIZE(color_liquid, NUM_LIQ_TYPES + 1); /** Used to describe the level of fullness of a drink container. Not used in diff --git a/src/structs.h b/src/structs.h index d04af011..7b5df12b 100755 --- a/src/structs.h +++ b/src/structs.h @@ -4962,8 +4962,15 @@ #define LIQ_BLOOD 13 /**< Liquid type blood */ #define LIQ_SALTWATER 14 /**< Liquid type saltwater */ #define LIQ_CLEARWATER 15 /**< Liquid type clearwater */ +#define LIQ_JUICE 16 /**< Liquid type juice */ +#define LIQ_NECTAR 17 /**< Liquid type nectar */ +#define LIQ_AMBROSIA 18 /**< Liquid type ambrosia */ +#define LIQ_SILVWINE 19 /**< Liquid type silvanesti wine */ +#define LIQ_ELVBLOSS 20 /**< Liquid type elvenblossom */ +#define LIQ_HEALREME 21 /**< Liquid type herbal remedy */ +#define LIQ_TARBEAN 22 /**< Liquid type tarbean tea */ /** Total number of liquid types */ -#define NUM_LIQ_TYPES 16 +#define NUM_LIQ_TYPES 23 /* WEAPON and ARMOR defines */ diff --git a/src/utils.c b/src/utils.c index ae76189a..b22146bc 100755 --- a/src/utils.c +++ b/src/utils.c @@ -10172,6 +10172,20 @@ int get_bonus_from_liquid_type(int liquid) return APPLY_NONE; case LIQ_CLEARWATER: return APPLY_HIT; + case LIQ_JUICE: + return APPLY_DEX; + case LIQ_NECTAR: + return APPLY_STR; + case LIQ_AMBROSIA: + return APPLY_WIS; + case LIQ_SILVWINE: + return APPLY_INT; + case LIQ_ELVBLOSS: + return APPLY_CHA; + case LIQ_HEALREME: + return APPLY_FAST_HEALING; + case LIQ_TARBEAN: + return APPLY_CHA; default: return APPLY_HP_REGEN; }