From: Hourier <66951241+Hourier@users.noreply.github.com> Date: Fri, 24 Sep 2021 01:02:48 +0000 (+0900) Subject: [Refactor] #1599 Defined mod_blindness() and replaced the calls X-Git-Tag: vmacos3.0.0-alpha52~75^2~12^2~9 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=6399c5170b05ee6f75bfa1f9050848169d2f91dc;p=hengbandforosx%2Fhengbandosx.git [Refactor] #1599 Defined mod_blindness() and replaced the calls --- diff --git a/src/cmd-item/cmd-eat.cpp b/src/cmd-item/cmd-eat.cpp index c6bd64d37..8f124d028 100644 --- a/src/cmd-item/cmd-eat.cpp +++ b/src/cmd-item/cmd-eat.cpp @@ -66,7 +66,7 @@ bool exe_eat_food_type_object(player_type *player_ptr, object_type *o_ptr) case SV_FOOD_POISON: return (!(has_resist_pois(player_ptr) || is_oppose_pois(player_ptr))) && bss.poison(player_ptr->poisoned + randint0(10) + 10); case SV_FOOD_BLINDNESS: - return !has_resist_blind(player_ptr) && bss.blindness(player_ptr->blind + randint0(200) + 200); + return !has_resist_blind(player_ptr) && bss.mod_blindness(randint0(200) + 200); case SV_FOOD_PARANOIA: return !has_resist_fear(player_ptr) && bss.afraidness(player_ptr->afraid + randint0(10) + 10); case SV_FOOD_CONFUSION: diff --git a/src/cmd-item/cmd-usestaff.cpp b/src/cmd-item/cmd-usestaff.cpp index 705dd2c94..fbbff2c7e 100644 --- a/src/cmd-item/cmd-usestaff.cpp +++ b/src/cmd-item/cmd-usestaff.cpp @@ -75,7 +75,7 @@ int staff_effect(player_type *player_ptr, OBJECT_SUBTYPE_VALUE sval, bool *use_c switch (sval) { case SV_STAFF_DARKNESS: if (!has_resist_blind(player_ptr) && !has_resist_dark(player_ptr)) { - if (bss.blindness(player_ptr->blind + 3 + randint1(5))) { + if (bss.mod_blindness(3 + randint1(5))) { ident = true; } } diff --git a/src/core/magic-effects-timeout-reducer.cpp b/src/core/magic-effects-timeout-reducer.cpp index 7ccdb78dd..74e886b61 100644 --- a/src/core/magic-effects-timeout-reducer.cpp +++ b/src/core/magic-effects-timeout-reducer.cpp @@ -39,7 +39,7 @@ void reduce_magic_effects_timeout(player_type *player_ptr) } if (player_ptr->blind) { - (void)bss.blindness(player_ptr->blind - dec_count); + (void)bss.mod_blindness(-dec_count); } if (player_ptr->tim_invis) { diff --git a/src/effect/effect-player-resist-hurt.cpp b/src/effect/effect-player-resist-hurt.cpp index 4b621b18e..64007ea39 100644 --- a/src/effect/effect-player-resist-hurt.cpp +++ b/src/effect/effect-player-resist-hurt.cpp @@ -390,7 +390,7 @@ void effect_player_lite(player_type *player_ptr, effect_player_type *ep_ptr) if (player_ptr->blind) msg_print(_("何かで攻撃された!", "You are hit by something!")); if (!player_ptr->blind && !has_resist_lite(player_ptr) && !has_resist_blind(player_ptr) && !check_multishadow(player_ptr)) { - (void)BadStatusSetter(player_ptr).blindness(player_ptr->blind + randint1(5) + 2); + (void)BadStatusSetter(player_ptr).mod_blindness(randint1(5) + 2); } ep_ptr->dam = ep_ptr->dam * calc_lite_damage_rate(player_ptr, CALC_RAND) / 100; @@ -421,7 +421,7 @@ void effect_player_dark(player_type *player_ptr, effect_player_type *ep_ptr) ep_ptr->dam = ep_ptr->dam * calc_dark_damage_rate(player_ptr, CALC_RAND) / 100; if (!player_ptr->blind && !has_resist_dark(player_ptr) && !has_resist_blind(player_ptr) && !check_multishadow(player_ptr)) { - (void)BadStatusSetter(player_ptr).blindness(player_ptr->blind + randint1(5) + 2); + (void)BadStatusSetter(player_ptr).mod_blindness(randint1(5) + 2); } ep_ptr->get_damage = take_hit(player_ptr, DAMAGE_ATTACK, ep_ptr->dam, ep_ptr->killer); diff --git a/src/effect/effect-player-spirit.cpp b/src/effect/effect-player-spirit.cpp index 1db5c7052..ffe1f30f6 100644 --- a/src/effect/effect-player-spirit.cpp +++ b/src/effect/effect-player-spirit.cpp @@ -119,7 +119,7 @@ void effect_player_brain_smash(player_type *player_ptr, effect_player_type *ep_p BadStatusSetter bss(player_ptr); if (!has_resist_blind(player_ptr)) { - (void)bss.blindness(player_ptr->blind + 8 + randint0(8)); + (void)bss.mod_blindness(8 + randint0(8)); } if (!has_resist_conf(player_ptr)) { diff --git a/src/grid/trap.cpp b/src/grid/trap.cpp index eecfa0e71..5f15edad3 100644 --- a/src/grid/trap.cpp +++ b/src/grid/trap.cpp @@ -499,7 +499,7 @@ void hit_trap(player_type *player_ptr, bool break_trap) case TRAP_BLIND: msg_print(_("黒いガスに包み込まれた!", "A black gas surrounds you!")); if (has_resist_blind(player_ptr) == 0) { - (void)BadStatusSetter(player_ptr).blindness(player_ptr->blind + (TIME_EFFECT)randint0(50) + 25); + (void)BadStatusSetter(player_ptr).mod_blindness(randint0(50) + 25); } break; diff --git a/src/monster-attack/monster-attack-status.cpp b/src/monster-attack/monster-attack-status.cpp index a6dbb078e..8ce2939aa 100644 --- a/src/monster-attack/monster-attack-status.cpp +++ b/src/monster-attack/monster-attack-status.cpp @@ -35,7 +35,7 @@ void process_blind_attack(player_type *player_ptr, monap_type *monap_ptr) return; } - if (!BadStatusSetter(player_ptr).blindness(player_ptr->blind + 10 + randint1(monap_ptr->rlev))) { + if (!BadStatusSetter(player_ptr).mod_blindness(10 + randint1(monap_ptr->rlev))) { return; } diff --git a/src/object-use/quaff-execution.cpp b/src/object-use/quaff-execution.cpp index f71ef883f..e9e6164f4 100644 --- a/src/object-use/quaff-execution.cpp +++ b/src/object-use/quaff-execution.cpp @@ -207,7 +207,7 @@ void exe_quaff_potion(player_type *player_ptr, INVENTORY_IDX item) case SV_POTION_BLINDNESS: if (!has_resist_blind(player_ptr)) { - if (BadStatusSetter(player_ptr).blindness(player_ptr->blind + randint0(100) + 100)) { + if (BadStatusSetter(player_ptr).mod_blindness(randint0(100) + 100)) { ident = true; } } diff --git a/src/object-use/read-execution.cpp b/src/object-use/read-execution.cpp index 9e8614f0d..86811ced8 100644 --- a/src/object-use/read-execution.cpp +++ b/src/object-use/read-execution.cpp @@ -107,7 +107,7 @@ void exe_read(player_type *player_ptr, INVENTORY_IDX item, bool known) switch (o_ptr->sval) { case SV_SCROLL_DARKNESS: { if (!has_resist_blind(player_ptr) && !has_resist_dark(player_ptr)) - (void)BadStatusSetter(player_ptr).blindness(player_ptr->blind + 3 + randint1(5)); + (void)BadStatusSetter(player_ptr).mod_blindness(3 + randint1(5)); if (unlite_area(player_ptr, 10, 3)) ident = true; diff --git a/src/spell-kind/spells-floor.cpp b/src/spell-kind/spells-floor.cpp index e004d0ba4..14a316d9c 100644 --- a/src/spell-kind/spells-floor.cpp +++ b/src/spell-kind/spells-floor.cpp @@ -444,7 +444,7 @@ bool destroy_area(player_type *player_ptr, POSITION y1, POSITION x1, POSITION r, if (flag) { msg_print(_("燃えるような閃光が発生した!", "There is a searing blast of light!")); if (!has_resist_blind(player_ptr) && !has_resist_lite(player_ptr)) { - (void)BadStatusSetter(player_ptr).blindness(player_ptr->blind + 10 + randint1(10)); + (void)BadStatusSetter(player_ptr).mod_blindness(10 + randint1(10)); } } diff --git a/src/spell/spells-status.cpp b/src/spell/spells-status.cpp index 3bbf88dec..02ab7327c 100644 --- a/src/spell/spells-status.cpp +++ b/src/spell/spells-status.cpp @@ -571,9 +571,9 @@ bool cosmic_cast_off(player_type *player_ptr, object_type **o_ptr_ptr) /* Get effects */ msg_print(_("「燃え上がれ俺の小宇宙!」", "You say, 'Burn up my cosmo!")); - int t = 20 + randint1(20); + TIME_EFFECT t = 20 + randint1(20); BadStatusSetter bss(player_ptr); - (void)bss.blindness(player_ptr->blind + t); + (void)bss.mod_blindness(t); (void)bss.afraidness(0); (void)set_tim_esp(player_ptr, player_ptr->tim_esp + t, false); (void)set_tim_regen(player_ptr, player_ptr->tim_regen + t, false); diff --git a/src/status/bad-status-setter.cpp b/src/status/bad-status-setter.cpp index a45822bf0..0274e930d 100644 --- a/src/status/bad-status-setter.cpp +++ b/src/status/bad-status-setter.cpp @@ -86,6 +86,11 @@ bool BadStatusSetter::blindness(const TIME_EFFECT tmp_v) return true; } +bool BadStatusSetter::mod_blindness(const TIME_EFFECT tmp_v) +{ + return this->blindness(this->player_ptr->blind + tmp_v); +} + /*! * @brief 混乱の継続時間をセットする / Set "confused", notice observable changes * @param v 継続時間 diff --git a/src/status/bad-status-setter.h b/src/status/bad-status-setter.h index cde15b2ae..57878c75c 100644 --- a/src/status/bad-status-setter.h +++ b/src/status/bad-status-setter.h @@ -15,6 +15,7 @@ public: virtual ~BadStatusSetter() = default; bool blindness(const TIME_EFFECT tmp_v); + bool mod_blindness(const TIME_EFFECT tmp_v); bool confusion(const TIME_EFFECT tmp_v); bool poison(const TIME_EFFECT tmp_v); bool afraidness(const TIME_EFFECT tmp_v);