Skip to content

Commit

Permalink
Add remaining WTB avatar bcnms
Browse files Browse the repository at this point in the history
  • Loading branch information
TracentEden committed Sep 4, 2024
1 parent ca22204 commit b1c83c3
Show file tree
Hide file tree
Showing 27 changed files with 1,346 additions and 111 deletions.
79 changes: 79 additions & 0 deletions scripts/battlefields/Cloister_of_Frost/waking_the_beast.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
-----------------------------------
-- Area: Cloister of Frost
-- BCNM: Waking the Beast
-----------------------------------
local cloisterOfFrostID = zones[xi.zone.CLOISTER_OF_FROST]
-----------------------------------

local content = BattlefieldQuest:new({
zoneId = xi.zone.CLOISTER_OF_FROST,
battlefieldId = xi.battlefield.id.WAKING_THE_BEAST_CLOISTER_OF_FROST,
canLoseExp = false,
maxPlayers = 18,
timeLimit = utils.minutes(30),
index = 3,
entryNpc = 'IP_Entrance',
exitNpc = 'Ice_Protocrystal',
requiredKeyItems = { xi.ki.RAINBOW_RESONATOR },

questArea = xi.questLog.OTHER_AREAS,
quest = xi.quest.id.otherAreas.WAKING_THE_BEAST,
})

function content:onEventFinishWin(player, csid, option, npc)
npcUtil.giveKeyItem(player, xi.ki.EYE_OF_FROST)
end

content.groups =
{
{
-- avatar
mobIds =
{
{ cloisterOfFrostID.mob.SHIVA_PRIME_WTB },
{ cloisterOfFrostID.mob.SHIVA_PRIME_WTB + 5 },
{ cloisterOfFrostID.mob.SHIVA_PRIME_WTB + 10 },
},

allDeath = function(battlefield, mob)
-- when avatar defeated then all elementals should also die
for i = 1, 4 do
local elemental = GetMobByID(mob:getID() + i)
if elemental and elemental:isAlive() then
elemental:setHP(0)
end
end

battlefield:setStatus(xi.battlefield.status.WON)
end,
},

{
-- elementals
mobIds =
{
{
cloisterOfFrostID.mob.SHIVA_PRIME_WTB + 1,
cloisterOfFrostID.mob.SHIVA_PRIME_WTB + 2,
cloisterOfFrostID.mob.SHIVA_PRIME_WTB + 3,
cloisterOfFrostID.mob.SHIVA_PRIME_WTB + 4,
},

{
cloisterOfFrostID.mob.SHIVA_PRIME_WTB + 6,
cloisterOfFrostID.mob.SHIVA_PRIME_WTB + 7,
cloisterOfFrostID.mob.SHIVA_PRIME_WTB + 8,
cloisterOfFrostID.mob.SHIVA_PRIME_WTB + 9,
},

{
cloisterOfFrostID.mob.SHIVA_PRIME_WTB + 11,
cloisterOfFrostID.mob.SHIVA_PRIME_WTB + 12,
cloisterOfFrostID.mob.SHIVA_PRIME_WTB + 13,
cloisterOfFrostID.mob.SHIVA_PRIME_WTB + 14,
},
},
},
}

return content:register()
79 changes: 79 additions & 0 deletions scripts/battlefields/Cloister_of_Gales/waking_the_beast.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
-----------------------------------
-- Area: Cloister of Gales
-- BCNM: Waking the Beast
-----------------------------------
local cloisterOfGalesID = zones[xi.zone.CLOISTER_OF_GALES]
-----------------------------------

local content = BattlefieldQuest:new({
zoneId = xi.zone.CLOISTER_OF_GALES,
battlefieldId = xi.battlefield.id.WAKING_THE_BEAST_CLOISTER_OF_GALES,
canLoseExp = false,
maxPlayers = 18,
timeLimit = utils.minutes(30),
index = 3,
entryNpc = 'WP_Entrance',
exitNpc = 'Wind_Protocrystal',
requiredKeyItems = { xi.ki.RAINBOW_RESONATOR },

questArea = xi.questLog.OTHER_AREAS,
quest = xi.quest.id.otherAreas.WAKING_THE_BEAST,
})

function content:onEventFinishWin(player, csid, option, npc)
npcUtil.giveKeyItem(player, xi.ki.EYE_OF_GALES)
end

