OSDN Git Service

Merge pull request #3532 from sikabane-works/release/3.0.0.87-alpha
[hengbandforosx/hengbandosx.git] / src / object-enchant / protector / apply-magic-dragon-armor.cpp
1 /*
2  * @brief ドラゴン・スケイルメイルに耐性等の追加効果を付与する処理
3  * @date 2022/03/12
4  * @author Hourier
5  */
6
7 #include "object-enchant/protector/apply-magic-dragon-armor.h"
8 #include "artifact/random-art-generator.h"
9 #include "object-enchant/protector/abstract-protector-enchanter.h"
10 #include "system/item-entity.h"
11 #include "system/player-type-definition.h"
12
13 /*
14  * @brief コンストラクタ
15  * @param player_ptr プレイヤーへの参照ポインタ
16  * @param o_ptr 強化を与えたいオブジェクトの構造体参照ポインタ
17  * @param level 生成基準階
18  * @param power 生成ランク
19  */
20 DragonArmorEnchanter::DragonArmorEnchanter(PlayerType *player_ptr, ItemEntity *o_ptr, DEPTH level, int power)
21     : AbstractProtectorEnchanter{ o_ptr, level, power }
22     , player_ptr(player_ptr)
23 {
24 }
25
26 /*!
27  * @brief power > 2 はデバッグ専用.
28  */
29 void DragonArmorEnchanter::apply_magic()
30 {
31     if ((this->power > 2) || one_in_(50)) {
32         become_random_artifact(this->player_ptr, this->o_ptr, false);
33     }
34 }