OSDN Git Service

[Refactor] #40467 Separated set_zangband_special_attack() from extra-loader.c to...
authorHourier <hourier@users.sourceforge.jp>
Sun, 5 Jul 2020 07:35:02 +0000 (16:35 +0900)
committerHourier <hourier@users.sourceforge.jp>
Sun, 5 Jul 2020 07:35:02 +0000 (16:35 +0900)
src/savedata/extra-loader.c
src/savedata/load-zangband.c
src/savedata/load-zangband.h

index 1f79d39..ce01299 100644 (file)
@@ -442,13 +442,9 @@ void rd_extra(player_type *creature_ptr)
     rd_timed_effects(creature_ptr);
     creature_ptr->mutant_regenerate_mod = calc_mutant_regenerate_mod(creature_ptr);
     byte tmp8u;
-    if (z_older_than(10, 0, 9)) {
-        rd_byte(&tmp8u);
-        if (tmp8u)
-            creature_ptr->special_attack = ATTACK_CONFUSE;
-
-        creature_ptr->ele_attack = 0;
-    } else {
+    if (z_older_than(10, 0, 9))
+        set_zangband_special_attack(creature_ptr);
+    else {
         rd_s16b(&creature_ptr->ele_attack);
         rd_u32b(&creature_ptr->special_attack);
     }
index 3067dda..c2d609b 100644 (file)
@@ -5,6 +5,7 @@
 #include "game-option/option-flags.h"
 #include "market/bounty.h"
 #include "monster-race/monster-race.h"
+#include "player/attack-defense-types.h"
 #include "player/avatar.h"
 #include "player/patron.h"
 #include "player/player-skill.h"
@@ -185,3 +186,13 @@ void set_zangband_gambling_monsters(int i)
     rd_s16b(&tmp16s);
     mon_odds[i] = tmp16s;
 }
+
+void set_zangband_special_attack(player_type *creature_ptr)
+{
+    byte tmp8u;
+    rd_byte(&tmp8u);
+    if (tmp8u)
+        creature_ptr->special_attack = ATTACK_CONFUSE;
+
+    creature_ptr->ele_attack = 0;
+}
index b23681b..36ee337 100644 (file)
@@ -15,3 +15,4 @@ void set_zangband_reflection(player_type *creature_ptr);
 void rd_zangband_dungeon(void);
 void set_zangband_game_turns(player_type *creature_ptr);
 void set_zangband_gambling_monsters(int i);
+void set_zangband_special_attack(player_type *creature_ptr);