OSDN Git Service

[Refactor] #38997 verify_equip_slot() に player_type * 引数を追加. / Add player_type *...
authordeskull <deskull@users.sourceforge.jp>
Thu, 29 Aug 2019 14:53:40 +0000 (23:53 +0900)
committerdeskull <deskull@users.sourceforge.jp>
Thu, 29 Aug 2019 14:53:40 +0000 (23:53 +0900)
src/cmd/cmd-basic.c
src/cmd/cmd-basic.h
src/cmd/cmd-item.c
src/store.c

index ef374a5..d44bcd9 100644 (file)
@@ -2819,7 +2819,7 @@ bool do_cmd_throw(player_type *creature_ptr, int mult, bool boomerang, OBJECT_ID
        }
        else if (equiped_item)
        {
-               verify_equip_slot(item);
+               verify_equip_slot(creature_ptr, item);
                calc_android_exp(creature_ptr);
        }
 
index efa95e4..ee8c7e9 100644 (file)
@@ -30,4 +30,4 @@ extern bool do_cmd_throw(player_type *creature_ptr, int mult, bool boomerang, OB
 extern bool easy_open_door(player_type *creature_ptr, POSITION y, POSITION x);
 extern bool exe_disarm(player_type *creature_ptr, POSITION y, POSITION x, DIRECTION dir);
 
-extern void verify_equip_slot(INVENTORY_IDX item);
+extern void verify_equip_slot(player_type *owner_ptr, INVENTORY_IDX item);
index 658b10f..53618ee 100644 (file)
@@ -437,23 +437,23 @@ void do_cmd_wield(player_type *creature_ptr)
  * @param item 持ち替えを行いたい装備部位ID
  * @return なし
  */
-void verify_equip_slot(INVENTORY_IDX item)
+void verify_equip_slot(player_type *owner_ptr, INVENTORY_IDX item)
 {
        object_type *o_ptr, *new_o_ptr;
        GAME_TEXT o_name[MAX_NLEN];
 
        if (item == INVEN_RARM)
        {
-               if (has_melee_weapon(p_ptr, INVEN_LARM))
+               if (has_melee_weapon(owner_ptr, INVEN_LARM))
                {
-                       o_ptr = &p_ptr->inventory_list[INVEN_LARM];
+                       o_ptr = &owner_ptr->inventory_list[INVEN_LARM];
                        object_desc(o_name, o_ptr, 0);
 
                        if (!object_is_cursed(o_ptr))
                        {
-                               new_o_ptr = &p_ptr->inventory_list[INVEN_RARM];
+                               new_o_ptr = &owner_ptr->inventory_list[INVEN_RARM];
                                object_copy(new_o_ptr, o_ptr);
-                               p_ptr->total_weight += o_ptr->weight;
+                               owner_ptr->total_weight += o_ptr->weight;
                                inven_item_increase(INVEN_LARM, -((int)o_ptr->number));
                                inven_item_optimize(INVEN_LARM);
                                if (object_allow_two_hands_wielding(o_ptr) && CAN_TWO_HANDS_WIELDING())
@@ -471,19 +471,19 @@ void verify_equip_slot(INVENTORY_IDX item)
        }
        else if (item == INVEN_LARM)
        {
-               o_ptr = &p_ptr->inventory_list[INVEN_RARM];
+               o_ptr = &owner_ptr->inventory_list[INVEN_RARM];
                if (o_ptr->k_idx) object_desc(o_name, o_ptr, 0);
 
-               if (has_melee_weapon(p_ptr, INVEN_RARM))
+               if (has_melee_weapon(owner_ptr, INVEN_RARM))
                {
                        if (object_allow_two_hands_wielding(o_ptr) && CAN_TWO_HANDS_WIELDING())
                                msg_format(_("%sを両手で構えた。", "You are wielding %s with both hands."), o_name);
                }
-               else if (!(empty_hands(p_ptr, FALSE) & EMPTY_HAND_RARM) && !object_is_cursed(o_ptr))
+               else if (!(empty_hands(owner_ptr, FALSE) & EMPTY_HAND_RARM) && !object_is_cursed(o_ptr))
                {
-                       new_o_ptr = &p_ptr->inventory_list[INVEN_LARM];
+                       new_o_ptr = &owner_ptr->inventory_list[INVEN_LARM];
                        object_copy(new_o_ptr, o_ptr);
-                       p_ptr->total_weight += o_ptr->weight;
+                       owner_ptr->total_weight += o_ptr->weight;
                        inven_item_increase(INVEN_RARM, -((int)o_ptr->number));
                        inven_item_optimize(INVEN_RARM);
                        msg_format(_("%sを持ち替えた。", "You switched hand of %s."), o_name);
@@ -548,7 +548,7 @@ void do_cmd_takeoff(player_type *creature_ptr)
 
        /* Take off the item */
        (void)inven_takeoff(item, 255);
-       verify_equip_slot(item);
+       verify_equip_slot(creature_ptr, item);
        calc_android_exp(creature_ptr);
        creature_ptr->redraw |= (PR_EQUIPPY);
 }
@@ -598,7 +598,7 @@ void do_cmd_drop(player_type *creature_ptr)
 
        if (item >= INVEN_RARM)
        {
-               verify_equip_slot(item);
+               verify_equip_slot(creature_ptr, item);
                calc_android_exp(creature_ptr);
        }
 
index f004f5a..b59bb14 100644 (file)
@@ -5183,7 +5183,7 @@ static void store_sell(void)
        if ((choice == 0) && (item >= INVEN_RARM))
        {
                calc_android_exp(p_ptr);
-               verify_equip_slot(item);
+               verify_equip_slot(p_ptr, item);
        }
 }