diff --git a/scripts/globals/bcnm.lua b/scripts/globals/bcnm.lua index 45d5f688791..b999e3e3ec6 100644 --- a/scripts/globals/bcnm.lua +++ b/scripts/globals/bcnm.lua @@ -155,7 +155,7 @@ local battlefields = { [64] = { -- NAVUKGO EXECUTION CHAMBER -- { 0, 1120, 0}, -- Tough Nut to Crack (ISNM) -- { 1, 1121, 0}, -- Happy Caster (ISNM) - -- { 2, 1122, 0}, -- Omens (Quest) + { 2, 1122, 0}, -- Omens (BLU AF2) { 3, 1123, 2333}, -- Achieving True Power (PUP LB5) { 4, 1124, 0}, -- Shield of Diplomacy (TOAU22) }, @@ -573,6 +573,7 @@ function checkReqs(player, npc, bfid, registrant) [1090] = function() return ( player:hasKeyItem(tpz.ki.TOGGLE_SWITCH) ) end, -- Quest: Puppetmaster Blues [1091] = function() return ( mjob == tpz.job.COR and mlvl >= 66 ) end, -- Quest: Breaking the Bonds of Fate (COR LB5) [1092] = function() return ( toau == mi.toau.LEGACY_OF_THE_LOST ) end, -- TOAU35: Legacy of the Lost + [1122] = function() return ( player:getQuestStatus(AHT_URHGAN,tpz.quest.id.ahtUrhgan.OMENS) == QUEST_ACCEPTED and player:getCharVar('OmensProgress') == 1 ) end, -- Quest: Omens (BLU AF Quest 2) [1123] = function() return ( mjob == tpz.job.PUP and mlvl >= 66 ) end, -- Quest: Achieving True Power (PUP LB5) [1124] = function() return ( toau == mi.toau.SHIELD_OF_DIPLOMACY and toauStat == 2 ) end, -- TOAU22: Shield of Diplomacy [1154] = function() return ( mjob == tpz.job.BLU and mlvl >= 66 ) end, -- Quest: The Beast Within (BLU LB5) diff --git a/scripts/globals/quests.lua b/scripts/globals/quests.lua index ad859e1ae43..5419fc26142 100644 --- a/scripts/globals/quests.lua +++ b/scripts/globals/quests.lua @@ -654,8 +654,8 @@ tpz.quest.id = TOTOROONS_TREASURE_HUNT = 18, WHAT_FRIENDS_ARE_FOR = 19, ROCK_BOTTOM = 20, - BEGINNINGS = 21, - OMENS = 22, + BEGINNINGS = 21, -- + -- + OMENS = 22, -- + -- TRANSFORMATIONS = 23, EQUIPPED_FOR_ALL_OCCASIONS = 24, -- + -- NAVIGATING_THE_UNFRIENDLY_SEAS = 25, -- + -- diff --git a/scripts/zones/Aht_Urhgan_Whitegate/npcs/Lathuya.lua b/scripts/zones/Aht_Urhgan_Whitegate/npcs/Lathuya.lua index 21b50c40a11..54438aea112 100644 --- a/scripts/zones/Aht_Urhgan_Whitegate/npcs/Lathuya.lua +++ b/scripts/zones/Aht_Urhgan_Whitegate/npcs/Lathuya.lua @@ -2,17 +2,53 @@ -- Area: Aht Urhgan Whitegate -- NPC: Lathuya -- Standard Info NPC +-- Involved in quests: Omens +-- !pos -95.081 -6.000 31.638 50 +----------------------------------- +require("scripts/globals/quests") +require("scripts/globals/npc_util") ----------------------------------- -function onTrade(player,npc,trade) +function onTrade(player, npc, trade) end -function onTrigger(player,npc) - player:startEvent(770) +function onTrigger(player, npc) + local omensProgress = player:getCharVar("OmensProgress") + local omens = player:getQuestStatus(AHT_URHGAN, tpz.quest.id.ahtUrhgan.OMENS) + + -- OMENS + if omens >= QUEST_ACCEPTED then + if omensProgress == 3 then + player:startEvent(714) -- Tells Master location + elseif omensProgress == 4 then + player:startEvent(715) -- Reminder of master location + elseif omensProgress == 5 then + player:startEvent(716) -- Master spoken to + elseif omens == QUEST_COMPLETED then + player:startEvent(771) -- Default dialog + end + + -- DEFAULT DIALOG + else + player:startEvent(770) + end end -function onEventUpdate(player,csid,option) +function onEventUpdate(player, csid, option) end -function onEventFinish(player,csid,option) +function onEventFinish(player, csid, option) + local omensProgress = player:getCharVar("OmensProgress") + + -- OMENS + if csid == 714 and omensProgress == 3 then + player:setCharVar("OmensProgress", 4) + elseif csid == 716 and omensProgress == 5 then + npcUtil.completeQuest(player, AHT_URHGAN, tpz.quest.id.ahtUrhgan.OMENS, { + item = 15684, + title = tpz.title.IMMORTAL_LION, + var = { OmensProgress } + }) + player:delKeyItem(tpz.ki.SEALED_IMMORTAL_ENVELOPE) + end end \ No newline at end of file diff --git a/scripts/zones/Aht_Urhgan_Whitegate/npcs/Waoud.lua b/scripts/zones/Aht_Urhgan_Whitegate/npcs/Waoud.lua index 3456efcfecb..e67099c3558 100644 --- a/scripts/zones/Aht_Urhgan_Whitegate/npcs/Waoud.lua +++ b/scripts/zones/Aht_Urhgan_Whitegate/npcs/Waoud.lua @@ -2,7 +2,7 @@ -- Area: Aht Urhgan Whitegate -- NPC: Waoud -- Standard Info NPC --- Involved in quests: An Empty Vessel (BLU flag), Beginnings (BLU AF1) +-- Involved in quests: An Empty Vessel (BLU Unlock), Beginnings (BLU AF Quest 1), Omens (BLU AF Quest 2) -- !pos 65 -6 -78 50 ----------------------------------- require("scripts/globals/settings") @@ -13,33 +13,34 @@ require("scripts/globals/npc_util") local ID = require("scripts/zones/Aht_Urhgan_Whitegate/IDs") ----------------------------------- -function onTrade(player,npc,trade) - local anEmptyVessel = player:getQuestStatus(AHT_URHGAN,tpz.quest.id.ahtUrhgan.AN_EMPTY_VESSEL) +function onTrade(player, npc, trade) + local anEmptyVessel = player:getQuestStatus(AHT_URHGAN, tpz.quest.id.ahtUrhgan.AN_EMPTY_VESSEL) local anEmptyVesselProgress = player:getCharVar("AnEmptyVesselProgress") local StoneID = player:getCharVar("EmptyVesselStone") -- AN EMPTY VESSEL (dangruf stone, valkurm sunsand, or siren's tear) - if anEmptyVessel == QUEST_ACCEPTED and anEmptyVesselProgress == 3 and trade:hasItemQty(StoneID,1) and trade:getItemCount() == 1 then - player:startEvent(67,StoneID) -- get the stone to Aydeewa + if anEmptyVessel == QUEST_ACCEPTED and anEmptyVesselProgress == 3 and trade:hasItemQty(StoneID, 1) and trade:getItemCount() == 1 then + player:startEvent(67, StoneID) -- get the stone to Aydeewa end end -function onTrigger(player,npc) - local anEmptyVessel = player:getQuestStatus(AHT_URHGAN,tpz.quest.id.ahtUrhgan.AN_EMPTY_VESSEL) +function onTrigger(player, npc) + local anEmptyVessel = player:getQuestStatus(AHT_URHGAN, tpz.quest.id.ahtUrhgan.AN_EMPTY_VESSEL) local anEmptyVesselProgress = player:getCharVar("AnEmptyVesselProgress") local divinationReady = vanaDay() > player:getCharVar("LastDivinationDay") - local beginnings = player:getQuestStatus(AHT_URHGAN,tpz.quest.id.ahtUrhgan.BEGINNINGS) + local beginnings = player:getQuestStatus(AHT_URHGAN, tpz.quest.id.ahtUrhgan.BEGINNINGS) + local omens = player:getQuestStatus(AHT_URHGAN, tpz.quest.id.ahtUrhgan.OMENS) + local waoudNeedToZone = player:getLocalVar("WaoudNeedToZone") -- AN EMPTY VESSEL if ENABLE_TOAU == 1 and anEmptyVessel == QUEST_AVAILABLE and anEmptyVesselProgress <= 1 and player:getMainLvl() >= ADVANCED_JOB_LEVEL then if divinationReady then - player:setCharVar("SuccessfullyAnswered",0) - player:startEvent(60,player:getGil()) -- you must answer these 10 questions + player:startEvent(60, player:getGil()) -- you must answer these 10 questions else player:startEvent(63) -- you failed, and must wait a gameday to try again end elseif anEmptyVesselProgress == 2 then - if divinationReady and not player:needToZone() then + if divinationReady and waoudNeedToZone == 0 then player:startEvent(65) -- gives you a clue about the stone he wants (specific conditions) else -- Have not zoned, or have not waited, or both. player:startEvent(64) -- you have succeeded, but you need to wait a gameday and zone @@ -53,13 +54,13 @@ function onTrigger(player,npc) -- BEGINNINGS elseif anEmptyVessel == QUEST_COMPLETED and beginnings == QUEST_AVAILABLE and player:getCurrentMission(TOAU) > tpz.mission.id.toau.IMMORTAL_SENTRIES - and player:getMainJob() == tpz.job.BLU and player:getMainLvl() >= ADVANCED_JOB_LEVEL then + and player:getMainJob() == tpz.job.BLU and player:getMainLvl() >= AF1_QUEST_LEVEL then if not divinationReady then player:startEvent(63) - elseif player:needToZone() then - player:startEvent(78,player:getGil()) -- dummy questions, costs you 1000 gil + elseif waoudNeedToZone == 1 then + player:startEvent(78, player:getGil()) -- dummy questions, costs you 1000 gil else - player:startEvent(705,player:getGil()) -- start AF1 quest + player:startEvent(705, player:getGil()) -- start AF1 quest end elseif beginnings == QUEST_ACCEPTED then local brand1 = player:hasKeyItem(tpz.ki.BRAND_OF_THE_SPRINGSERPENT) @@ -70,7 +71,25 @@ function onTrigger(player,npc) if brand1 and brand2 and brand3 and brand4 and brand5 then player:startEvent(707) -- reward immortal's scimitar else - player:startEvent(706,player:getGil()) -- clue about the five staging points, costs you 1000 gil + player:startEvent(706, player:getGil()) -- clue about the five staging points, costs you 1000 gil + end + + -- OMENS + elseif beginnings == QUEST_COMPLETED and omens == QUEST_AVAILABLE and player:getMainJob() == tpz.job.BLU and player:getMainLvl() >= AF2_QUEST_LEVEL then + if not divinationReady then + player:startEvent(63) + elseif waoudNeedToZone == 1 then + player:startEvent(78, player:getGil()) -- dummy questions, costs you 1000 gil + else + player:startEvent(710) -- start AF2 quest + end + elseif omens == QUEST_ACCEPTED then + if player:getCharVar("OmensProgress") == 1 then + player:startEvent(711, player:getGil()) -- clue about bcnm location, costs you 1000 gil + elseif player:getCharVar("OmensProgress") == 2 then + player:startEvent(712) -- gives keyitem to claim armour piece + elseif player:getCharVar("OmensProgress") >= 3 then + player:startEvent(713, player:getGil()) -- clue about location of armour piece, costs you 1000 gil end -- DEFAULT DIALOG @@ -79,84 +98,102 @@ function onTrigger(player,npc) end end -function onEventUpdate(player,csid,option) +function onEventUpdate(player, csid, option) -- AN EMPTY VESSEL if csid == 60 then - local success = player:getCharVar("SuccessfullyAnswered") + local success = player:getLocalVar("SuccessfullyAnswered") -- record correct answers if option < 40 then - local correctAnswers = {2,6,9,12,13,18,21,24,26,30} - for k,v in pairs(correctAnswers) do + local correctAnswers = {2, 6, 9, 12, 13, 18, 21, 24, 26, 30} + for k, v in pairs(correctAnswers) do if (v == option) then - player:setCharVar("SuccessfullyAnswered", success + 1) + player:setLocalVar("SuccessfullyAnswered", success + 1) break end end -- determine results elseif option == 40 then - if success < 2 then player:updateEvent(player:getGil(),0,0,0,0,0,0,10) -- Springserpent - elseif success < 4 then player:updateEvent(player:getGil(),0,0,0,0,0,0,20) -- Stoneserpent - elseif success < 6 then player:updateEvent(player:getGil(),0,0,0,0,0,0,30) -- Galeserpent - elseif success < 8 then player:updateEvent(player:getGil(),0,0,0,0,0,0,40) -- Flameserpent - elseif success < 10 then player:updateEvent(player:getGil(),0,0,0,0,0,0,60) -- Skyserpent + if success < 2 then player:updateEvent(player:getGil(), 0, 0, 0, 0, 0, 0, 10) -- Springserpent + elseif success < 4 then player:updateEvent(player:getGil(), 0, 0, 0, 0, 0, 0, 20) -- Stoneserpent + elseif success < 6 then player:updateEvent(player:getGil(), 0, 0, 0, 0, 0, 0, 30) -- Galeserpent + elseif success < 8 then player:updateEvent(player:getGil(), 0, 0, 0, 0, 0, 0, 40) -- Flameserpent + elseif success < 10 then player:updateEvent(player:getGil(), 0, 0, 0, 0, 0, 0, 60) -- Skyserpent else local rand = math.random(1,3) switch (rand): caseof { - [1] = function (x) player:setCharVar("EmptyVesselStone",576) end, -- (576) Siren's Tear (576) - [2] = function (x) player:setCharVar("EmptyVesselStone",503) end, -- (502) Valkurm Sunsand (502) - [3] = function (x) player:setCharVar("EmptyVesselStone",553) end -- (553) Dangruf Stone (553) + [1] = function (x) player:setCharVar("EmptyVesselStone", 576) end, -- (576) Siren's Tear (576) + [2] = function (x) player:setCharVar("EmptyVesselStone", 503) end, -- (502) Valkurm Sunsand (502) + [3] = function (x) player:setCharVar("EmptyVesselStone", 553) end -- (553) Dangruf Stone (553) } - player:setCharVar("SuccessfullyAnswered", 0) - player:updateEvent(player:getGil(),0,0,0,0,0,rand,70) -- all 5 serpents / success! + player:setLocalVar("SuccessfullyAnswered", 0) + player:updateEvent(player:getGil(), 0, 0, 0, 0, 0, rand, 70) -- all 5 serpents / success! end end elseif csid == 65 and option == 2 then - player:setCharVar("AnEmptyVesselProgress",3) + player:setCharVar("AnEmptyVesselProgress", 3) -- BEGINNINGS elseif csid == 78 and option == 40 then - local serpent = math.random(1,5) * 10 - player:updateEvent(player:getGil(),0,0,0,0,0,0,serpent) + local serpent = math.random(1, 5) * 10 + player:updateEvent(player:getGil(), 0, 0, 0, 0, 0, 0, serpent) end end -function onEventFinish(player,csid,option) +function onEventFinish(player, csid, option) + local beginnings = player:getQuestStatus(AHT_URHGAN, tpz.quest.id.ahtUrhgan.BEGINNINGS) + local omensProgress = player:getCharVar("OmensProgress") + -- AN EMPTY VESSEL if csid == 60 then + player:setLocalVar("SuccessfullyAnswered", 0) if option == 0 then player:setCharVar("AnEmptyVesselProgress", 1) elseif option == 50 then - player:needToZone(true) - player:setCharVar("LastDivinationDay",vanaDay()) - player:setCharVar("AnEmptyVesselProgress",2) - player:addQuest(AHT_URHGAN,tpz.quest.id.ahtUrhgan.AN_EMPTY_VESSEL) - else - player:setCharVar("LastDivinationDay",vanaDay()) - player:setCharVar("AnEmptyVesselProgress",1) + player:setLocalVar("waoudNeedToZone", 1) + player:setCharVar("LastDivinationDay", vanaDay()) + player:setCharVar("AnEmptyVesselProgress", 2) + player:addQuest(AHT_URHGAN, tpz.quest.id.ahtUrhgan.AN_EMPTY_VESSEL) + elseif player:getGil() >= 1000 then + player:setCharVar("LastDivinationDay", vanaDay()) + player:setCharVar("AnEmptyVesselProgress", 1) player:delGil(1000) player:messageSpecial(ID.text.PAY_DIVINATION) -- You pay 1000 gil for the divination. end elseif csid == 67 then -- Turn in stone, go to Aydeewa - player:setCharVar("AnEmptyVesselProgress",4) + player:setCharVar("AnEmptyVesselProgress", 4) elseif csid == 69 and option == 1 then - player:needToZone(true) - player:setCharVar("LastDivinationDay",vanaDay()) - player:setCharVar("BluAFBeginnings_Waoud",1) + player:setLocalVar("waoudNeedToZone", 1) + player:setCharVar("LastDivinationDay", vanaDay()) + player:setCharVar("BluAFBeginnings_Waoud", 1) -- BEGINNINGS - elseif csid == 78 and option == 1 then - player:setCharVar("LastDivinationDay",vanaDay()) + elseif csid == 78 and option == 1 and player:getGil() >= 1000 then + player:setCharVar("LastDivinationDay", vanaDay()) player:delGil(1000) player:messageSpecial(ID.text.PAY_DIVINATION) -- You pay 1000 gil for the divination. elseif csid == 705 and option == 1 then - player:addQuest(AHT_URHGAN,tpz.quest.id.ahtUrhgan.BEGINNINGS) - elseif csid == 706 and option == 1 then + player:addQuest(AHT_URHGAN, tpz.quest.id.ahtUrhgan.BEGINNINGS) + elseif csid == 706 and option == 1 and player:getGil() >= 1000 then player:delGil(1000) player:messageSpecial(ID.text.PAY_DIVINATION) -- You pay 1000 gil for the divination. elseif csid == 707 then npcUtil.completeQuest(player, AHT_URHGAN, tpz.quest.id.ahtUrhgan.BEGINNINGS, {item=17717}) + + -- OMENS + elseif csid == 710 and beginnings == QUEST_COMPLETED then + player:addQuest(AHT_URHGAN, tpz.quest.id.ahtUrhgan.OMENS) + player:setCharVar("OmensProgress", 1) + elseif csid == 711 and option == 1 and omensProgress == 1 and player:getGil() >= 1000 then + player:delGil(1000) + player:messageSpecial(ID.text.PAY_DIVINATION) -- You pay 1000 gil for the divination. + elseif csid == 712 and omensProgress == 2 then + npcUtil.giveKeyItem(player, tpz.ki.SEALED_IMMORTAL_ENVELOPE) + player:setCharVar("OmensProgress", 3) + elseif csid == 713 and option == 1 and omensProgress == 3 and player:getGil() >= 1000 then + player:delGil(1000) + player:messageSpecial(ID.text.PAY_DIVINATION) -- You pay 1000 gil for the divination. end end \ No newline at end of file diff --git a/scripts/zones/Aydeewa_Subterrane/npcs/15.lua b/scripts/zones/Aydeewa_Subterrane/npcs/15.lua new file mode 100644 index 00000000000..4e6d33d0467 --- /dev/null +++ b/scripts/zones/Aydeewa_Subterrane/npcs/15.lua @@ -0,0 +1,28 @@ +----------------------------------- +-- Area: Aydeewa Subterrane +-- NPC: Blank (Blue AF2 Quest) +-- !pos 342.129 36.509 -24.856 68 +----------------------------------- +require("scripts/globals/keyitems"); +local ID = require("scripts/zones/Aydeewa_Subterrane/IDs"); +----------------------------------- + +function onTrade(player,npc,trade) +end + +function onTrigger(player,npc) + if player:getCharVar("OmensProgress") == 4 then + player:startEvent(9) + else + player:messageSpecial(ID.text.NOTHING_OUT_OF_ORDINARY) + end +end + +function onEventUpdate(player,csid,option) +end + +function onEventFinish(player,csid,option) + if csid == 9 then + player:setCharVar("OmensProgress",5) + end +end \ No newline at end of file diff --git a/scripts/zones/Navukgo_Execution_Chamber/IDs.lua b/scripts/zones/Navukgo_Execution_Chamber/IDs.lua index 5756610b75a..2c52d59e63a 100644 --- a/scripts/zones/Navukgo_Execution_Chamber/IDs.lua +++ b/scripts/zones/Navukgo_Execution_Chamber/IDs.lua @@ -27,6 +27,11 @@ zones[tpz.zone.NAVUKGO_EXECUTION_CHAMBER] = mob = { KARABABA_OFFSET = 17039401, + IMMORTAL_FLAN2 = 17039375, -- IMMORTAL_FLAN1 always pops in battlefield, other flans pop depending on party size + IMMORTAL_FLAN3 = 17039376, + IMMORTAL_FLAN4 = 17039377, + IMMORTAL_FLAN5 = 17039378, + IMMORTAL_FLAN6 = 17039379, }, npc = { diff --git a/scripts/zones/Navukgo_Execution_Chamber/bcnms/omens.lua b/scripts/zones/Navukgo_Execution_Chamber/bcnms/omens.lua new file mode 100644 index 00000000000..7df9f965bfb --- /dev/null +++ b/scripts/zones/Navukgo_Execution_Chamber/bcnms/omens.lua @@ -0,0 +1,44 @@ +----------------------------------- +-- Area: Navukgo Execution Chamber +-- BCNM: Omens +----------------------------------- +require("scripts/globals/battlefield") +local ID = require("scripts/zones/Navukgo_Execution_Chamber/IDs") +---------------------------------------- + +function onBattlefieldInitialise(battlefield) +end + +function onBattlefieldTick(battlefield, tick) + tpz.battlefield.onBattlefieldTick(battlefield, tick) +end + +function onBattlefieldRegister(player, battlefield) +end + +function onBattlefieldEnter(player, battlefield) + local mobOffset = (battlefield:getArea() - 1) * 7 -- Offset to spawn correct mob depending on battlefieldNumber + local track_var = 'entered_'.. player:getName() + if not (battlefield:getLocalVar(track_var) == 1) then + battlefield:setLocalVar(track_var, 1) + battlefield:setLocalVar('num_entrants', battlefield:getLocalVar('num_entrants') + 1) + end +end + +function onBattlefieldLeave(player, battlefield, leavecode) + if leavecode == tpz.battlefield.leaveCode.WON then + local name, clearTime, partySize = battlefield:getRecord() + player:startEvent(32001, battlefield:getArea(), clearTime, partySize, battlefield:getTimeInside(), 1, battlefield:getLocalVar("[cs]bit"), 0) + elseif leavecode == tpz.battlefield.leaveCode.LOST then + player:startEvent(32002) + end +end + +function onEventUpdate(player, csid, option) +end + +function onEventFinish(player, csid, option) + if csid == 32001 and player:getCharVar("OmensProgress") == 1 then + player:setCharVar("OmensProgress", 2) + end +end \ No newline at end of file diff --git a/scripts/zones/Navukgo_Execution_Chamber/mobs/Immortal_Flan.lua b/scripts/zones/Navukgo_Execution_Chamber/mobs/Immortal_Flan.lua new file mode 100644 index 00000000000..b6e9cf52be3 --- /dev/null +++ b/scripts/zones/Navukgo_Execution_Chamber/mobs/Immortal_Flan.lua @@ -0,0 +1,37 @@ +----------------------------------- +-- Area: Navukgo Execution Chamber +-- Mob: Immortal Flan +----------------------------------- +require("scripts/globals/battlefield") +local ID = require("scripts/zones/Navukgo_Execution_Chamber/IDs") +---------------------------------------- + +function onMobEngaged(mob, target) + local bf = mob:getBattlefield() + local mobOffset = (bf:getArea() - 1) * 7 + if not (bf:getLocalVar('flans_spawned') == 1) then + local entrants = bf:getLocalVar('num_entrants') + if entrants >= 4 then + GetMobByID(ID.mob.IMMORTAL_FLAN2 + mobOffset):spawn() + end + if entrants >= 7 then + GetMobByID(ID.mob.IMMORTAL_FLAN3 + mobOffset):spawn() + end + if entrants >= 10 then + GetMobByID(ID.mob.IMMORTAL_FLAN4 + mobOffset):spawn() + end + if entrants >= 13 then + GetMobByID(ID.mob.IMMORTAL_FLAN5 + mobOffset):spawn() + end + if entrants >= 16 then + GetMobByID(ID.mob.IMMORTAL_FLAN6 + mobOffset):spawn() + end + bf:setLocalVar('flans_spawned', 1) + end +end + +function onMobFight(mob, target) +end + +function onMobDeath(mob, player, isKiller) +end diff --git a/sql/bcnm_battlefield.sql b/sql/bcnm_battlefield.sql index 2471ee3a981..72bcd38d560 100644 --- a/sql/bcnm_battlefield.sql +++ b/sql/bcnm_battlefield.sql @@ -1146,6 +1146,24 @@ INSERT INTO `bcnm_battlefield` VALUES (1092,1,17010728,0); INSERT INTO `bcnm_battlefield` VALUES (1092,1,17010729,0); INSERT INTO `bcnm_battlefield` VALUES (1092,1,17010730,0); INSERT INTO `bcnm_battlefield` VALUES (1092,1,17010731,0); +INSERT INTO `bcnm_battlefield` VALUES (1122,1,17039374,3); -- omens +INSERT INTO `bcnm_battlefield` VALUES (1122,1,17039375,2); +INSERT INTO `bcnm_battlefield` VALUES (1122,1,17039376,2); +INSERT INTO `bcnm_battlefield` VALUES (1122,1,17039377,2); +INSERT INTO `bcnm_battlefield` VALUES (1122,1,17039378,2); +INSERT INTO `bcnm_battlefield` VALUES (1122,1,17039379,2); +INSERT INTO `bcnm_battlefield` VALUES (1122,2,17039381,3); +INSERT INTO `bcnm_battlefield` VALUES (1122,2,17039382,2); +INSERT INTO `bcnm_battlefield` VALUES (1122,2,17039383,2); +INSERT INTO `bcnm_battlefield` VALUES (1122,2,17039384,2); +INSERT INTO `bcnm_battlefield` VALUES (1122,2,17039385,2); +INSERT INTO `bcnm_battlefield` VALUES (1122,2,17039386,2); +INSERT INTO `bcnm_battlefield` VALUES (1122,3,17039388,3); +INSERT INTO `bcnm_battlefield` VALUES (1122,3,17039389,2); +INSERT INTO `bcnm_battlefield` VALUES (1122,3,17039390,2); +INSERT INTO `bcnm_battlefield` VALUES (1122,3,17039391,2); +INSERT INTO `bcnm_battlefield` VALUES (1122,3,17039392,2); +INSERT INTO `bcnm_battlefield` VALUES (1122,3,17039393,2); INSERT INTO `bcnm_battlefield` VALUES (1124,1,17039400,3); -- shield_of_diplomacy INSERT INTO `bcnm_battlefield` VALUES (1156,1,17051694,3); -- puppet_in_peril diff --git a/sql/bcnm_info.sql b/sql/bcnm_info.sql index bd4a7c7620a..37de549ed06 100644 --- a/sql/bcnm_info.sql +++ b/sql/bcnm_info.sql @@ -265,7 +265,7 @@ INSERT INTO `bcnm_info` VALUES (1091,57,'breaking_the_bonds_of_fate','nobody',0, INSERT INTO `bcnm_info` VALUES (1092,57,'legacy_of_the_lost','nobody',0,1800,1800,99,6,0,5,0); INSERT INTO `bcnm_info` VALUES (1120,64,'tough_nut_to_crack','nobody',0,1800,1800,60,6,1120,15,0); INSERT INTO `bcnm_info` VALUES (1121,64,'happy_caster','nobody',0,1800,1800,75,6,1121,15,0); -INSERT INTO `bcnm_info` VALUES (1122,64,'omens','nobody',0,1800,1800,75,18,0,7,0); +INSERT INTO `bcnm_info` VALUES (1122,64,'omens','nobody',0,1800,1800,0,18,0,7,0); INSERT INTO `bcnm_info` VALUES (1123,64,'achieving_true_power','nobody',0,600,600,75,1,0,6,0); INSERT INTO `bcnm_info` VALUES (1124,64,'shield_of_diplomacy','nobody',0,1800,1800,99,6,0,5,0); INSERT INTO `bcnm_info` VALUES (1152,67,'making_a_mockery','nobody',0,1800,1800,60,6,1152,15,0); diff --git a/sql/mob_groups.sql b/sql/mob_groups.sql index 1cf8dcf4264..138bc424ba2 100644 --- a/sql/mob_groups.sql +++ b/sql/mob_groups.sql @@ -2916,7 +2916,7 @@ INSERT INTO `mob_groups` VALUES (10633,5872,63,'Qiqirn_Mine',0,128,0,0,0,75,75,0 INSERT INTO `mob_groups` VALUES (1,2221,64,'Khimaira_13',0,128,0,0,0,75,75,0); INSERT INTO `mob_groups` VALUES (2157,2189,64,'Karababa',0,128,0,1000,1000,75,75,1); -INSERT INTO `mob_groups` VALUES (2156,2063,64,'Immortal_Flan',0,128,0,0,0,50,50,0); +INSERT INTO `mob_groups` VALUES (2156,2063,64,'Immortal_Flan',0,128,0,0,0,53,53,0); INSERT INTO `mob_groups` VALUES (2159,3219,64,'Pudding_Master',0,128,0,0,0,50,50,0); INSERT INTO `mob_groups` VALUES (2160,3582,64,'Shamarhaan',0,128,0,0,0,75,75,0); INSERT INTO `mob_groups` VALUES (2161,4058,64,'Two-faced_Flan',0,128,0,0,0,75,75,0); diff --git a/sql/mob_spawn_points.sql b/sql/mob_spawn_points.sql index cf0f84f8fbb..42a5c38f2a1 100644 --- a/sql/mob_spawn_points.sql +++ b/sql/mob_spawn_points.sql @@ -13453,6 +13453,28 @@ INSERT INTO `mob_spawn_points` VALUES (17035470,'Black_Shuck','Black Shuck',14,4 -- ------------------------------------------------------------ INSERT INTO `mob_spawn_points` VALUES (17039400,'Khimaira_13','Khimaira 13',1,383.144,-116.5,381.355,128); +INSERT INTO `mob_spawn_points` VALUES (17039373,'Pudding_Master','Pudding Master',2159,384.500,-116.500,380.000,0); +INSERT INTO `mob_spawn_points` VALUES (17039374,'Immortal_Flan','Immortal Flan',2156,384.000,-116.500,383.000,128); +-- Pos from ID 17039375 to 17039393 not retail accurate. +INSERT INTO `mob_spawn_points` VALUES (17039375,'Immortal_Flan','Immortal Flan',2156,384.000,-116.500,374.000,128); +INSERT INTO `mob_spawn_points` VALUES (17039376,'Immortal_Flan','Immortal Flan',2156,382.000,-116.500,390.000,128); +INSERT INTO `mob_spawn_points` VALUES (17039377,'Immortal_Flan','Immortal Flan',2156,382.000,-116.500,368.000,128); +INSERT INTO `mob_spawn_points` VALUES (17039378,'Immortal_Flan','Immortal Flan',2156,378.000,-116.500,394.000,128); +INSERT INTO `mob_spawn_points` VALUES (17039379,'Immortal_Flan','Immortal Flan',2156,378.000,-116.500,366.000,128); +INSERT INTO `mob_spawn_points` VALUES (17039380,'Pudding_Master','Pudding Master',2159,-16.212,-16.4338,-20.053,0); +INSERT INTO `mob_spawn_points` VALUES (17039381,'Immortal_Flan','Immortal Flan',2156,-16.212,-16.4338,-17.053,128); +INSERT INTO `mob_spawn_points` VALUES (17039382,'Immortal_Flan','Immortal Flan',2156,-16.212,-16.4338,-26.053,128); +INSERT INTO `mob_spawn_points` VALUES (17039383,'Immortal_Flan','Immortal Flan',2156,-18.712,-16.4338,-10.053,128); +INSERT INTO `mob_spawn_points` VALUES (17039384,'Immortal_Flan','Immortal Flan',2156,-18.712,-16.4338,-32.053,128); +INSERT INTO `mob_spawn_points` VALUES (17039385,'Immortal_Flan','Immortal Flan',2156,-22.712,-16.4338,-6.053,128); +INSERT INTO `mob_spawn_points` VALUES (17039386,'Immortal_Flan','Immortal Flan',2156,-22.712,-16.4338,-34.053,128); +INSERT INTO `mob_spawn_points` VALUES (17039387,'Pudding_Master','Pudding Master',2159,384.769,83.596,-420.301,0); +INSERT INTO `mob_spawn_points` VALUES (17039388,'Immortal_Flan','Immortal Flan',2156,384.269,83.596,-417.301,128); +INSERT INTO `mob_spawn_points` VALUES (17039389,'Immortal_Flan','Immortal Flan',2156,384.269,83.596,-426.301,128); +INSERT INTO `mob_spawn_points` VALUES (17039390,'Immortal_Flan','Immortal Flan',2156,382.269,83.596,-410.301,128); +INSERT INTO `mob_spawn_points` VALUES (17039391,'Immortal_Flan','Immortal Flan',2156,382.269,83.596,-432.301,128); +INSERT INTO `mob_spawn_points` VALUES (17039392,'Immortal_Flan','Immortal Flan',2156,378.269,83.596,-406.301,128); +INSERT INTO `mob_spawn_points` VALUES (17039393,'Immortal_Flan','Immortal Flan',2156,378.269,83.596,-434.301,128); -- ------------------------------------------------------------ -- Mamook (Zone 65)