summaryrefslogtreecommitdiff
path: root/npc/other/inventory_expansion.txt
diff options
context:
space:
mode:
Diffstat (limited to 'npc/other/inventory_expansion.txt')
-rw-r--r--npc/other/inventory_expansion.txt63
1 files changed, 63 insertions, 0 deletions
diff --git a/npc/other/inventory_expansion.txt b/npc/other/inventory_expansion.txt
new file mode 100644
index 000000000..8a5ac5e6c
--- /dev/null
+++ b/npc/other/inventory_expansion.txt
@@ -0,0 +1,63 @@
+//================= Hercules Script =======================================
+//= _ _ _
+//= | | | | | |
+//= | |_| | ___ _ __ ___ _ _| | ___ ___
+//= | _ |/ _ \ '__/ __| | | | |/ _ \/ __|
+//= | | | | __/ | | (__| |_| | | __/\__ \
+//= \_| |_/\___|_| \___|\__,_|_|\___||___/
+//================= License ===============================================
+//= This file is part of Hercules.
+//= http://herc.ws - http://github.com/HerculesWS/Hercules
+//=
+//= Copyright (C) 2018 Hercules Dev Team
+//= Copyright (C) 4144
+//=
+//= Hercules is free software: you can redistribute it and/or modify
+//= it under the terms of the GNU General Public License as published by
+//= the Free Software Foundation, either version 3 of the License, or
+//= (at your option) any later version.
+//=
+//= This program is distributed in the hope that it will be useful,
+//= but WITHOUT ANY WARRANTY; without even the implied warranty of
+//= MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+//= GNU General Public License for more details.
+//=
+//= You should have received a copy of the GNU General Public License
+//= along with this program. If not, see <http://www.gnu.org/licenses/>.
+//=========================================================================
+//= Inventory expansion
+//=========================================================================
+
+- script inventory_expansion FAKE_NPC,{
+ end;
+
+OnInvExpandRequest:
+ if (countitem(Inventory_Extension_Coupon) < 1) {
+ expandinventoryack(EXPAND_INV_MISSING_ITEM);
+ end;
+ }
+ if (getinventorysize() + INVENTORY_INCREASE_STEP > MAX_INVENTORY) {
+ expandinventoryack(EXPAND_INV_MAX_SIZE);
+ end;
+ }
+ expandinventoryack(EXPAND_INV_ASK_CONFIRMATION, Inventory_Extension_Coupon);
+ end;
+
+OnInvExpandConfirmed:
+ if (countitem(Inventory_Extension_Coupon) < 1) {
+ expandinventoryresult(EXPAND_INV_RESULT_MISSING_ITEM);
+ end;
+ }
+ if (getinventorysize() + INVENTORY_INCREASE_STEP > MAX_INVENTORY) {
+ expandinventoryresult(EXPAND_INV_RESULT_MAX_SIZE);
+ end;
+ }
+ delitem(Inventory_Extension_Coupon, 1);
+ if (expandinventory(INVENTORY_INCREASE_STEP) == true) {
+ expandinventoryresult(EXPAND_INV_RESULT_SUCCESS);
+ }
+ end;
+
+OnInvExpandRejected:
+ end;
+}