OSDN Git Service

[Refactor] #2124 Changed struct object_type to class ObjectType
[hengbandforosx/hengbandosx.git] / src / object-enchant / protector / apply-magic-crown.h
1 #pragma once
2
3 #include "object-enchant/protector/abstract-protector-enchanter.h"
4 #include "object-enchant/enchanter-base.h"
5 #include "system/angband.h"
6
7 class ObjectType;
8 class PlayerType;
9 class CrownEnchanter : AbstractProtectorEnchanter {
10 public:
11     CrownEnchanter(PlayerType *player_ptr, ObjectType *o_ptr, DEPTH level, int power);
12     virtual ~CrownEnchanter() = default;
13     void apply_magic() override;
14
15 protected:
16     void enchant() override{};
17     void give_ego_index() override;
18     void give_high_ego_index() override{};
19     void give_cursed() override;
20
21 private:
22     PlayerType *player_ptr;
23 };