OSDN Git Service

[Refactor] #1498 Replaced direct substitution to set()/reset()
authorHourier <66951241+Hourier@users.noreply.github.com>
Fri, 17 Sep 2021 15:01:01 +0000 (00:01 +0900)
committerHourier <66951241+Hourier@users.noreply.github.com>
Sat, 18 Sep 2021 13:10:05 +0000 (22:10 +0900)
src/cmd-building/cmd-inn.cpp
src/status/bad-status-setter.cpp
src/status/buff-setter.cpp
src/system/player-type-definition.h

index 7700c88..d0a0ff8 100644 (file)
@@ -117,9 +117,10 @@ static bool has_a_nightmare(player_type *player_ptr)
  */
 static void back_to_health(player_type *player_ptr)
 {
+    auto effects = player_ptr->effects();
     set_blind(player_ptr, 0);
     set_confused(player_ptr, 0);
-    player_ptr->stun = 0;
+    effects->stun()->reset();
     player_ptr->chp = player_ptr->mhp;
     player_ptr->csp = player_ptr->msp;
 }
index 1b8ef79..7f9baa9 100644 (file)
@@ -442,15 +442,17 @@ bool set_stun(player_type *player_ptr, TIME_EFFECT v)
         notice = true;
     }
 
-    player_ptr->stun = v;
-
-    if (!notice)
+    player_stun->set(v);
+    if (!notice) {
         return false;
+    }
 
-    if (disturb_state)
+    if (disturb_state) {
         disturb(player_ptr, false, false);
-    player_ptr->update |= (PU_BONUS);
-    player_ptr->redraw |= (PR_STUN);
+    }
+
+    player_ptr->update |= PU_BONUS;
+    player_ptr->redraw |= PR_STUN;
     handle_stuff(player_ptr);
     return true;
 }
index c0e2d6a..5632d6f 100644 (file)
@@ -25,6 +25,7 @@
  */
 void reset_tim_flags(player_type *player_ptr)
 {
+    auto effects = player_ptr->effects();
     player_ptr->fast = 0; /* Timed -- Fast */
     player_ptr->lightspeed = 0;
     player_ptr->slow = 0; /* Timed -- Slow */
@@ -35,7 +36,7 @@ void reset_tim_flags(player_type *player_ptr)
     player_ptr->image = 0; /* Timed -- Hallucination */
     player_ptr->poisoned = 0; /* Timed -- Poisoned */
     player_ptr->cut = 0; /* Timed -- Cut */
-    player_ptr->stun = 0; /* Timed -- Stun */
+    effects->stun()->reset();
 
     player_ptr->protevil = 0; /* Timed -- Protection */
     player_ptr->invuln = 0; /* Timed -- Invulnerable */
index 51bab32..d0b6c84 100644 (file)
@@ -98,8 +98,7 @@ public:
     TIME_EFFECT image{}; /* Timed -- Hallucination */
     TIME_EFFECT poisoned{}; /* Timed -- Poisoned */
     TIME_EFFECT cut{}; /* Timed -- Cut */
-    TIME_EFFECT stun{}; /* Timed -- Stun */
-
+    
     TIME_EFFECT protevil{}; /* Timed -- Protection */
     TIME_EFFECT invuln{}; /* Timed -- Invulnerable */
     TIME_EFFECT ult_res{}; /* Timed -- Ultimate Resistance */