From 5000729333105107994d67c639f408beb8055f89 Mon Sep 17 00:00:00 2001 From: Kenpachi Developer Date: Mon, 20 Jan 2020 11:07:17 +0100 Subject: Updated documentation of itemskill() script command in doc/script_commands.txt. --- doc/script_commands.txt | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/doc/script_commands.txt b/doc/script_commands.txt index 4004e5cd2..8308f4771 100644 --- a/doc/script_commands.txt +++ b/doc/script_commands.txt @@ -5651,21 +5651,38 @@ set with 'disable_items'. --------------------------------------- -*itemskill(, , {flag}) -*itemskill("", , {flag}) +*itemskill(, {, }) +*itemskill("", {, }) This command meant for item scripts to replicate single-use skills in usable items. It will not work properly if there is a visible dialog window or menu. If the skill is self or auto-targeting, it will be used immediately. Otherwise, a target cursor is shown. -Flag is a optional param and, when present, the command will not check for -skill requirements. +Optional value is a bitmask to manipulate how the skill is casted. +Since is a bitmask, the flags can be summed up. +Possible flags are: + - 0x00 - ISF_NONE - Skill is casted as if has been used from skill tree. + (Same like was omitted.) + - 0x01 - ISF_IGNORECONDITIONS - Skill requirements are ignored and not consumed + - 0x02 - ISF_INSTANTCAST - Skill is casted instantaneously. + - 0x04 - ISF_CASTONSELF - Skill is forcefully casted on invoking character, + without showing the target selection cursor. + +Important: Items which use itemskill() should be of type IT_USABLE. + If the item type is IT_DELAYCONSUME and ISF_IGNORECONDITIONS is set, + the item won't be consumed when using the item! // When Anodyne is used, it will cast Endure, Level 1, as if the actual skill // has been used from skill tree. itemskill(SM_ENDURE, 1); +// Instantaneously cast Level 10 Increase Agility on invoking character, +// without checking/consuming skill requirements. + itemskill(AL_INCAGI, 10, ISF_IGNORECONDITIONS | ISF_INSTANTCAST | ISF_CASTONSELF); +// Instaed of using the constants, one could also do it like this: + itemskill(AL_INCAGI, 10, 7); + --------------------------------------- *itemeffect() -- cgit v1.2.3-70-g09d2