diff --git a/scripts/enum/item.lua b/scripts/enum/item.lua index eebae17266a..2164aa19939 100644 --- a/scripts/enum/item.lua +++ b/scripts/enum/item.lua @@ -2683,6 +2683,11 @@ xi.item = SHEN = 5997, PIECE_OF_COPSE_CANDY = 6008, SAKURA_BISCUIT = 6010, + CELADON_YGGRETE_SHARD_I = 6011, + CELADON_YGGRETE_SHARD_II = 6012, + CELADON_YGGRETE_SHARD_III = 6013, + CELADON_YGGRETE_SHARD_IV = 6014, + CELADON_YGGRETE_SHARD_V = 6015, KLIMAFORM_SCHEMA = 6058, ANIMUS_AUGEO_SCHEMA = 6059, SLICE_OF_GABBRATH_MEAT = 6068, diff --git a/scripts/zones/Ceizak_Battlegrounds/IDs.lua b/scripts/zones/Ceizak_Battlegrounds/IDs.lua index 5d83f2fb5aa..145d985b6b2 100644 --- a/scripts/zones/Ceizak_Battlegrounds/IDs.lua +++ b/scripts/zones/Ceizak_Battlegrounds/IDs.lua @@ -32,6 +32,11 @@ zones[xi.zone.CEIZAK_BATTLEGROUNDS] = }, mob = { + UNFETTERED_TWITHERYM = GetFirstID('Unfettered_Twitherym'), + SUPERNAL_CHAPULI = GetFirstID('Supernal_Chapuli'), + TRANSCENDENT_SCORPION = GetFirstID('Transcendent_Scorpion'), + MASTOP = GetFirstID('Mastop'), + TAXET = GetFirstID('Taxet'), }, npc = { diff --git a/scripts/zones/Ceizak_Battlegrounds/npcs/qm_mastop.lua b/scripts/zones/Ceizak_Battlegrounds/npcs/qm_mastop.lua new file mode 100644 index 00000000000..2205b1e86a9 --- /dev/null +++ b/scripts/zones/Ceizak_Battlegrounds/npcs/qm_mastop.lua @@ -0,0 +1,29 @@ +----------------------------------- +-- Zone: Ceizak Battlegrounds +-- NPC: qm_mastop (???) +-- Spawns Mastop +-- !pos -230 0 36 261 +----------------------------------- +local ID = zones[xi.zone.CEIZAK_BATTLEGROUNDS] +----------------------------------- +local entity = {} + +entity.onTrade = function(player, npc, trade) + if + npcUtil.tradeHasExactly(trade, xi.item.CELADON_YGGRETE_SHARD_IV) and + npcUtil.popFromQM(player, npc, ID.mob.MASTOP, { radius = 1 }) + then + player:confirmTrade() + end +end + +entity.onTrigger = function(player, npc) +end + +entity.onEventUpdate = function(player, csid, option, npc) +end + +entity.onEventFinish = function(player, csid, option, npc) +end + +return entity diff --git a/scripts/zones/Ceizak_Battlegrounds/npcs/qm_supernal.lua b/scripts/zones/Ceizak_Battlegrounds/npcs/qm_supernal.lua new file mode 100644 index 00000000000..16d0d7634e2 --- /dev/null +++ b/scripts/zones/Ceizak_Battlegrounds/npcs/qm_supernal.lua @@ -0,0 +1,29 @@ +----------------------------------- +-- Zone: Ceizak Battlegrounds +-- NPC: qm_supernal (???) +-- Spawns Supernal Chapuli +-- !pos 278 0 -129 261 +----------------------------------- +local ID = zones[xi.zone.CEIZAK_BATTLEGROUNDS] +----------------------------------- +local entity = {} + +entity.onTrade = function(player, npc, trade) + if + npcUtil.tradeHasExactly(trade, xi.item.CELADON_YGGRETE_SHARD_II) and + npcUtil.popFromQM(player, npc, ID.mob.SUPERNAL_CHAPULI, { radius = 1 }) + then + player:confirmTrade() + end +end + +entity.onTrigger = function(player, npc) +end + +entity.onEventUpdate = function(player, csid, option, npc) +end + +entity.onEventFinish = function(player, csid, option, npc) +end + +return entity diff --git a/scripts/zones/Ceizak_Battlegrounds/npcs/qm_taxet.lua b/scripts/zones/Ceizak_Battlegrounds/npcs/qm_taxet.lua new file mode 100644 index 00000000000..eef9039db44 --- /dev/null +++ b/scripts/zones/Ceizak_Battlegrounds/npcs/qm_taxet.lua @@ -0,0 +1,29 @@ +----------------------------------- +-- Zone: Ceizak Battlegrounds +-- NPC: qm_taxet (???) +-- Spawns Tax'et +-- !pos -280 0 -290 261 +----------------------------------- +local ID = zones[xi.zone.CEIZAK_BATTLEGROUNDS] +----------------------------------- +local entity = {} + +entity.onTrade = function(player, npc, trade) + if + npcUtil.tradeHasExactly(trade, xi.item.CELADON_YGGRETE_SHARD_V) and + npcUtil.popFromQM(player, npc, ID.mob.TAXET, { radius = 1 }) + then + player:confirmTrade() + end +end + +entity.onTrigger = function(player, npc) +end + +entity.onEventUpdate = function(player, csid, option, npc) +end + +entity.onEventFinish = function(player, csid, option, npc) +end + +return entity diff --git a/scripts/zones/Ceizak_Battlegrounds/npcs/qm_transcendent_s.lua b/scripts/zones/Ceizak_Battlegrounds/npcs/qm_transcendent_s.lua new file mode 100644 index 00000000000..fce4e52eccd --- /dev/null +++ b/scripts/zones/Ceizak_Battlegrounds/npcs/qm_transcendent_s.lua @@ -0,0 +1,29 @@ +----------------------------------- +-- Zone: Ceizak Battlegrounds +-- NPC: qm_transcendent_s (???) +-- Spawns Transcendent Scorpion +-- !pos 160 0 -400 261 +----------------------------------- +local ID = zones[xi.zone.CEIZAK_BATTLEGROUNDS] +----------------------------------- +local entity = {} + +entity.onTrade = function(player, npc, trade) + if + npcUtil.tradeHasExactly(trade, xi.item.CELADON_YGGRETE_SHARD_III) and + npcUtil.popFromQM(player, npc, ID.mob.TRANSCENDENT_SCORPION, { radius = 1 }) + then + player:confirmTrade() + end +end + +entity.onTrigger = function(player, npc) +end + +entity.onEventUpdate = function(player, csid, option, npc) +end + +entity.onEventFinish = function(player, csid, option, npc) +end + +return entity diff --git a/scripts/zones/Ceizak_Battlegrounds/npcs/qm_unfettered.lua b/scripts/zones/Ceizak_Battlegrounds/npcs/qm_unfettered.lua new file mode 100644 index 00000000000..975214cdfa1 --- /dev/null +++ b/scripts/zones/Ceizak_Battlegrounds/npcs/qm_unfettered.lua @@ -0,0 +1,29 @@ +----------------------------------- +-- Zone: Ceizak Battlegrounds +-- NPC: qm_unfettered (???) +-- Spawns Unfettered Twitherym +-- !pos 210 0 115 261 +----------------------------------- +local ID = zones[xi.zone.CEIZAK_BATTLEGROUNDS] +----------------------------------- +local entity = {} + +entity.onTrade = function(player, npc, trade) + if + npcUtil.tradeHasExactly(trade, xi.item.CELADON_YGGRETE_SHARD_I) and + npcUtil.popFromQM(player, npc, ID.mob.UNFETTERED_TWITHERYM, { radius = 1 }) + then + player:confirmTrade() + end +end + +entity.onTrigger = function(player, npc) +end + +entity.onEventUpdate = function(player, csid, option, npc) +end + +entity.onEventFinish = function(player, csid, option, npc) +end + +return entity diff --git a/sql/mob_spawn_points.sql b/sql/mob_spawn_points.sql index ae6331a85fc..dd890c4a3c9 100644 --- a/sql/mob_spawn_points.sql +++ b/sql/mob_spawn_points.sql @@ -76079,11 +76079,11 @@ INSERT INTO `mob_spawn_points` VALUES (17846669,'Rapier_Hornet','Rapier Hornet', INSERT INTO `mob_spawn_points` VALUES (17846670,'Rapier_Hornet','Rapier Hornet',37,0.000,0.000,0.000,0); INSERT INTO `mob_spawn_points` VALUES (17846671,'Waggling_Wasp','Waggling Wasp',28,0.000,0.000,0.000,0); INSERT INTO `mob_spawn_points` VALUES (17846672,'Waggling_Wasp','Waggling Wasp',28,0.000,0.000,0.000,0); -INSERT INTO `mob_spawn_points` VALUES (17846673,'Unfettered_Twitherym','Unfettered Twitherym',38,210.000,-0.500,115.000,0); -INSERT INTO `mob_spawn_points` VALUES (17846674,'Supernal_Chapuli','Supernal Chapuli',39,276.940,-0.500,-129.240,115); -INSERT INTO `mob_spawn_points` VALUES (17846675,'Transcendent_Scorpion','Transcendent Scorpion',40,160.000,-0.500,-400.000,0); -INSERT INTO `mob_spawn_points` VALUES (17846676,'Mastop','Mastop',41,-230.000,-0.500,36.000,155); -INSERT INTO `mob_spawn_points` VALUES (17846677,'Taxet','Tax\'et',42,-280.000,-0.500,-290.000,233); +INSERT INTO `mob_spawn_points` VALUES (17846673,'Unfettered_Twitherym','Unfettered Twitherym',38,210.000,0.000,115.000,0); +INSERT INTO `mob_spawn_points` VALUES (17846674,'Supernal_Chapuli','Supernal Chapuli',39,276.940,0.000,-129.240,115); +INSERT INTO `mob_spawn_points` VALUES (17846675,'Transcendent_Scorpion','Transcendent Scorpion',40,160.000,0.000,-400.000,0); +INSERT INTO `mob_spawn_points` VALUES (17846676,'Mastop','Mastop',41,-230.000,0.000,36.000,155); +INSERT INTO `mob_spawn_points` VALUES (17846677,'Taxet','Tax\'et',42,-280.000,0.000,-290.000,233); -- ------------------------------------------------------------ -- Foret de Hennetiel (Zone 262) diff --git a/sql/npc_list.sql b/sql/npc_list.sql index 036da235a6d..3b5c5f8ab4e 100644 --- a/sql/npc_list.sql +++ b/sql/npc_list.sql @@ -34197,11 +34197,11 @@ INSERT INTO `npc_list` VALUES (17846817,'blank','',0,-450.000,0.001,275.082,1,40 -- NC: INSERT INTO `npc_list` VALUES (17846827,'NOT_CAPTURED','Veil',0,0.000,0.000,0.000,0,50,50,0,0,0,0,0,0x0000320000000000000000000000000000000000,0,NULL,0); INSERT INTO `npc_list` VALUES (17846828,'Veil','Veil',0,-80.000,0.001,-38.000,1,40,40,0,0,0,0,3,0x0000340000000000000000000000000000000000,32,'SOA',1); INSERT INTO `npc_list` VALUES (17846829,'qm','???',0,0.000,0.000,0.000,1,40,40,0,0,0,2,2051,0x0000340000000000000000000000000000000000,32,'SOA',0); -INSERT INTO `npc_list` VALUES (17846830,'qm','???',0,210.000,0.001,115.000,1,40,40,0,0,0,0,3,0x0000340000000000000000000000000000000000,32,'SOA',0); -INSERT INTO `npc_list` VALUES (17846831,'qm','???',0,278.000,0.000,-129.000,1,40,40,0,0,0,0,3,0x0000340000000000000000000000000000000000,32,'SOA',0); -INSERT INTO `npc_list` VALUES (17846832,'qm','???',0,160.000,0.001,-400.000,1,40,40,0,0,0,0,3,0x0000340000000000000000000000000000000000,32,'SOA',0); -INSERT INTO `npc_list` VALUES (17846833,'qm','???',0,-230.000,-0.004,36.000,1,40,40,0,0,0,0,3,0x0000340000000000000000000000000000000000,32,'SOA',0); -INSERT INTO `npc_list` VALUES (17846834,'blank','',0,-280.000,0.001,-290.000,1,40,40,0,0,0,0,3,0x0000340000000000000000000000000000000000,32,'SOA',1); +INSERT INTO `npc_list` VALUES (17846830,'qm_unfettered','???',0,210.000,0.000,115.000,1,40,40,0,0,0,0,3,0x0000340000000000000000000000000000000000,32,'SOA',0); +INSERT INTO `npc_list` VALUES (17846831,'qm_supernal','???',0,278.000,0.000,-129.000,1,40,40,0,0,0,0,3,0x0000340000000000000000000000000000000000,32,'SOA',0); +INSERT INTO `npc_list` VALUES (17846832,'qm_transcendent_s','???',0,160.000,0.000,-400.000,1,40,40,0,0,0,0,3,0x0000340000000000000000000000000000000000,32,'SOA',0); +INSERT INTO `npc_list` VALUES (17846833,'qm_mastop','???',0,-230.000,0.000,36.000,1,40,40,0,0,0,0,3,0x0000340000000000000000000000000000000000,32,'SOA',0); +INSERT INTO `npc_list` VALUES (17846834,'qm_taxet','???',0,-280.000,0.000,-290.000,1,40,40,0,0,0,0,3,0x0000340000000000000000000000000000000000,32,'SOA',1); INSERT INTO `npc_list` VALUES (17846835,'Station_Administrator','Station Administrator',0,364.500,0.513,188.000,8,40,40,0,0,0,0,3,0x01000508181031200030AB406350006000700000,32,'SOA',1); INSERT INTO `npc_list` VALUES (17846836,'Bivouac#1_Administrator','Bivouac#1 Administrator',64,2.000,-0.499,-110.000,19,40,40,0,0,0,0,3,0x01000701181031200030AB406350006000700000,32,'SOA',1); INSERT INTO `npc_list` VALUES (17846837,'Bivouac#2_Administrator','Bivouac#2 Administrator',0,-32.000,-0.001,156.000,26,40,40,0,0,0,0,3,0x01000307181031200030AB406350006000700000,32,'SOA',1);