From: deskull Date: Sat, 2 Nov 2019 23:56:06 +0000 (+0900) Subject: [Refactor] #38997 remove_curse(), remove_all_curse(), remove_curse_aux() に player_typ... X-Git-Tag: vmacos3.0.0-alpha52~2552 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=a291fb0aef62db636152817926238a4a43f04215;p=hengbandforosx%2Fhengbandosx.git [Refactor] #38997 remove_curse(), remove_all_curse(), remove_curse_aux() に player_type * 引数を追加. / Add player_type * argument to remove_curse(), remove_all_curse(), remove_curse_aux(). --- diff --git a/src/cmd/cmd-activate.c b/src/cmd/cmd-activate.c index fb36cf8cf..4a029b440 100644 --- a/src/cmd/cmd-activate.c +++ b/src/cmd/cmd-activate.c @@ -1626,7 +1626,7 @@ bool activate_artifact(player_type *user_ptr, object_type *o_ptr) case ACT_DISP_CURSE_XTRA: { msg_format(_("%sが真実を照らし出す...", "The %s exhibits the truth..."), name); - (void)remove_all_curse(); + (void)remove_all_curse(user_ptr); (void)probing(); break; } diff --git a/src/cmd/cmd-read.c b/src/cmd/cmd-read.c index c677fc06b..ef8cf1bee 100644 --- a/src/cmd/cmd-read.c +++ b/src/cmd/cmd-read.c @@ -209,7 +209,7 @@ void exe_read(player_type *creature_ptr, INVENTORY_IDX item, bool known) case SV_SCROLL_REMOVE_CURSE: { - if (remove_curse()) + if (remove_curse(creature_ptr)) { ident = TRUE; } @@ -218,7 +218,7 @@ void exe_read(player_type *creature_ptr, INVENTORY_IDX item, bool known) case SV_SCROLL_STAR_REMOVE_CURSE: { - if (remove_all_curse()) + if (remove_all_curse(creature_ptr)) { ident = TRUE; } diff --git a/src/cmd/cmd-usestaff.c b/src/cmd/cmd-usestaff.c index 9088a5518..00846a93e 100644 --- a/src/cmd/cmd-usestaff.c +++ b/src/cmd/cmd-usestaff.c @@ -94,7 +94,7 @@ int staff_effect(player_type *creature_ptr, OBJECT_SUBTYPE_VALUE sval, bool *use case SV_STAFF_REMOVE_CURSE: { - bool result = powerful ? remove_all_curse() : remove_curse(); + bool result = powerful ? remove_all_curse(creature_ptr) : remove_curse(creature_ptr); if (result) { ident = TRUE; diff --git a/src/realm-craft.c b/src/realm-craft.c index fb5109629..c02c5d977 100644 --- a/src/realm-craft.c +++ b/src/realm-craft.c @@ -179,7 +179,7 @@ concptr do_craft_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode) if (desc) return _("アイテムにかかった弱い呪いを解除する。", "Removes normal curses from equipped items."); { - if (cast) (void)remove_curse(); + if (cast) (void)remove_curse(caster_ptr); } break; @@ -428,7 +428,7 @@ concptr do_craft_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode) if (desc) return _("アイテムにかかった強力な呪いを解除する。", "Removes normal and heavy curse from equipped items."); { - if (cast) (void)remove_all_curse(); + if (cast) (void)remove_all_curse(caster_ptr); } break; diff --git a/src/realm-crusade.c b/src/realm-crusade.c index f1ad77865..1389520de 100644 --- a/src/realm-crusade.c +++ b/src/realm-crusade.c @@ -199,7 +199,7 @@ concptr do_crusade_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mod if (name) return _("解呪", "Remove Curse"); if (desc) return _("アイテムにかかった弱い呪いを解除する。", "Removes normal curses from equipped items."); { - if (cast) (void)remove_curse(); + if (cast) (void)remove_curse(caster_ptr); } break; @@ -437,7 +437,7 @@ concptr do_crusade_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mod if (desc) return _("アイテムにかかった強力な呪いを解除する。", "Removes normal and heavy curse from equipped items."); { - if (cast) (void)remove_all_curse(); + if (cast) (void)remove_all_curse(caster_ptr); } break; diff --git a/src/realm-life.c b/src/realm-life.c index b62227c0e..8af9d9f21 100644 --- a/src/realm-life.c +++ b/src/realm-life.c @@ -141,7 +141,7 @@ concptr do_life_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode) if (name) return _("解呪", "Remove Curse"); if (desc) return _("アイテムにかかった弱い呪いを解除する。", "Removes normal curses from equipped items."); { - if (cast) (void)remove_curse(); + if (cast) (void)remove_curse(caster_ptr); } break; @@ -248,7 +248,7 @@ concptr do_life_spell(player_type *caster_ptr, SPELL_IDX spell, BIT_FLAGS mode) if (name) return _("*解呪*", "Dispel Curse"); if (desc) return _("アイテムにかかった強力な呪いを解除する。", "Removes normal and heavy curse from equipped items."); { - if (cast) (void)remove_all_curse(); + if (cast) (void)remove_all_curse(caster_ptr); } break; diff --git a/src/spells.h b/src/spells.h index b35e61850..d16f2ec83 100644 --- a/src/spells.h +++ b/src/spells.h @@ -299,8 +299,8 @@ extern void call_the_(void); extern void fetch(player_type *caster_ptr, DIRECTION dir, WEIGHT wgt, bool require_los); extern void alter_reality(void); extern void identify_pack(void); -extern int remove_curse(void); -extern int remove_all_curse(void); +extern int remove_curse(player_type *caster_ptr); +extern int remove_all_curse(player_type *caster_ptr); extern bool alchemy(void); extern bool artifact_scroll(void); diff --git a/src/spells3.c b/src/spells3.c index 803151b76..1a885f84c 100644 --- a/src/spells3.c +++ b/src/spells3.c @@ -1406,14 +1406,14 @@ void identify_pack(void) * will not be uncursed. * */ -static int remove_curse_aux(int all) +static int remove_curse_aux(player_type *creature_ptr, int all) { int i, cnt = 0; /* Attempt to uncurse items being worn */ for (i = INVEN_RARM; i < INVEN_TOTAL; i++) { - object_type *o_ptr = &p_ptr->inventory_list[i]; + object_type *o_ptr = &creature_ptr->inventory_list[i]; if (!o_ptr->k_idx) continue; /* Uncursed already */ @@ -1433,8 +1433,8 @@ static int remove_curse_aux(int all) o_ptr->ident |= (IDENT_SENSE); o_ptr->feeling = FEEL_NONE; - p_ptr->update |= (PU_BONUS); - p_ptr->window |= (PW_EQUIP); + creature_ptr->update |= (PU_BONUS); + creature_ptr->window |= (PW_EQUIP); /* Count the uncursings */ cnt++; @@ -1454,9 +1454,9 @@ static int remove_curse_aux(int all) * Remove most curses * @return 解呪に成功した装備数 */ -int remove_curse(void) +int remove_curse(player_type *caster_ptr) { - return (remove_curse_aux(FALSE)); + return (remove_curse_aux(caster_ptr, FALSE)); } /*! @@ -1464,9 +1464,9 @@ int remove_curse(void) * Remove all curses * @return 解呪に成功した装備数 */ -int remove_all_curse(void) +int remove_all_curse(player_type *caster_ptr) { - return (remove_curse_aux(TRUE)); + return (remove_curse_aux(caster_ptr, TRUE)); }