OSDN Git Service

[Refactor] #39963 Separated effect_player_old_*() from switch_effects_player()
authorHourier <hourier@users.sourceforge.jp>
Mon, 4 May 2020 11:16:41 +0000 (20:16 +0900)
committerHourier <hourier@users.sourceforge.jp>
Mon, 4 May 2020 13:37:40 +0000 (22:37 +0900)
src/effect/effect-player-switcher.c

index 6719251..dd861a3 100644 (file)
 #include "object-curse.h"
 #include "effect/effect-player-resist-hurt.h"
 
+void effect_player_old_heal(player_type *target_ptr,
+                            effect_player_type *ep_ptr) {
+  if (target_ptr->blind)
+    msg_print(_("\89½\82ç\82©\82Ì\8dU\8c\82\82É\82æ\82Á\82Ä\8bC\95ª\82ª\82æ\82­\82È\82Á\82½\81B",
+                "You are hit by something invigorating!"));
+
+  (void)hp_player(target_ptr, ep_ptr->dam);
+  ep_ptr->dam = 0;
+}
+
+void effect_player_old_speed(player_type *target_ptr,
+                             effect_player_type *ep_ptr) {
+  if (target_ptr->blind)
+    msg_print(_("\89½\82©\82Å\8dU\8c\82\82³\82ê\82½\81I", "You are hit by something!"));
+
+  (void)set_fast(target_ptr, target_ptr->fast + randint1(5), FALSE);
+  ep_ptr->dam = 0;
+}
+
+void effect_player_old_slow(player_type *target_ptr) {
+  if (target_ptr->blind)
+    msg_print(
+        _("\89½\82©\92x\82¢\82à\82Ì\82Å\8dU\8c\82\82³\82ê\82½\81I", "You are hit by something slow!"));
+
+  (void)set_slow(target_ptr, target_ptr->slow + randint0(4) + 4, FALSE);
+}
+
+void effect_player_old_sleep(player_type *target_ptr,
+                             effect_player_type *ep_ptr) {
+  if (target_ptr->free_act)
+    return;
+
+  if (target_ptr->blind)
+    msg_print(_("\96°\82Á\82Ä\82µ\82Ü\82Á\82½\81I", "You fall asleep!"));
+
+  if (ironman_nightmare) {
+    msg_print(_("\8b°\82ë\82µ\82¢\8cõ\8ci\82ª\93ª\82É\95\82\82©\82ñ\82Å\82«\82½\81B",
+                "A horrible vision enters your mind."));
+
+    /* Have some nightmares */
+    sanity_blast(target_ptr, NULL, FALSE);
+  }
+
+  set_paralyzed(target_ptr, target_ptr->paralyzed + ep_ptr->dam);
+  ep_ptr->dam = 0;
+}
+
 /*!
  * @brief \96\82\96@\82Ì\8cø\89Ê\82É\82æ\82Á\82Ä\97l\81X\82È\83\81\83b\83Z\81[\82ð\8fo\97Í\82µ\82½\82è\97^\82¦\82é\83_\83\81\81[\83W\82Ì\91\9d\8c¸\82ð\8ds\82Á\82½\82è\82·\82é
  * @param target_ptr \83v\83\8c\81[\83\84\81[\82Ö\82Ì\8eQ\8fÆ\83|\83C\83\93\83^
@@ -103,42 +150,17 @@ void switch_effects_player(player_type *target_ptr, effect_player_type *ep_ptr)
                effect_player_disintegration(target_ptr, ep_ptr);
                return;
        case GF_OLD_HEAL:
-       {
-               if (target_ptr->blind) msg_print(_("\89½\82ç\82©\82Ì\8dU\8c\82\82É\82æ\82Á\82Ä\8bC\95ª\82ª\82æ\82­\82È\82Á\82½\81B", "You are hit by something invigorating!"));
-
-               (void)hp_player(target_ptr, ep_ptr->dam);
-               ep_ptr->dam = 0;
-               break;
-       }
+        effect_player_old_heal(target_ptr, ep_ptr);
+        return;
        case GF_OLD_SPEED:
-       {
-               if (target_ptr->blind) msg_print(_("\89½\82©\82Å\8dU\8c\82\82³\82ê\82½\81I", "You are hit by something!"));
-               (void)set_fast(target_ptr, target_ptr->fast + randint1(5), FALSE);
-               ep_ptr->dam = 0;
-               break;
-       }
+               effect_player_old_speed(target_ptr, ep_ptr);
+        return;
        case GF_OLD_SLOW:
-       {
-               if (target_ptr->blind) msg_print(_("\89½\82©\92x\82¢\82à\82Ì\82Å\8dU\8c\82\82³\82ê\82½\81I", "You are hit by something slow!"));
-               (void)set_slow(target_ptr, target_ptr->slow + randint0(4) + 4, FALSE);
-               break;
-       }
+               effect_player_old_slow(target_ptr);
+               return;
        case GF_OLD_SLEEP:
-       {
-               if (target_ptr->free_act)  break;
-               if (target_ptr->blind) msg_print(_("\96°\82Á\82Ä\82µ\82Ü\82Á\82½\81I", "You fall asleep!"));
-
-               if (ironman_nightmare)
-               {
-                       msg_print(_("\8b°\82ë\82µ\82¢\8cõ\8ci\82ª\93ª\82É\95\82\82©\82ñ\82Å\82«\82½\81B", "A horrible vision enters your mind."));
-                       /* Have some nightmares */
-                       sanity_blast(target_ptr, NULL, FALSE);
-               }
-
-               set_paralyzed(target_ptr, target_ptr->paralyzed + ep_ptr->dam);
-               ep_ptr->dam = 0;
-               break;
-       }
+               effect_plyaer_old_sleep(target_ptr, ep_ptr);
+               return;
        case GF_MANA:
        case GF_SEEKER:
        case GF_SUPER_RAY: