OSDN Git Service

[Refactor] #38997 inven_item_describe()、vary_item() にplayer_type *引数を追加 / Added playe...
authorHourier <hourier@users.sourceforge.jp>
Fri, 10 Jan 2020 14:12:21 +0000 (23:12 +0900)
committerHourier <hourier@users.sourceforge.jp>
Fri, 10 Jan 2020 14:12:21 +0000 (23:12 +0900)
14 files changed:
src/bldg.c
src/cmd/cmd-basic.c
src/cmd/cmd-eat.c
src/cmd/cmd-item.c
src/cmd/cmd-quaff.c
src/cmd/cmd-read.c
src/combat/shoot.c
src/core.c
src/object.h
src/object2.c
src/spells-object.c
src/spells-summon.c
src/spells3.c
src/store.c

index 7d51042..7f81b33 100644 (file)
@@ -1792,6 +1792,7 @@ static struct {
 
 /*!
  * @brief 賞金首の引き換え処理 / Get prize
+ * @param player_ptr プレーヤーへの参照ポインタ
  * @return 各種賞金首のいずれかでも換金が行われたか否か。
  */
 static bool kankin(player_type *player_ptr)
@@ -1818,7 +1819,7 @@ static bool kankin(player_type *player_ptr)
                                msg_format(_("賞金 %ld$を手に入れた。", "You get %ldgp."), (long int)(1000000L * o_ptr->number));
                                player_ptr->au += 1000000L * o_ptr->number;
                                player_ptr->redraw |= (PR_GOLD);
-                               vary_item(i, -o_ptr->number);
+                               vary_item(player_ptr, i, -o_ptr->number);
                        }
                        change = TRUE;
                }
@@ -1839,7 +1840,7 @@ static bool kankin(player_type *player_ptr)
                                msg_format(_("賞金 %ld$を手に入れた。", "You get %ldgp."), (long int)(200000L * o_ptr->number));
                                player_ptr->au += 200000L * o_ptr->number;
                                player_ptr->redraw |= (PR_GOLD);
-                               vary_item(i, -o_ptr->number);
+                               vary_item(player_ptr, i, -o_ptr->number);
                        }
                        change = TRUE;
                }
@@ -1860,7 +1861,7 @@ static bool kankin(player_type *player_ptr)
                                msg_format(_("賞金 %ld$を手に入れた。", "You get %ldgp."), (long int)(100000L * o_ptr->number));
                                player_ptr->au += 100000L * o_ptr->number;
                                player_ptr->redraw |= (PR_GOLD);
-                               vary_item(i, -o_ptr->number);
+                               vary_item(player_ptr, i, -o_ptr->number);
                        }
                        change = TRUE;
                }
@@ -1879,7 +1880,7 @@ static bool kankin(player_type *player_ptr)
                                msg_format(_("賞金 %ld$を手に入れた。", "You get %ldgp."), (long int)((r_info[today_mon].level * 50 + 100) * o_ptr->number));
                                player_ptr->au += (r_info[today_mon].level * 50 + 100) * o_ptr->number;
                                player_ptr->redraw |= (PR_GOLD);
-                               vary_item(i, -o_ptr->number);
+                               vary_item(player_ptr, i, -o_ptr->number);
                        }
                        change = TRUE;
                }
@@ -1899,7 +1900,7 @@ static bool kankin(player_type *player_ptr)
                                msg_format(_("賞金 %ld$を手に入れた。", "You get %ldgp."), (long int)((r_info[today_mon].level * 30 + 60) * o_ptr->number));
                                player_ptr->au += (r_info[today_mon].level * 30 + 60) * o_ptr->number;
                                player_ptr->redraw |= (PR_GOLD);
-                               vary_item(i, -o_ptr->number);
+                               vary_item(player_ptr, i, -o_ptr->number);
                        }
                        change = TRUE;
                }
@@ -1934,7 +1935,7 @@ static bool kankin(player_type *player_ptr)
 #endif /* Obsoleted */
 
                                /* Hand it first */
-                               vary_item(i, -o_ptr->number);
+                               vary_item(player_ptr, i, -o_ptr->number);
 
                                chg_virtue(player_ptr, V_JUSTICE, 5);
                                current_world_ptr->bounty_r_idx[j] += 10000;
