1 #include "load/player-attack-loader.h"
2 #include "load/angband-version-comparer.h"
3 #include "load/load-util.h"
4 #include "load/load-zangband.h"
5 #include "player-base/player-class.h"
6 #include "player-info/monk-data-type.h"
7 #include "player-info/samurai-data-type.h"
8 #include "player/attack-defense-types.h"
9 #include "player/special-defense-types.h"
10 #include "system/player-type-definition.h"
12 void rd_special_attack(PlayerType *player_ptr)
14 if (h_older_than(0, 0, 9)) {
15 set_zangband_special_attack(player_ptr);
19 player_ptr->ele_attack = rd_s16b();
20 player_ptr->special_attack = rd_u32b();
23 void rd_special_action(PlayerType *player_ptr)
25 if (!PlayerClass(player_ptr).monk_stance_is(MonkStanceType::NONE)) {
26 player_ptr->action = ACTION_MONK_STANCE;
30 if (!PlayerClass(player_ptr).samurai_stance_is(SamuraiStanceType::NONE)) {
31 player_ptr->action = ACTION_SAMURAI_STANCE;
35 void rd_special_defense(PlayerType *player_ptr)
37 if (h_older_than(0, 0, 12)) {
38 set_zangband_special_defense(player_ptr);
42 player_ptr->ele_immune = rd_s16b();
43 player_ptr->special_defense = rd_u32b();
46 void rd_action(PlayerType *player_ptr)
49 player_ptr->action = rd_byte();
50 if (!h_older_than(0, 4, 3)) {
51 set_zangband_action(player_ptr);