#include "fine_booze.h" #include #include "../constants.h" fine_booze::fine_booze(const position &pos): potion{potion_type::fine_booze, DURATION, pos} {} void fine_booze::apply(const enum race &race, int &HP, int &ATK, int &DEF, fraction &base_hit_rate) { if (remaining_duration != 0) { int tmp = GAIN_HP; if (race == rdrow) tmp *= DROW_POTION_MUL; HP = std::min(HP + tmp, MAX_HP[race]); if (race == rbrawler) base_hit_rate = HR_TB; else base_hit_rate *= HR_MUL; --remaining_duration; } } int fine_booze::get_priority() const { return CALC_LAST; } const char *fine_booze::get_name() const { return "FB"; }