index 091ebc7..5b4e175 100644 (file)
@@ -1989,12 +1989,11 @@ void do_cmd_spike(player_type *creature_ptr)
                msg_format(_("%sにくさびを打ち込んだ。", "You jam the %s with a spike."), f_name + f_info[feat].name);
                cave_alter_feat(creature_ptr, y, x, FF_SPIKE);
 
-               vary_item(item, -1);
+               vary_item(creature_ptr, item, -1);
        }
 }
 
 
-
 /*!
  * @brief 「歩く」動作コマンドのメインルーチン /
  * Support code for the "Walk" and "Jump" commands
@@ -2466,7 +2465,7 @@ bool do_cmd_throw(player_type *creature_ptr, int mult, bool boomerang, OBJECT_ID
        {
                inven_item_increase(item, -1);
                if (!return_when_thrown)
-                       inven_item_describe(item);
+                       inven_item_describe(creature_ptr, item);
                inven_item_optimize(item);
        }
        else
@@ -2474,6 +2473,7 @@ bool do_cmd_throw(player_type *creature_ptr, int mult, bool boomerang, OBJECT_ID
                floor_item_increase(0 - item, -1);
                floor_item_optimize(0 - item);
        }
+
        if (item >= INVEN_RARM)
        {
                equiped_item = TRUE;
index 33c30c3..3351af3 100644 (file)
@@ -462,7 +462,7 @@ void exe_eat_food(player_type *creature_ptr, INVENTORY_IDX item)
                (void)set_food(creature_ptr, creature_ptr->food + o_ptr->pval);
        }
 
-       vary_item(item, -1);
+       vary_item(creature_ptr, item, -1);
 }
 
 
index c479946..ecde44e 100644 (file)
@@ -722,7 +722,7 @@ void do_cmd_destroy(player_type *creature_ptr)
        /* Reduce the charges of rods/wands */
        reduce_charges(o_ptr, amt);
 
-       vary_item(item, -amt);
+       vary_item(creature_ptr, item, -amt);
 
        if (item_tester_high_level_book(q_ptr))
        {
@@ -948,7 +948,7 @@ static void do_cmd_refill_lamp(player_type *user_ptr)
                msg_print(_("ランプの油は一杯だ。", "Your lamp is full."));
        }
 
-       vary_item(item, -1);
+       vary_item(user_ptr, item, -1);
 
        user_ptr->update |= (PU_TORCH);
 }
@@ -1009,7 +1009,7 @@ static void do_cmd_refill_torch(player_type *creature_ptr)
                msg_print(_("松明はいっそう明るく輝いた。", "Your torch glows more brightly."));
        }
 
-       vary_item(item, -1);
+       vary_item(creature_ptr, item, -1);
 
        creature_ptr->update |= (PU_TORCH);
 }
index e6a40bd..f9888f9 100644 (file)
@@ -70,7 +70,7 @@ void exe_quaff_potion(player_type *creature_ptr, INVENTORY_IDX item)
        /* Single object */
        q_ptr->number = 1;
 
-       vary_item(item, -1);
+       vary_item(creature_ptr, item, -1);
        sound(SOUND_QUAFF);
 
 
index fadfbd3..4ec9bf9 100644 (file)
@@ -583,9 +583,10 @@ void exe_read(player_type *creature_ptr, INVENTORY_IDX item, bool known)
        }
 
        sound(SOUND_SCROLL);
-       vary_item(item, -1);
+       vary_item(creature_ptr, item, -1);
 }
 
+
 /*!
  * @brief 読むコマンドのメインルーチン /
  * Eat some food (from the pack or floor)
index 5413e9d..435c98b 100644 (file)
@@ -496,7 +496,7 @@ void exe_fire(player_type *shooter_ptr, INVENTORY_IDX item, object_type *j_ptr,
                /* Single object */
                q_ptr->number = 1;
 
-               vary_item(item, -1);
+               vary_item(shooter_ptr, item, -1);
 
                sound(SOUND_SHOOT);
                handle_stuff();
