diff options
-rw-r--r-- | doc/script_commands.txt | 9 | ||||
-rw-r--r-- | src/map/script.c | 11 |
2 files changed, 20 insertions, 0 deletions
diff --git a/doc/script_commands.txt b/doc/script_commands.txt index 5a9894217..5171d65f3 100644 --- a/doc/script_commands.txt +++ b/doc/script_commands.txt @@ -10303,5 +10303,14 @@ Maximum inventory size is MAX_INVENTORY. Minimum inventory size is FIXED_INVENTORY_SIZE. For supported clients it send inventory change packet. For old clients, this change is silent. +Current max inventory size can be read by function getInventorySize(). + +--------------------------------------- + +*getInventorySize() + +Return current player max inventory size. +This value always smaller or equal to MAX_INVENTORY. +Size can be changed by group of functions expandInventory* --------------------------------------- diff --git a/src/map/script.c b/src/map/script.c index 8dadf6d57..3d3fba867 100644 --- a/src/map/script.c +++ b/src/map/script.c @@ -24894,6 +24894,16 @@ static BUILDIN(expandInventory) return true; } +// return current player inventory size +static BUILDIN(getInventorySize) +{ + struct map_session_data *sd = script_rid2sd(st); + if (sd == NULL) + return false; + script_pushint(st, sd->status.inventorySize); + return true; +} + /** * Adds a built-in script function. * @@ -25637,6 +25647,7 @@ static void script_parse_builtin(void) BUILDIN_DEF(expandInventoryAck, "i?"), BUILDIN_DEF(expandInventoryResult, "i"), BUILDIN_DEF(expandInventory, "i"), + BUILDIN_DEF(getInventorySize, ""), }; int i, len = ARRAYLENGTH(BUILDIN); RECREATE(script->buildin, char *, script->buildin_count + len); // Pre-alloc to speed up |