OSDN Git Service

Merge pull request #567 from sikabane-works/feature/fix-lighting-ball-mes
[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 class PlayerStatusBase {
6 public:
7     PlayerStatusBase(player_type *owner_ptr);
8     PlayerStatusBase() = delete;
9     virtual ~PlayerStatusBase() = default;
10     virtual s16b get_value();
11     virtual BIT_FLAGS get_all_flags();
12     virtual BIT_FLAGS get_good_flags();
13     virtual BIT_FLAGS get_bad_flags();
14
15 protected:
16     s16b default_value;
17     s16b min_value;
18     s16b max_value;
19     player_type *owner_ptr;
20     tr_type tr_flag;
21     tr_type tr_bad_flag;
22     virtual void set_locals();
23     virtual s16b race_value();
24     virtual s16b class_value();
25     virtual s16b class_base_value();
26     virtual s16b personality_value();
27     virtual s16b equipments_value();
28     virtual s16b time_effect_value();
29     virtual s16b battleform_value();
30     virtual s16b mutation_value();
31     virtual s16b riding_value();
32     virtual s16b inventory_weight_value();
33     virtual s16b action_value();
34     virtual s16b set_exception_value(s16b value);
35     virtual BIT_FLAGS equipments_flags(tr_type check_flag);
36     virtual BIT_FLAGS equipments_bad_flags(tr_type check_flag);
37 };
38
39