index 748cacc..488d8fa 100644 (file)
@@ -4304,32 +4304,31 @@ static void process_command(player_type *creature_ptr)
  */
 static void pack_overflow(player_type *owner_ptr)
 {
-       if (owner_ptr->inventory_list[INVEN_PACK].k_idx)
-       {
-               GAME_TEXT o_name[MAX_NLEN];
-               object_type *o_ptr;
+       if (owner_ptr->inventory_list[INVEN_PACK].k_idx == 0) return;
+
+       GAME_TEXT o_name[MAX_NLEN];
+       object_type *o_ptr;
 
-               /* Is auto-destroy done? */
-               update_creature(owner_ptr);
-               if (!owner_ptr->inventory_list[INVEN_PACK].k_idx) return;
+       /* Is auto-destroy done? */
+       update_creature(owner_ptr);
+       if (!owner_ptr->inventory_list[INVEN_PACK].k_idx) return;
 
-               /* Access the slot to be dropped */
-               o_ptr = &owner_ptr->inventory_list[INVEN_PACK];
+       /* Access the slot to be dropped */
+       o_ptr = &owner_ptr->inventory_list[INVEN_PACK];
 
-               disturb(owner_ptr, FALSE, TRUE);
+       disturb(owner_ptr, FALSE, TRUE);
 
-               /* Warning */
-               msg_print(_("ザックからアイテムがあふれた!", "Your pack overflows!"));
-               object_desc(o_name, o_ptr, 0);
+       /* Warning */
+       msg_print(_("ザックからアイテムがあふれた!", "Your pack overflows!"));
+       object_desc(o_name, o_ptr, 0);
 
-               msg_format(_("%s(%c)を落とした。", "You drop %s (%c)."), o_name, index_to_label(INVEN_PACK));
+       msg_format(_("%s(%c)を落とした。", "You drop %s (%c)."), o_name, index_to_label(INVEN_PACK));
 
-               /* Drop it (carefully) near the player */
-               (void)drop_near(owner_ptr, o_ptr, 0, owner_ptr->y, owner_ptr->x);
+       /* Drop it (carefully) near the player */
+       (void)drop_near(owner_ptr, o_ptr, 0, owner_ptr->y, owner_ptr->x);
 
-               vary_item(INVEN_PACK, -255);
-               handle_stuff();
-       }
+       vary_item(owner_ptr, INVEN_PACK, -255);
+       handle_stuff();
 }
 
 /*!
index 46caad0..56e724e 100644 (file)
@@ -489,9 +489,9 @@ extern OBJECT_SUBTYPE_VALUE coin_type;
 extern bool make_object(player_type *owner_ptr, object_type *j_ptr, BIT_FLAGS mode);
 extern bool make_gold(floor_type *floor_ptr, object_type *j_ptr);
 extern OBJECT_IDX drop_near(player_type *owner_type, object_type *o_ptr, PERCENTAGE chance, POSITION y, POSITION x);
-extern void vary_item(INVENTORY_IDX item, ITEM_NUMBER num);
+extern void vary_item(player_type *owner_ptr, INVENTORY_IDX item, ITEM_NUMBER num);
 extern void inven_item_charges(player_type *owner_ptr, INVENTORY_IDX item);
-extern void inven_item_describe(INVENTORY_IDX item);
+extern void inven_item_describe(player_type *owner_ptr, INVENTORY_IDX item);
 extern void inven_item_increase(INVENTORY_IDX item, ITEM_NUMBER num);
 extern void inven_item_optimize(INVENTORY_IDX item);
 extern void floor_item_charges(INVENTORY_IDX item);
index 81f77ec..68895de 100644 (file)
@@ -4556,9 +4556,9 @@ void inven_item_charges(player_type *owner_ptr, INVENTORY_IDX item)
  * @param item 残量を表示したいプレイヤーのアイテム所持スロット
  * @return なし
  */
-void inven_item_describe(INVENTORY_IDX item)
+void inven_item_describe(player_type *owner_ptr, INVENTORY_IDX item)
 {
-       object_type *o_ptr = &p_ptr->inventory_list[item];
+       object_type *o_ptr = &owner_ptr->inventory_list[item];
        GAME_TEXT o_name[MAX_NLEN];
 
        object_desc(o_name, o_ptr, 0);
@@ -4581,12 +4581,12 @@ void inven_item_describe(INVENTORY_IDX item)
 
 }
 
