OSDN Git Service

Merge pull request #936 from shimitei/feature/#916_fix_sound_on_off
[hengbandforosx/hengbandosx.git] / src / player-status / player-status-base.h
1 #pragma once
2 #include "system/angband.h"
3 #include "player/player-status-flags.h"
4
5 typedef struct player_type player_type;
6 class PlayerStatusBase {
7 public:
8     PlayerStatusBase(player_type *owner_ptr);
9     PlayerStatusBase() = delete;
10     virtual ~PlayerStatusBase() = default;
11     virtual s16b get_value();
12     virtual BIT_FLAGS get_all_flags();
13     virtual BIT_FLAGS get_good_flags();
14     virtual BIT_FLAGS get_bad_flags();
15
16 protected:
17     s16b default_value;
18     s16b min_value;
19     s16b max_value;
20     player_type *owner_ptr;
21     tr_type tr_flag;
22     tr_type tr_bad_flag;
23     virtual void set_locals();
24     virtual s16b race_value();
25     virtual s16b class_value();
26     virtual s16b class_base_value();
27     virtual s16b personality_value();
28     virtual s16b equipments_value();
29     virtual s16b time_effect_value();
30     virtual s16b battleform_value();
31     virtual s16b mutation_value();
32     virtual s16b riding_value();
33     virtual s16b inventory_weight_value();
34     virtual s16b action_value();
35     virtual s16b set_exception_value(s16b value);
36     virtual BIT_FLAGS equipments_flags(tr_type check_flag);
37     virtual BIT_FLAGS equipments_bad_flags(tr_type check_flag);
38 };
39
40