From d6c7054a1818434b4880eb9365593b5018429aa2 Mon Sep 17 00:00:00 2001 From: No Name Date: Fri, 19 Feb 2010 19:41:40 -0800 Subject: Cancel active trade if an item is removed from inventory. Modifies the previous fix to now cancel if an item is deleted from a player's inventory, including items that are used/consumed. --- src/map/pc.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/map/pc.c') diff --git a/src/map/pc.c b/src/map/pc.c index 20db3fe..8d1066d 100644 --- a/src/map/pc.c +++ b/src/map/pc.c @@ -3383,9 +3383,6 @@ int pc_remove_items (struct map_session_data *player, int item_id, int count) nullpo_retr (0, player); - if (player->trade_partner != 0) - trade_tradecancel (player); - for (i = 0; i < MAX_INVENTORY && count; i++) { if (player->status.inventory[i].nameid == item_id) @@ -3476,6 +3473,9 @@ int pc_delitem (struct map_session_data *sd, int n, int amount, int type) { nullpo_retr (1, sd); + if (sd->trade_partner != 0) + trade_tradecancel (sd); + if (sd->status.inventory[n].nameid == 0 || amount <= 0 || sd->status.inventory[n].amount < amount || sd->inventory_data[n] == NULL) -- cgit v1.2.3-60-g2f50