-void vary_item(INVENTORY_IDX item, ITEM_NUMBER num)
+void vary_item(player_type *owner_ptr, INVENTORY_IDX item, ITEM_NUMBER num)
 {
        if (item >= 0)
        {
                inven_item_increase(item, num);
-               inven_item_describe(item);
+               inven_item_describe(owner_ptr, item);
                inven_item_optimize(item);
        }
        else
@@ -5208,7 +5208,7 @@ void drop_from_inventory(player_type *owner_ptr, INVENTORY_IDX item, ITEM_NUMBER
        /* Drop it near the player */
        (void)drop_near(owner_ptr, q_ptr, 0, owner_ptr->y, owner_ptr->x);
 
-       vary_item(item, -amt);
+       vary_item(owner_ptr, item, -amt);
 }
 
 
index f4897b1..efb862a 100644 (file)
@@ -127,6 +127,7 @@ bool create_ammo(player_type *creature_ptr)
        object_type     forge;
        object_type *q_ptr;
        q_ptr = &forge;
+
        /**********Create shots*********/
        if (ext == 1)
        {
@@ -144,39 +145,41 @@ bool create_ammo(player_type *creature_ptr)
                        msg_print(_("そこには岩石がない。", "You need pile of rubble."));
                        return FALSE;
                }
-               else if (!cave_have_flag_grid(g_ptr, FF_CAN_DIG) || !cave_have_flag_grid(g_ptr, FF_HURT_ROCK))
+               
+               if (!cave_have_flag_grid(g_ptr, FF_CAN_DIG) || !cave_have_flag_grid(g_ptr, FF_HURT_ROCK))
                {
                        msg_print(_("硬すぎて崩せなかった。", "You failed to make ammo."));
+                       return TRUE;
                }
-               else
-               {
-                       s16b slot;
-                       q_ptr = &forge;
+               
+               s16b slot;
+               q_ptr = &forge;
 
-                       /* Hack -- Give the player some small firestones */
-                       object_prep(q_ptr, lookup_kind(TV_SHOT, (OBJECT_SUBTYPE_VALUE)m_bonus(1, creature_ptr->lev) + 1));
-                       q_ptr->number = (byte)rand_range(15, 30);
-                       object_aware(creature_ptr, q_ptr);
-                       object_known(q_ptr);
-                       apply_magic(creature_ptr, q_ptr, creature_ptr->lev, AM_NO_FIXED_ART);
-                       q_ptr->discount = 99;
+               /* Hack -- Give the player some small firestones */
+               object_prep(q_ptr, lookup_kind(TV_SHOT, (OBJECT_SUBTYPE_VALUE)m_bonus(1, creature_ptr->lev) + 1));
+               q_ptr->number = (byte)rand_range(15, 30);
+               object_aware(creature_ptr, q_ptr);
+               object_known(q_ptr);
+               apply_magic(creature_ptr, q_ptr, creature_ptr->lev, AM_NO_FIXED_ART);
+               q_ptr->discount = 99;
 
-                       slot = inven_carry(creature_ptr, q_ptr);
+               slot = inven_carry(creature_ptr, q_ptr);
 
-                       object_desc(o_name, q_ptr, 0);
-                       msg_format(_("%sを作った。", "You make some ammo."), o_name);
+               object_desc(o_name, q_ptr, 0);
+               msg_format(_("%sを作った。", "You make some ammo."), o_name);
 
-                       /* Auto-inscription */
-                       if (slot >= 0) autopick_alter_item(slot, FALSE);
+               /* Auto-inscription */
+               if (slot >= 0) autopick_alter_item(slot, FALSE);
 
-                       /* Destroy the wall */
-                       cave_alter_feat(creature_ptr, y, x, FF_HURT_ROCK);
+               /* Destroy the wall */
+               cave_alter_feat(creature_ptr, y, x, FF_HURT_ROCK);
 
-                       creature_ptr->update |= (PU_FLOW);
-               }
+               creature_ptr->update |= (PU_FLOW);
+               return TRUE;
        }
+
        /**********Create arrows*********/
-       else if (ext == 2)
+       if (ext == 2)
        {
                OBJECT_IDX item;
                concptr q, s;
@@ -203,14 +206,16 @@ bool create_ammo(player_type *creature_ptr)
                object_desc(o_name, q_ptr, 0);
                msg_format(_("%sを作った。", "You make some ammo."), o_name);
 
-               vary_item(item, -1);
+               vary_item(creature_ptr, item, -1);
                slot = inven_carry(creature_ptr, q_ptr);
 
                /* Auto-inscription */
                if (slot >= 0) autopick_alter_item(slot, FALSE);
+               return TRUE;
        }
+
        /**********Create bolts*********/
