summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/script_commands.txt4
-rw-r--r--src/map/script.c9
2 files changed, 10 insertions, 3 deletions
diff --git a/doc/script_commands.txt b/doc/script_commands.txt
index 3784667cb..e69cca6b1 100644
--- a/doc/script_commands.txt
+++ b/doc/script_commands.txt
@@ -5286,6 +5286,10 @@ This command will destroy whatever is currently equipped in the invoking
character's specified equipment slot. For a full list of possible equipment
slots see 'getequipid'.
+It is always a good idea to check if the player actually has the item you want
+before you use this command. If you try to delete in a position that the player
+has no gear, script will be terminated with an error.
+
This command will return 1 if an item was deleted and 0 otherwise.
---------------------------------------
diff --git a/src/map/script.c b/src/map/script.c
index a0b9f80cc..1a6289db3 100644
--- a/src/map/script.c
+++ b/src/map/script.c
@@ -7995,11 +7995,14 @@ BUILDIN(delequip)
pc->unequipitem(sd,i,3); //recalculate bonus
pc->delitem(sd,i,1,0,2,LOG_TYPE_SCRIPT);
script_pushint(st,1);
- } else {
- script_pushint(st,0);
+ return true;
}
+
+ ShowError("script:delequip: no item found in position '%d' for player '%s' (AID:%d/CID:%d).\n", num, sd->status.name,sd->status.account_id, sd->status.char_id);
+ st->state = END;
+ clif->scriptclose(sd, st->oid);
- return true;
+ return false;
}
/*==========================================