From 29933434aa025ba36b2bcf48e8152cd96e9067d1 Mon Sep 17 00:00:00 2001 From: slashtangent <78345197+slashtangent@users.noreply.github.com> Date: Fri, 14 Mar 2025 11:29:14 -0500 Subject: [PATCH] [lua] Add quest Scooped! Co-Authored-By: Critical <48370698+CriticalXI@users.noreply.github.com> --- scripts/enum/item.lua | 1 + scripts/globals/quests.lua | 2 +- scripts/quests/windurst/Scooped.lua | 80 +++++++++++++++++++++++++++++ 3 files changed, 82 insertions(+), 1 deletion(-) create mode 100644 scripts/quests/windurst/Scooped.lua diff --git a/scripts/enum/item.lua b/scripts/enum/item.lua index cb73e892f22..0096a07dbbd 100644 --- a/scripts/enum/item.lua +++ b/scripts/enum/item.lua @@ -179,6 +179,7 @@ xi.item = SIRENS_TEAR = 576, EAGLE_BUTTON = 578, GILT_GLASSES = 579, + BRONZE_BOX = 580, METEORITE = 582, SMOOTH_STONE = 583, TORN_EPISTLE = 584, diff --git a/scripts/globals/quests.lua b/scripts/globals/quests.lua index c096548927d..8cb7aa14842 100644 --- a/scripts/globals/quests.lua +++ b/scripts/globals/quests.lua @@ -256,7 +256,7 @@ xi.quest.id = TO_BEE_OR_NOT_TO_BEE = 35, -- + TRUTH_JUSTICE_AND_THE_ONION_WAY = 36, -- + Converted MAKING_HEADLINES = 37, -- + - SCOOPED = 38, + SCOOPED = 38, -- + Converted CREEPY_CRAWLIES = 39, -- + KNOW_ONES_ONIONS = 40, -- + Converted INSPECTORS_GADGET = 41, -- + Converted diff --git a/scripts/quests/windurst/Scooped.lua b/scripts/quests/windurst/Scooped.lua new file mode 100644 index 00000000000..5da408e3faa --- /dev/null +++ b/scripts/quests/windurst/Scooped.lua @@ -0,0 +1,80 @@ +----------------------------------- +-- Scooped! +----------------------------------- +-- !addquest 2 38 +-- Hariga-Origa : !pos -70.244, -3.800, -4.439 +----------------------------------- + +local quest = Quest:new(xi.questLog.WINDURST, xi.quest.id.windurst.SCOOPED) + +quest.reward = +{ + gil = 1500, +} + +quest.sections = +{ + { + check = function(player, status, vars) + return status == xi.questStatus.QUEST_AVAILABLE and + player:hasCompletedQuest(xi.questLog.WINDURST, xi.quest.id.windurst.MAKING_HEADLINES) + end, + + [xi.zone.WINDURST_WATERS] = + { + ['Naiko-Paneiko'] = quest:progressEvent(676), + + onEventFinish = + { + [676] = function(player, csid, option, npc) + quest:begin(player) + end, + }, + }, + }, + + { + check = function(player, status, vars) + return status == xi.questStatus.QUEST_ACCEPTED + end, + + [xi.zone.WINDURST_WATERS] = + { + ['Naiko-Paneiko'] = + { + onTrade = function(player, npc, trade) + if npcUtil.tradeHasExactly(trade, xi.item.BRONZE_BOX) then + return quest:progressEvent(680) + end + end, + + onTrigger = quest:event(677), + }, + + ['Chyuk-Kochak'] = quest:event(679), + + onEventFinish = + { + [680] = function(player, csid, option, npc) + player:confirmTrade() + quest:complete(player) + end, + }, + }, + }, + + { + check = function(player, status, vars) + return status == xi.questStatus.QUEST_COMPLETED + end, + + [xi.zone.WINDURST_WATERS] = + { + ['Chyuk-Kochak'] = quest:event(682):replaceDefault(), + + ['Naiko-Paneiko'] = quest:event(663):replaceDefault(), + }, + }, +} + +return quest