-       else if (ext == 3)
+       if (ext == 3)
        {
                OBJECT_IDX item;
                concptr q, s;
@@ -238,7 +243,7 @@ bool create_ammo(player_type *creature_ptr)
                object_desc(o_name, q_ptr, 0);
                msg_format(_("%sを作った。", "You make some ammo."), o_name);
 
-               vary_item(item, -1);
+               vary_item(creature_ptr, item, -1);
 
                slot = inven_carry(creature_ptr, q_ptr);
 
@@ -324,7 +329,7 @@ bool import_magic_device(player_type *user_ptr)
        object_desc(o_name, o_ptr, 0);
        msg_format(_("%sの魔力を取り込んだ。", "You absorb magic of %s."), o_name);
 
-       vary_item(item, -999);
+       vary_item(user_ptr, item, -999);
        take_turn(user_ptr, 100);
        return TRUE;
 }
index b501b23..13104c7 100644 (file)
@@ -218,7 +218,7 @@ bool cast_summon_greater_demon(player_type *caster_ptr)
        {
                msg_print(_("硫黄の悪臭が充満した。", "The area fills with a stench of sulphur and brimstone."));
                msg_print(_("「ご用でございますか、ご主人様」", "'What is thy bidding... Master?'"));
-               vary_item(item, -1);
+               vary_item(caster_ptr, item, -1);
        }
        else
        {
index 88ee57e..b4ad329 100644 (file)
@@ -1511,7 +1511,7 @@ bool alchemy(player_type *caster_ptr)
        if (price <= 0)
        {
                msg_format(_("%sをニセの金に変えた。", "You current_world_ptr->game_turn %s to fool's gold."), o_name);
-               vary_item(item, -amt);
+               vary_item(caster_ptr, item, -amt);
                return TRUE;
        }
        
@@ -1525,7 +1525,7 @@ bool alchemy(player_type *caster_ptr)
        caster_ptr->au += price;
        caster_ptr->redraw |= PR_GOLD;
        caster_ptr->window |= PW_PLAYER;
-       vary_item(item, -amt);
+       vary_item(caster_ptr, item, -amt);
        return TRUE;
 }
 
@@ -2063,7 +2063,7 @@ bool recharge(player_type *caster_ptr, int power)
                if (o_ptr->tval == TV_ROD) o_ptr->timeout = (o_ptr->number - 1) * k_ptr->pval;
                if (o_ptr->tval == TV_WAND) o_ptr->pval = 0;
 
-               vary_item(item, -1);
+               vary_item(caster_ptr, item, -1);
        }
 
        if (fail_type == 3)
@@ -2073,7 +2073,7 @@ bool recharge(player_type *caster_ptr, int power)
                else
                        msg_format(_("乱暴な魔法のために%sが壊れた!", "Wild magic consumes your %s!"), o_name);
 
-               vary_item(item, -999);
+               vary_item(caster_ptr, item, -999);
        }
 
        return update_player(caster_ptr);
@@ -3077,7 +3077,7 @@ bool eat_magic(player_type *caster_ptr, int power)
                        msg_format(_("乱暴な魔法のために%sが何本か壊れた!", "Wild magic consumes your %s!"), o_name);
                }
 
-               vary_item(item, -1);
+               vary_item(caster_ptr, item, -1);
        }
 
        /* Destroy all members of a stack of objects. */
@@ -3088,7 +3088,7 @@ bool eat_magic(player_type *caster_ptr, int power)
                else
                        msg_format(_("乱暴な魔法のために%sが壊れた!", "Wild magic consumes your %s!"), o_name);
 
-               vary_item(item, -999);
+               vary_item(caster_ptr, item, -999);
        }
 
        return redraw_player(caster_ptr);
index 14a2fa8..9d124de 100644 (file)
@@ -4891,9 +4891,10 @@ static void store_purchase(player_type *player_ptr)
 /*!
  * @brief 店からの売却処理のメインルーチン /
  * Sell an item to the store (or home)
+ * @param owner_ptr プレーヤーへの参照ポインタ
  * @return なし
  */
-static void store_sell(void)
+static void store_sell(player_type *owner_ptr)
 {
        int choice;
        OBJECT_IDX item;
@@ -4938,7 +4939,7 @@ static void store_sell(void)
                s = _("欲しい物がないですねえ。", "You have nothing that I want.");
        }
 
-       o_ptr = choose_object(p_ptr, &item, q, s, (USE_EQUIP | USE_INVEN | USE_FLOOR | IGNORE_BOTHHAND_SLOT), 0);
+       o_ptr = choose_object(owner_ptr, &item, q, s, (USE_EQUIP | USE_INVEN | USE_FLOOR | IGNORE_BOTHHAND_SLOT), 0);
        if (!o_ptr) return;
 
        /* Hack -- Cannot remove cursed items */