content.groups =
{
{
-- avatar
mobIds =
{
{ cloisterOfGalesID.mob.GARUDA_PRIME_WTB },
{ cloisterOfGalesID.mob.GARUDA_PRIME_WTB + 5 },
{ cloisterOfGalesID.mob.GARUDA_PRIME_WTB + 10 },
},

allDeath = function(battlefield, mob)
-- when avatar defeated then all elementals should also die
for i = 1, 4 do
local elemental = GetMobByID(mob:getID() + i)
if elemental and elemental:isAlive() then
elemental:setHP(0)
end
end

battlefield:setStatus(xi.battlefield.status.WON)
end,
},

{
-- elementals
mobIds =
{
{
cloisterOfGalesID.mob.GARUDA_PRIME_WTB + 1,
cloisterOfGalesID.mob.GARUDA_PRIME_WTB + 2,
cloisterOfGalesID.mob.GARUDA_PRIME_WTB + 3,
cloisterOfGalesID.mob.GARUDA_PRIME_WTB + 4,
},

{
cloisterOfGalesID.mob.GARUDA_PRIME_WTB + 6,
cloisterOfGalesID.mob.GARUDA_PRIME_WTB + 7,
cloisterOfGalesID.mob.GARUDA_PRIME_WTB + 8,
cloisterOfGalesID.mob.GARUDA_PRIME_WTB + 9,
},

{
cloisterOfGalesID.mob.GARUDA_PRIME_WTB + 11,
cloisterOfGalesID.mob.GARUDA_PRIME_WTB + 12,
cloisterOfGalesID.mob.GARUDA_PRIME_WTB + 13,
cloisterOfGalesID.mob.GARUDA_PRIME_WTB + 14,
},
},
},
}

return content:register()
79 changes: 79 additions & 0 deletions scripts/battlefields/Cloister_of_Storms/waking_the_beast.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
-----------------------------------
-- Area: Cloister of Storms
-- BCNM: Waking the Beast
-----------------------------------
local cloisterOFStormsID = zones[xi.zone.CLOISTER_OF_STORMS]
-----------------------------------

local content = BattlefieldQuest:new({
zoneId = xi.zone.CLOISTER_OF_STORMS,
battlefieldId = xi.battlefield.id.WAKING_THE_BEAST_CLOISTER_OF_STORMS,
canLoseExp = false,
maxPlayers = 18,
timeLimit = utils.minutes(30),
index = 3,
entryNpc = 'LP_Entrance',
exitNpc = 'Lightning_Protocrystal',
requiredKeyItems = { xi.ki.RAINBOW_RESONATOR },

questArea = xi.questLog.OTHER_AREAS,
quest = xi.quest.id.otherAreas.WAKING_THE_BEAST,
})

function content:onEventFinishWin(player, csid, option, npc)
npcUtil.giveKeyItem(player, xi.ki.EYE_OF_STORMS)
end

content.groups =
{
{
-- avatar
mobIds =
{
{ cloisterOFStormsID.mob.RAMUH_PRIME_WTB },
{ cloisterOFStormsID.mob.RAMUH_PRIME_WTB + 5 },
{ cloisterOFStormsID.mob.RAMUH_PRIME_WTB + 10 },
},

allDeath = function(battlefield, mob)
-- when avatar defeated then all elementals should also die
for i = 1, 4 do
local elemental = GetMobByID(mob:getID() + i)
if elemental and elemental:isAlive() then
elemental:setHP(0)
end
end

battlefield:setStatus(xi.battlefield.status.WON)
end,
},

{
-- elementals
mobIds =
{
{
cloisterOFStormsID.mob.RAMUH_PRIME_WTB + 1,
cloisterOFStormsID.mob.RAMUH_PRIME_WTB + 2,
cloisterOFStormsID.mob.RAMUH_PRIME_WTB + 3,
cloisterOFStormsID.mob.RAMUH_PRIME_WTB + 4,
},

{
cloisterOFStormsID.mob.RAMUH_PRIME_WTB + 6,
cloisterOFStormsID.mob.RAMUH_PRIME_WTB + 7,
cloisterOFStormsID.mob.RAMUH_PRIME_WTB + 8,
cloisterOFStormsID.mob.RAMUH_PRIME_WTB + 9,
},

{
cloisterOFStormsID.mob.RAMUH_PRIME_WTB + 11,
cloisterOFStormsID.mob.RAMUH_PRIME_WTB + 12,
cloisterOFStormsID.mob.RAMUH_PRIME_WTB + 13,
cloisterOFStormsID.mob.RAMUH_PRIME_WTB + 14,
},
},
},
}

return content:register()
79 changes: 79 additions & 0 deletions scripts/battlefields/Cloister_of_Tides/waking_the_beast.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
-----------------------------------
-- Area: Cloister of Tides
-- BCNM: Waking the Beast
-----------------------------------
local cloisterOFTidesID = zones[xi.zone.CLOISTER_OF_TIDES]
-----------------------------------

local content = BattlefieldQuest:new({
zoneId = xi.zone.CLOISTER_OF_TIDES,
battlefieldId = xi.battlefield.id.WAKING_THE_BEAST_CLOISTER_OF_TIDES,
canLoseExp = false,
maxPlayers = 18,
timeLimit = utils.minutes(30),
index = 2,
entryNpc = 'WP_Entrance',
exitNpc = 'Water_Protocrystal',
requiredKeyItems = { xi.ki.RAINBOW_RESONATOR },

questArea = xi.questLog.OTHER_AREAS,
quest = xi.quest.id.otherAreas.WAKING_THE_BEAST,
})

