2 * @brief 長柄/斧に耐性等の追加効果を付与する処理
7 #include "object-enchant/weapon/apply-magic-polearm.h"
8 #include "floor/floor-base-definitions.h"
9 #include "inventory/inventory-slot-types.h"
10 #include "sv-definition/sv-weapon-types.h"
11 #include "system/object-type-definition.h"
14 * @brief 長柄/斧強化クラスのコンストラクタ
15 * @param player_ptr プレイヤーへの参照ポインタ
16 * @param o_ptr 強化を与えたいオブジェクトの構造体参照ポインタ
20 PolearmEnchanter::PolearmEnchanter(PlayerType *player_ptr, ObjectType *o_ptr, DEPTH level, int power)
21 : MeleeWeaponEnchanter(player_ptr, o_ptr, level, power)
25 void PolearmEnchanter::decide_skip()
27 AbstractWeaponEnchanter::decide_skip();
28 this->should_skip |= this->o_ptr->sval == SV_DEATH_SCYTHE;
31 void PolearmEnchanter::give_ego_index()
34 this->o_ptr->ego_idx = get_random_ego(INVEN_MAIN_HAND, true);
35 if ((this->o_ptr->ego_idx == EgoType::SHARPNESS) || (this->o_ptr->ego_idx == EgoType::EARTHQUAKES)) {
43 void PolearmEnchanter::give_cursed()
45 if (randint0(MAX_DEPTH) >= this->level) {
50 this->o_ptr->ego_idx = get_random_ego(INVEN_MAIN_HAND, false);
51 if (this->o_ptr->ego_idx == EgoType::WEIRD) {