@@ -4998,7 +4999,6 @@ static void store_sell(void)
                return;
        }
 
-
        /* Real store */
        if ((cur_store_num != STORE_HOME) && (cur_store_num != STORE_MUSEUM))
        {
@@ -5024,14 +5024,14 @@ static void store_sell(void)
 
                        /* Be happy */
                        if (cur_store_num == STORE_BLACK) /* The black market is illegal! */
-                               chg_virtue(p_ptr, V_JUSTICE, -1);
+                               chg_virtue(owner_ptr, V_JUSTICE, -1);
 
                        if((o_ptr->tval == TV_BOTTLE) && (cur_store_num != STORE_HOME))
-                               chg_virtue(p_ptr, V_NATURE, 1);
+                               chg_virtue(owner_ptr, V_NATURE, 1);
                        decrease_insults();
 
                        /* Get some money */
-                       p_ptr->au += price;
+                       owner_ptr->au += price;
 
                        /* Update the display */
                        store_prt_gold();
@@ -5039,7 +5039,7 @@ static void store_sell(void)
                        /* Get the "apparent" value */
                        dummy = object_value(q_ptr) * q_ptr->number;
 
-                       identify_item(p_ptr, o_ptr);
+                       identify_item(owner_ptr, o_ptr);
                        q_ptr = &forge;
 
                        /* Get a copy of the object */
@@ -5069,7 +5069,7 @@ static void store_sell(void)
                        /* Describe the result (in message buffer) */
                        msg_format(_("%sを $%ldで売却しました。", "You sold %s for %ld gold."), o_name, (long)price);
 
-                       if (record_sell) exe_write_diary(p_ptr, NIKKI_SELL, 0, o_name);
+                       if (record_sell) exe_write_diary(owner_ptr, NIKKI_SELL, 0, o_name);
 
                        if (!((o_ptr->tval == TV_FIGURINE) && (value > 0)))
                        {
@@ -5088,7 +5088,7 @@ static void store_sell(void)
 
                        /* Take the item from the player, describe the result */
                        inven_item_increase(item, -amt);
-                       inven_item_describe(item);
+                       inven_item_describe(owner_ptr, item);
 
                        /* If items remain, auto-inscribe before optimizing */
                        if (o_ptr->number > 0)
@@ -5126,7 +5126,7 @@ static void store_sell(void)
 
                if (!get_check(format(_("本当に%sを寄贈しますか?", "Really give %s to the Museum? "), o2_name))) return;
 
-               identify_item(p_ptr, q_ptr);
+               identify_item(owner_ptr, q_ptr);
                q_ptr->ident |= IDENT_MENTAL;
 
                /* Distribute charges of wands/rods */
@@ -5134,7 +5134,7 @@ static void store_sell(void)
                msg_format(_("%sを置いた。(%c)", "You drop %s (%c)."), o_name, index_to_label(item));
                choice = 0;
 
-               vary_item(item, -amt);
+               vary_item(owner_ptr, item, -amt);
                handle_stuff();
 
                /* Let the home carry it */
@@ -5156,7 +5156,7 @@ static void store_sell(void)
 
                choice = 0;
 
-               vary_item(item, -amt);
+               vary_item(owner_ptr, item, -amt);
                handle_stuff();
 
                /* Let the home carry it */
@@ -5172,8 +5172,8 @@ static void store_sell(void)
 
        if ((choice == 0) && (item >= INVEN_RARM))
        {
-               calc_android_exp(p_ptr);
-               verify_equip_slot(p_ptr, item);
+               calc_android_exp(owner_ptr);
+               verify_equip_slot(owner_ptr, item);
        }
 }
 
@@ -5410,7 +5410,7 @@ static void store_process_command(player_type *client_ptr)
                /* Drop (Sell) */
                case 'd':
                {
-                       store_sell();
+                       store_sell(client_ptr);
                        break;
                }
 
@@ -5906,7 +5906,7 @@ void do_cmd_store(player_type *player_ptr)
 
                                msg_format(_("%sが落ちた。(%c)", "You drop %s (%c)."), o_name, index_to_label(item));
 
-                               vary_item(item, -255);
+                               vary_item(player_ptr, item, -255);
                                handle_stuff();
 
                                /* Let the home carry it */