From: Hourier <66951241+Hourier@users.noreply.github.com> Date: Thu, 10 Mar 2022 10:30:33 +0000 (+0900) Subject: [Refactor] #1642 Separated salt_water() from influence() X-Git-Tag: 3.0.0Alpha57^2~28^2~17 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=2eeb66409f1fed1ab101fc39ad09a3145aa10292;p=hengbandforosx%2Fhengbandosx.git [Refactor] #1642 Separated salt_water() from influence() --- diff --git a/src/object-use/quaff/quaff-effects.cpp b/src/object-use/quaff/quaff-effects.cpp index 3d3c8a063..d7f177478 100644 --- a/src/object-use/quaff/quaff-effects.cpp +++ b/src/object-use/quaff/quaff-effects.cpp @@ -74,24 +74,8 @@ bool QuaffEffects::influence(const ObjectType &o_ref) } break; - case SV_POTION_SALT_WATER: { - msg_print(_("うぇ!思わず吐いてしまった。", "The potion makes you vomit!")); - switch (PlayerRace(this->player_ptr).food()) { - case PlayerRaceFoodType::RATION: - case PlayerRaceFoodType::WATER: - case PlayerRaceFoodType::BLOOD: - (void)set_food(this->player_ptr, PY_FOOD_STARVE - 1); - break; - default: - break; - } - - BadStatusSetter bss(this->player_ptr); - (void)bss.poison(0); - (void)bss.mod_paralysis(4); - ident = true; - break; - } + case SV_POTION_SALT_WATER: + return this->salt_water(); case SV_POTION_POISON: if (!(has_resist_pois(this->player_ptr) || is_oppose_pois(this->player_ptr))) { if (BadStatusSetter(this->player_ptr).mod_poison(randint0(15) + 10)) { @@ -496,8 +480,30 @@ bool QuaffEffects::influence(const ObjectType &o_ref) } /*! + * @brief 塩水の薬 + * @return 常にtrue + */ +bool QuaffEffects::salt_water() +{ + msg_print(_("うぇ!思わず吐いてしまった。", "The potion makes you vomit!")); + switch (PlayerRace(this->player_ptr).food()) { + case PlayerRaceFoodType::RATION: + case PlayerRaceFoodType::WATER: + case PlayerRaceFoodType::BLOOD: + (void)set_food(this->player_ptr, PY_FOOD_STARVE - 1); + break; + default: + break; + } + + BadStatusSetter bss(this->player_ptr); + (void)bss.poison(0); + (void)bss.mod_paralysis(4); + return true; +} + +/*! * @brief 酔っ払いの薬 - * @param player_ptr プレイヤーへの参照ポインタ * @return カオス耐性があるかその他の一部確率でFALSE、それ以外はTRUE */ bool QuaffEffects::booze() @@ -542,8 +548,7 @@ bool QuaffEffects::booze() } /*! - * @brief 爆発の薬の効果処理 / Fumble ramble - * @param player_ptr プレイヤーへの参照ポインタ + * @brief 爆発の薬 / Fumble ramble * @return 常にTRUE */ bool QuaffEffects::detonation() diff --git a/src/object-use/quaff/quaff-effects.h b/src/object-use/quaff/quaff-effects.h index 82620acb0..8191f524a 100644 --- a/src/object-use/quaff/quaff-effects.h +++ b/src/object-use/quaff/quaff-effects.h @@ -11,6 +11,7 @@ public: private: PlayerType *player_ptr; + bool salt_water(); bool booze(); bool detonation(); };