From 6d5ca9656d90949630926f2810d599a2e0c31802 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sat, 28 Jul 2018 13:48:13 -0300 Subject: Hercules update --- server/scripts/constants.md | 62 +++++++++++++++++++++++--------------- server/scripts/script_commands.txt | 29 +++++++++++++----- 2 files changed, 58 insertions(+), 33 deletions(-) diff --git a/server/scripts/constants.md b/server/scripts/constants.md index 5650488..490d393 100644 --- a/server/scripts/constants.md +++ b/server/scripts/constants.md @@ -3919,31 +3919,31 @@ - `AREA_WOC`: 4 - `AREA_WOSC`: 5 - `AREA_CHAT_WOC`: 6 -- `CHAT`: 7 -- `CHAT_WOS`: 8 -- `PARTY`: 9 -- `PARTY_WOS`: 10 -- `PARTY_SAMEMAP`: 11 -- `PARTY_SAMEMAP_WOS`: 12 -- `PARTY_AREA`: 13 -- `PARTY_AREA_WOS`: 14 -- `GUILD`: 15 -- `GUILD_WOS`: 16 -- `GUILD_SAMEMAP`: 17 -- `GUILD_SAMEMAP_WOS`: 18 -- `GUILD_AREA`: 19 -- `GUILD_AREA_WOS`: 20 -- `GUILD_NOBG`: 21 -- `DUEL`: 22 -- `DUEL_WOS`: 23 -- `SELF`: 24 -- `BG`: 25 -- `BG_WOS`: 26 -- `BG_SAMEMAP`: 27 -- `BG_SAMEMAP_WOS`: 28 -- `BG_AREA`: 29 -- `BG_AREA_WOS`: 30 -- `BG_QUEUE`: 31 +- `CHAT`: 8 +- `CHAT_WOS`: 9 +- `PARTY`: 10 +- `PARTY_WOS`: 11 +- `PARTY_SAMEMAP`: 12 +- `PARTY_SAMEMAP_WOS`: 13 +- `PARTY_AREA`: 14 +- `PARTY_AREA_WOS`: 15 +- `GUILD`: 16 +- `GUILD_WOS`: 17 +- `GUILD_SAMEMAP`: 18 +- `GUILD_SAMEMAP_WOS`: 19 +- `GUILD_AREA`: 20 +- `GUILD_AREA_WOS`: 21 +- `GUILD_NOBG`: 22 +- `DUEL`: 23 +- `DUEL_WOS`: 24 +- `SELF`: 25 +- `BG`: 26 +- `BG_WOS`: 27 +- `BG_SAMEMAP`: 28 +- `BG_SAMEMAP_WOS`: 29 +- `BG_AREA`: 30 +- `BG_AREA_WOS`: 31 +- `BG_QUEUE`: 32 ### LOOK_ constants, use in setlook/changelook script commands @@ -4242,6 +4242,17 @@ - `P_AIRSHIP_ITEM_NOT_ENOUGH`: 4 - `P_AIRSHIP_ITEM_INVALID`: 5 +### questinfo types + +- `QINFO_JOB`: 0 +- `QINFO_SEX`: 1 +- `QINFO_BASE_LEVEL`: 2 +- `QINFO_JOB_LEVEL`: 3 +- `QINFO_ITEM`: 4 +- `QINFO_HOMUN_LEVEL`: 5 +- `QINFO_HOMUN_TYPE`: 6 +- `QINFO_QUEST`: 7 + ### Renewal - `RENEWAL`: 1 @@ -12313,6 +12324,7 @@ - `Sacred_Rosary`: 6913 - `Black_Soul`: 6914 - `Captured_Soul`: 6915 +- `Costume_Change_Ticket`: 6959 - `Mould_Powder`: 7001 - `Ogre_Tooth`: 7002 - `Anolian_Skin`: 7003 diff --git a/server/scripts/script_commands.txt b/server/scripts/script_commands.txt index eb302da..3f5489d 100644 --- a/server/scripts/script_commands.txt +++ b/server/scripts/script_commands.txt @@ -9308,12 +9308,10 @@ that fails, the command returns an empty string instead. //===================================== --------------------------------------- -*questinfo(, {, {, }}) - -This is esentially a combination of questprogress() and showevent(). Use this only -in an OnInit label. For the Quest ID, specify the quest ID that you want -checked if it has been started yet. +*questinfo( {, }) +This is esentially a showevent() that supports different conditions that can be set using setquestinfo(). +Use this only in an OnInit label. For Icon, use one of the following: No Icon : QTYPE_NONE @@ -9344,8 +9342,6 @@ the available color values are: When a user shows up on a map, each NPC is checked for questinfo that has been set. If questinfo is present, it will check if the quest has been started, if it has not, the bubble will appear. -Optionally, you can also specify a Job Class if the quest bubble should only appear for a certain class. - Example izlude,100,100,4 script Test 844,{ mes("[Test]"); @@ -9353,12 +9349,29 @@ Example close(); OnInit: - questinfo(1001, QTYPE_QUEST, 0, Job_Novice); + questinfo(QTYPE_QUEST); end; } --------------------------------------- +*setquestinfo( {, }) + +Use this command ONLY after a questinfo() +it allows you to set multiple required conditions for the quest bubble to show up. + +supported types: values + QINFO_JOB: job_id + QINFO_SEX: sex + QINFO_BASE_LEVEL: min, max + QINFO_JOB_LEVEL: min, max + QINFO_ITEM: item_id, amount // append to the items list on each use + QINFO_HOMUN_LEVEL: min + QINFO_HOMUN_TYPE: homunculus_type (0 - regular, 1 - evolved, 2 - S) + QINFO_QUEST: quest_id, state // append to the quests list on each use + +--------------------------------------- + *setquest({,