diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/constants.md | 31 | ||||
-rw-r--r-- | doc/item_db.txt | 3 | ||||
-rw-r--r-- | doc/script_commands.txt | 79 |
3 files changed, 106 insertions, 7 deletions
diff --git a/doc/constants.md b/doc/constants.md index 22521a60c..faf964db6 100644 --- a/doc/constants.md +++ b/doc/constants.md @@ -3797,6 +3797,7 @@ - `MAX_CART`: 100 - `MAX_INVENTORY`: 100 - `MAX_ZENY`: 2147483647 +- `MAX_BANK_ZENY`: 2147483647 - `MAX_BG_MEMBERS`: 30 - `MAX_CHAT_USERS`: 20 - `MAX_REFINE`: 20 @@ -3945,6 +3946,35 @@ - `BL_CHAR`: 539 - `BL_ALL`: 4095 +### Player permissions + +- `PERM_TRADE`: 1 +- `PERM_PARTY`: 2 +- `PERM_ALL_SKILL`: 4 +- `PERM_USE_ALL_EQUIPMENT`: 8 +- `PERM_SKILL_UNCONDITIONAL`: 16 +- `PERM_JOIN_ALL_CHAT`: 32 +- `PERM_NO_CHAT_KICK`: 64 +- `PERM_HIDE_SESSION`: 128 +- `PERM_RECEIVE_HACK_INFO`: 512 +- `PERM_WARP_ANYWHERE`: 1024 +- `PERM_VIEW_HPMETER`: 2048 +- `PERM_VIEW_EQUIPMENT`: 4096 +- `PERM_USE_CHECK`: 8192 +- `PERM_USE_CHANGEMAPTYPE`: 16384 +- `PERM_USE_ALL_COMMANDS`: 32768 +- `PERM_RECEIVE_REQUESTS`: 65536 +- `PERM_SHOW_BOSS`: 131072 +- `PERM_DISABLE_PVM`: 262144 +- `PERM_DISABLE_PVP`: 524288 +- `PERM_DISABLE_CMD_DEAD`: 1048576 +- `PERM_HCHSYS_ADMIN`: 2097152 +- `PERM_TRADE_BOUND`: 4194304 +- `PERM_DISABLE_PICK_UP`: 8388608 +- `PERM_DISABLE_STORE`: 16777216 +- `PERM_DISABLE_EXP`: 33554432 +- `PERM_DISABLE_SKILL_USAGE`: 67108864 + ### Renewal - `RENEWAL`: 1 @@ -3974,6 +4004,7 @@ - `SkillPoint`: [param] - `Class`: [param] - `Zeny`: [param] +- `BankVault`: [param] - `Sex`: [param] - `NextBaseExp`: [param] - `NextJobExp`: [param] diff --git a/doc/item_db.txt b/doc/item_db.txt index 6ffc8a52b..86e397636 100644 --- a/doc/item_db.txt +++ b/doc/item_db.txt @@ -71,6 +71,7 @@ item_db: ( BuyingStore: true/false (boolean, defaults to false) Delay: Delay to use item (int, defaults to 0) KeepAfterUse: true/false (boolean, defaults to false) + DropAnnounce: true/false (boolean, defaults to false) Trade: { (defaults to no restrictions) override: GroupID (int, defaults to 100) nodrop: true/false (boolean, defaults to false) @@ -290,6 +291,8 @@ ForceSerial: Whether the item will be given new unique id or not. When the item BuyingStore: Whether the item can be sold via buyingstore, one must also edit data\buyingstoreitemlist.txt for client to accept item. +DropAnnounce: Enables global announcement of the selected item when dropped by monster. + Delay: Delay for an item to be used again. Value is in milliseconds. There is a max concurrent number of entries modifiable in src/map/itemdb.h as MAX_ITEMDELAYS. diff --git a/doc/script_commands.txt b/doc/script_commands.txt index d7795b7a6..a27d16e7f 100644 --- a/doc/script_commands.txt +++ b/doc/script_commands.txt @@ -540,7 +540,8 @@ allows you to replace lots of numbered arguments for many commands with easier to read text. The special variables most commonly used are all permanent character-based variables: -Zeny - Amount of Zeny. +Zeny - Amount of Zeny in the inventory. +BankVault - Amount of Zeny in the bank. Hp - Current amount of hit points. MaxHp - Maximum amount of hit points. Sp - Current spell points. @@ -707,7 +708,8 @@ MAX_STORAGE - Maximum storage items MAX_GUILD_STORAGE - Maximum guild storage items MAX_CART - Maximum cart items MAX_INVENTORY - Maximum inventory items -MAX_ZENY - Maximum Zeny +MAX_ZENY - Maximum Zeny in the inventory +MAX_BANK_ZENY - Maximum Zeny in the bank MAX_BG_MEMBERS - Maximum BattleGround members MAX_CHAT_USERS - Maximum Chat users MAX_REFINE - Maximum Refine level @@ -3950,17 +3952,18 @@ things might in some cases be required. --------------------------------------- -*checkoption(<option number>) -*checkoption1(<option number>) -*checkoption2(<option number>) -*setoption(<option number>{, <flag>}); +*checkoption(<option number>{, <account id>}) +*checkoption1(<option number>{, <account id>}) +*checkoption2(<option number>{, <account id>}) +*setoption(<option number>{, <flag>{, <account id>}}); The setoption() series of functions check for a so-called option that is set on the invoking character. 'Options' are used to store status conditions and a lot of other non-permanent character data of the yes-no kind. For most common cases, it is better to use checkcart(), checkfalcon(), checkmount() and other similar functions, but there are -some options which you cannot get at this way. +some options which you cannot get at this way. If <account id> is given, +this player will be used instead of the invoking character. Option numbers valid for the first (option) version of this command are: @@ -7762,6 +7765,68 @@ scripts-atcommands this way. --------------------------------------- +*can_use_command("<command>"{, <account id>}) + +Checks if the attached or specified player can use the specified +atcommand and returns true or false accordingly. + +--------------------------------------- + +*has_permission(<permission>{, <account id>}) +*has_permission("<permission>"{, <account id>}) + +Check if the attached or specified player has the specified permission +and returns true or false accordingly. See doc/permissions.txt for +details about permissions. + +Valid <permission> are: + + PERM_TRADE + PERM_PARTY + PERM_ALL_SKILL + PERM_USE_ALL_EQUIPMENT + PERM_SKILL_UNCONDITIONAL + PERM_JOIN_ALL_CHAT + PERM_NO_CHAT_KICK + PERM_HIDE_SESSION + PERM_WHO_DISPLAY_AID + PERM_RECEIVE_HACK_INFO + PERM_WARP_ANYWHERE + PERM_VIEW_HPMETER + PERM_VIEW_EQUIPMENT + PERM_USE_CHECK + PERM_USE_CHANGEMAPTYPE + PERM_USE_ALL_COMMANDS + PERM_RECEIVE_REQUESTS + PERM_SHOW_BOSS + PERM_DISABLE_PVM + PERM_DISABLE_PVP + PERM_DISABLE_CMD_DEAD + PERM_HCHSYS_ADMIN + PERM_TRADE_BOUND + PERM_DISABLE_PICK_UP + PERM_DISABLE_STORE + PERM_DISABLE_EXP + PERM_DISABLE_SKILL_USAGE + +Example: + + if (has_permission(PERM_WARP_ANYWHERE)) { + //do something + } + +It is also possible to pass a string for plugin permissions: + + if (has_permission("show_version")) { + //do something + } + +** Passing a string is slower than passing a constant because + the engine has to loop through the array to find the permission. + In most cases you should use the PERM_ constants. + +--------------------------------------- + *unitskilluseid(<GID>, <skill id>, <skill lvl>{, <target id>}) *unitskilluseid(<GID>, "<skill name>", <skill lvl>{, <target id>}) *unitskillusepos(<GID>, <skill id>, <skill lvl>, <x>, <y>) |