From 8f08ff5f6d1b5f4a0bad31c20c2d13848c6b984f Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sun, 24 Jan 2016 02:56:13 +0300 Subject: Not allow use equipped items in craft. --- src/emap/craft.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'src/emap/craft.c') diff --git a/src/emap/craft.c b/src/emap/craft.c index 54cf7b9..4c5cb5d 100644 --- a/src/emap/craft.c +++ b/src/emap/craft.c @@ -143,7 +143,8 @@ bool craft_checkstr(TBL_PC *sd, const char *craftstr) if (!amount) continue; if(sd->status.inventory[f].nameid == 0 || - sd->status.inventory[f].amount < amount) + sd->status.inventory[f].amount < amount || + sd->status.inventory[f].equip > 0) { return false; } @@ -335,7 +336,8 @@ bool craft_validate(TBL_PC *sd, const int id) if (invIndex < 0 || invIndex >= MAX_INVENTORY || !sd->status.inventory[invIndex].nameid || - !sd->status.inventory[invIndex].amount) + sd->status.inventory[invIndex].amount <= 0 || + sd->status.inventory[invIndex].equip > 0) { return false; } @@ -348,7 +350,8 @@ bool craft_validate(TBL_PC *sd, const int id) if (!amount) continue; if(sd->status.inventory[f].nameid == 0 || - sd->status.inventory[f].amount < amount) + sd->status.inventory[f].amount < amount || + sd->status.inventory[f].equip > 0) { return false; } @@ -364,7 +367,8 @@ static int find_inventory_item(TBL_PC *sd, for (i = 0; i < MAX_INVENTORY; i++) { if (sd->status.inventory[i].nameid == id && - sd->status.inventory[i].amount >= amount) + sd->status.inventory[i].amount >= amount && + sd->status.inventory[i].equip == 0) { return i; } -- cgit v1.2.3-60-g2f50