function content:onEventFinishWin(player, csid, option, npc)
npcUtil.giveKeyItem(player, xi.ki.EYE_OF_TIDES)
end

content.groups =
{
{
-- avatar
mobIds =
{
{ cloisterOFTidesID.mob.LEVIATHAN_PRIME_WTB },
{ cloisterOFTidesID.mob.LEVIATHAN_PRIME_WTB + 5 },
{ cloisterOFTidesID.mob.LEVIATHAN_PRIME_WTB + 10 },
},

allDeath = function(battlefield, mob)
-- when avatar defeated then all elementals should also die
for i = 1, 4 do
local elemental = GetMobByID(mob:getID() + i)
if elemental and elemental:isAlive() then
elemental:setHP(0)
end
end

battlefield:setStatus(xi.battlefield.status.WON)
end,
},

{
-- elementals
mobIds =
{
{
cloisterOFTidesID.mob.LEVIATHAN_PRIME_WTB + 1,
cloisterOFTidesID.mob.LEVIATHAN_PRIME_WTB + 2,
cloisterOFTidesID.mob.LEVIATHAN_PRIME_WTB + 3,
cloisterOFTidesID.mob.LEVIATHAN_PRIME_WTB + 4,
},

{
cloisterOFTidesID.mob.LEVIATHAN_PRIME_WTB + 6,
cloisterOFTidesID.mob.LEVIATHAN_PRIME_WTB + 7,
cloisterOFTidesID.mob.LEVIATHAN_PRIME_WTB + 8,
cloisterOFTidesID.mob.LEVIATHAN_PRIME_WTB + 9,
},

{
cloisterOFTidesID.mob.LEVIATHAN_PRIME_WTB + 11,
cloisterOFTidesID.mob.LEVIATHAN_PRIME_WTB + 12,
cloisterOFTidesID.mob.LEVIATHAN_PRIME_WTB + 13,
cloisterOFTidesID.mob.LEVIATHAN_PRIME_WTB + 14,
},
},
},
}

return content:register()
79 changes: 79 additions & 0 deletions scripts/battlefields/Cloister_of_Tremors/waking_the_beast.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
-----------------------------------
-- Area: Cloister of Tremors
-- BCNM: Waking the Beast
-----------------------------------
local cloisterOFTremorsID = zones[xi.zone.CLOISTER_OF_TREMORS]
-----------------------------------

local content = BattlefieldQuest:new({
zoneId = xi.zone.CLOISTER_OF_TREMORS,
battlefieldId = xi.battlefield.id.WAKING_THE_BEAST_CLOISTER_OF_TREMORS,
canLoseExp = false,
maxPlayers = 18,
timeLimit = utils.minutes(30),
index = 3,
entryNpc = 'EP_Entrance',
exitNpc = 'Earth_Protocrystal',
requiredKeyItems = { xi.ki.RAINBOW_RESONATOR },

questArea = xi.questLog.OTHER_AREAS,
quest = xi.quest.id.otherAreas.WAKING_THE_BEAST,
})

function content:onEventFinishWin(player, csid, option, npc)
npcUtil.giveKeyItem(player, xi.ki.EYE_OF_TREMORS)
end

content.groups =
{
{
-- avatar
mobIds =
{
{ cloisterOFTremorsID.mob.TITAN_PRIME_WTB },
{ cloisterOFTremorsID.mob.TITAN_PRIME_WTB + 5 },
{ cloisterOFTremorsID.mob.TITAN_PRIME_WTB + 10 },
},

allDeath = function(battlefield, mob)
-- when avatar defeated then all elementals should also die
for i = 1, 4 do
local elemental = GetMobByID(mob:getID() + i)
if elemental and elemental:isAlive() then
elemental:setHP(0)
end
end

battlefield:setStatus(xi.battlefield.status.WON)
end,
},

{
-- elementals
mobIds =
{
{
cloisterOFTremorsID.mob.TITAN_PRIME_WTB + 1,
cloisterOFTremorsID.mob.TITAN_PRIME_WTB + 2,
cloisterOFTremorsID.mob.TITAN_PRIME_WTB + 3,
cloisterOFTremorsID.mob.TITAN_PRIME_WTB + 4,
},

{
cloisterOFTremorsID.mob.TITAN_PRIME_WTB + 6,
cloisterOFTremorsID.mob.TITAN_PRIME_WTB + 7,
cloisterOFTremorsID.mob.TITAN_PRIME_WTB + 8,
cloisterOFTremorsID.mob.TITAN_PRIME_WTB + 9,
},

{
cloisterOFTremorsID.mob.TITAN_PRIME_WTB + 11,
cloisterOFTremorsID.mob.TITAN_PRIME_WTB + 12,
cloisterOFTremorsID.mob.TITAN_PRIME_WTB + 13,
cloisterOFTremorsID.mob.TITAN_PRIME_WTB + 14,
},
},
},
}

return content:register()
Loading

0 comments on commit b1c83c3

Please sign in to comment.