Co-Authored-By: KnowOne134 <35616771+KnowOne134@users.noreply.github.com> Co-Authored-By: InoUno <774909+InoUno@users.noreply.github.com> Co-Authored-By: Corey <2593549+cocosolos@users.noreply.github.com>
38 lines
1.4 KiB
Lua
38 lines
1.4 KiB
Lua
describe('Interaction Framework', function()
|
|
it('completes Shady Business quest with zinc ore trade', function()
|
|
---@type CClientEntityPair
|
|
local player = xi.test.world:spawnPlayer()
|
|
|
|
-- Set prerequisite: Beauty and the Galka quest must be completed
|
|
player:addQuest(xi.questLog.BASTOK, xi.quest.id.bastok.BEAUTY_AND_THE_GALKA)
|
|
player:completeQuest(xi.questLog.BASTOK, xi.quest.id.bastok.BEAUTY_AND_THE_GALKA)
|
|
|
|
-- Go to Port Bastok and talk to Talib
|
|
player:gotoZone(xi.zone.PORT_BASTOK)
|
|
player.entities:gotoAndTrigger('Talib', { eventId = 90 })
|
|
|
|
-- Verify quest was started
|
|
player.assert:hasQuest(xi.questLog.BASTOK, xi.quest.id.bastok.SHADY_BUSINESS)
|
|
|
|
-- Add 4 chunks of zinc ore to inventory
|
|
player:addItem(xi.item.CHUNK_OF_ZINC_ORE, 4)
|
|
|
|
-- Trade the zinc ore to complete the quest
|
|
player.actions:tradeNpc('Talib',
|
|
{
|
|
{
|
|
itemId = xi.item.CHUNK_OF_ZINC_ORE,
|
|
quantity = 4,
|
|
}
|
|
},
|
|
{ eventId = 91 })
|
|
|
|
-- Verify quest completion and rewards
|
|
player.assert
|
|
:hasCompletedQuest(xi.questLog.BASTOK, xi.quest.id.bastok.SHADY_BUSINESS)
|
|
:hasGil(350) -- Quest reward is 350 gil
|
|
|
|
-- Verify the zinc ore was consumed
|
|
player.assert.no:hasItem(xi.item.CHUNK_OF_ZINC_ORE)
|
|
end)
|
|
end)
|