getting current with takp quests.

This commit is contained in:
regneq 2023-10-25 20:10:43 -07:00
parent 774e5b7dbc
commit e0bd38f754
44 changed files with 798 additions and 205 deletions

View file

@ -1,7 +1,7 @@
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("Greetings! Welcome to the Library of Mechanimagica. You must be a [current member of the Library] or has my [mind begun to slip]?");
elseif(e.message:findi("slipping")) then
elseif(e.message:findi("slip")) then
if(e.other:GetFactionValue(e.self) >= 100) then -- Needs amiably or better
e.self:Say("What!!? That was but a joke. I try to make you feel comfortable with a little levity and you proclaim my mind has gone the way of Meldrath's. Well.. enough frivolity. You will do your part to help in the menial tasks of the Collective. Do you want the [clean tasks] or the [dirty tasks]?");
elseif(e.other:GetFaction(e.self) == 5) then

View file

@ -3,6 +3,7 @@
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("Hail " .. e.other:GetCleanName() .. ". I train those young gnomes who wish to [serve as a warrior] in the service of the Dark Reflection and our patron. Bertoxxulous the Plaguelord. Decay and destruction are powerful forces that influence Norrath. It is the duty of the Warriors of the Dark Reflection to bring destruction to the weak and injury to the strong so that our fellow gnomes may be reminded of their own mortality and new strong individuals may rise to power before Bertoxxulous decides it is their time to decay and be replaced like countless before them.");
e.self:DoAnim(67);
elseif(e.message:findi("serve as a warrior")) then
e.self:Say("Ours is the duty of a martyr. to be the hated and feared hand of destruction and catalyst of change. All roads are paved with destruction and in turn are eventually destroyed. All machines are built from the rubble of broken mountains and in turn become rust and bits of metal. You must outfit yourself with the tools of a warrior. crafted from the destruction of archaic clockworks that have long since finished serving the purpose for which they were built. Take this parchment to Windlebeck Tobokog. he will assist you in the construction of a suit of armor. When you have been properly outfitted return to me for [further instruction].");
e.other:SummonCursorItem(10986); -- Item: Parchment to Windlebeck
@ -23,7 +24,7 @@ function event_trade(e)
e.other:Faction(e.self,240,-1,0); -- Deepmuses
e.other:QuestReward(e.self,0,0,0,0,10995,100); -- Dull Dark Reflection Axe
elseif (item_lib.check_turn_in(e.self, e.trade, {item1 = 18759})) then -- Stained Parchment
e.self:Say("This is fabulous news!! You have done well, young one. Here, then, is your reward for a job well done.");
e.self:Say("This is fabulous news!! You have done well, young one. Once you are ready for [further instruction] please let me know, I will guide you through your early and most dangerous days. When you have become more experienced in our art, I will be able to further instruct you on how to progress through your early ranks.");
e.other:Faction(e.self,238,100,0); -- Dark reflection
e.other:Faction(e.self,245,-10,0); -- eldritch collective
e.other:Faction(e.self,255,-10,0); -- gem choppers

View file

@ -0,0 +1,33 @@
function event_spawn(e)
eq.set_timer("ww",3600000);
end
function event_timer(e)
eq.unique_spawn(68340,0,0,1376,2943,53.5,110); -- NPC: Giant Werewolf -- Halloween Event
eq.zone_emote(15,"a loud roar is heard in the distance, everything goes eerily silent...");
eq.set_sky(5);
end
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("Beware, traveller!! There has been increased sightings of lycanthropes in this area. This time of year, the sky glows flame-orange and the [beasts] become more active.");
elseif(e.message:findi("beast")) then
e.self:Say("They are known to attack almost anything they see, I've even heard [reports] of a single werewolf wiping out an entire bandit camp!");
elseif(e.message:findi("report")) then
e.self:Say("I am a scout sent by the renowned werewolf hunting clan known as The Fangbreakers. We're testing a new [poison] that contains strong acids that severely weakens and kills werewolves.");
elseif(e.message:findi("poison")) then
e.self:Say("I tracked down a fearsome one on my way here and shot it with a poison-tipped arrow. Because of the size of the beast, I'm afraid it wasn't enough to kill it. It [escaped].");
elseif(e.message:findi("escape")) then
e.self:Say("If you see it lumbering around, please approach with caution! If it has already died, return to me with a blood sample so that we may analyze it to improve our concoction. I will also use the blood to imbue one of our staves that you can keep as a reward.");
end
end
function event_trade(e)
local item_lib =require("items");
if(item_lib.check_turn_in(e.self, e.trade, {item1 = 2646})) then -- Arterial Blood
e.self:Emote("holds up a staff and applies the blood to the top of the weapon, turning it dark red. 'Thank you! I hope it wasn't too much trouble to finish off. This weapon should prove most effective against other lycanthropes and magical creatures that you may run across. Good luck!");
e.other:QuestReward(e.self,0,0,0,0,6048,0); -- Item: Darkwood Staff
end
item_lib.return_items(e.self, e.other, e.trade)
end

View file

@ -16,7 +16,7 @@ function event_trade(e)
local item_lib = require("items");
local milk = item_lib.count_handed_item(e.self, e.trade, {13087});
if(e.self:GetX() == 2770 and e.self:GetY() == -306 and milk > 0) then
if(not e.self:IsMoving() and milk > 0) then
repeat
e.self:Say("Aaahhhh. Now that is refreshing. Just let me rest for a bit. The note is safe and sound in my bedroll inside the inn.");
e.other:Faction(e.self,281,1); -- Faction: Knights of Truth

View file

@ -1,3 +1,11 @@
function event_spawn(e)
eq.set_timer("ww",3600000);
end
function event_timer(e)
eq.set_sky(5);
end
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("He.. Hello. Wou.. would you like to buy something? Be quick or [Kizdean] will return!");

View file

@ -1,3 +1,11 @@
function event_spawn(e)
eq.set_timer("ww",3600000);
end
function event_timer(e)
eq.set_sky(5);
end
function event_say(e)
if(e.message:findi("hai")) then
e.self:Say(string.format("Hello, %s, I am Felodious Sworddancer. A travelling historian and storyteller. Would you care to hear a [story]?",e.other:GetName()));

View file

@ -0,0 +1,33 @@
function event_spawn(e)
eq.set_timer("ww",3600000);
end
function event_timer(e)
eq.unique_spawn(22209,0,0,3827,-428,-53.5,225); -- NPC: Giant Werewolf -- Halloween Event
eq.zone_emote(15,"a loud roar is heard in the distance, everything goes eerily silent...");
eq.set_sky(5);
end
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("Beware, traveller!! There has been increased sightings of lycanthropes in this area. This time of year, the sky glows flame-orange and the [beasts] become more active.");
elseif(e.message:findi("beast")) then
e.self:Say("They are known to attack almost anything they see, I've even heard [reports] of a single werewolf wiping out an entire bandit camp!");
elseif(e.message:findi("report")) then
e.self:Say("I am a scout sent by the renowned werewolf hunting clan known as The Fangbreakers. We're testing a new [poison] that contains strong acids that severely weakens and kills werewolves.");
elseif(e.message:findi("poison")) then
e.self:Say("I tracked down a fearsome one on my way here and shot it with a poison-tipped arrow. Because of the size of the beast, I'm afraid it wasn't enough to kill it. It [escaped].");
elseif(e.message:findi("escape")) then
e.self:Say("If you see it lumbering around, please approach with caution! If it has already died, return to me with a blood sample so that we may analyze it to improve our concoction. I will also use the blood to imbue one of our staves that you can keep as a reward.");
end
end
function event_trade(e)
local item_lib =require("items");
if(item_lib.check_turn_in(e.self, e.trade, {item1 = 2646})) then -- Arterial Blood
e.self:Emote("holds up a staff and applies the blood to the top of the weapon, turning it dark red. 'Thank you! I hope it wasn't too much trouble to finish off. This weapon should prove most effective against other lycanthropes and magical creatures that you may run across. Good luck!");
e.other:QuestReward(e.self,0,0,0,0,6048,0); -- Item: Darkwood Staff
end
item_lib.return_items(e.self, e.other, e.trade)
end

View file

@ -0,0 +1,32 @@
function event_spawn(e)
eq.set_timer("ww",3600000);
end
function event_timer(e)
eq.unique_spawn(30244,0,0,1012,-289,-62,244); -- NPC: Giant Werewolf -- Halloween Event
eq.zone_emote(15,"a loud roar is heard in the distance, everything goes eerily silent...");
end
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("Beware, traveller!! There has been increased sightings of lycanthropes in this area. This time of year, the sky glows flame-orange and the [beasts] become more active.");
elseif(e.message:findi("beast")) then
e.self:Say("They are known to attack almost anything they see, I've even heard [reports] of a single werewolf wiping out an entire bandit camp!");
elseif(e.message:findi("report")) then
e.self:Say("I am a scout sent by the renowned werewolf hunting clan known as The Fangbreakers. We're testing a new [poison] that contains strong acids that severely weakens and kills werewolves.");
elseif(e.message:findi("poison")) then
e.self:Say("I tracked down a fearsome one on my way here and shot it with a poison-tipped arrow. Because of the size of the beast, I'm afraid it wasn't enough to kill it. It [escaped].");
elseif(e.message:findi("escape")) then
e.self:Say("If you see it lumbering around, please approach with caution! If it has already died, return to me with a blood sample so that we may analyze it to improve our concoction. I will also use the blood to imbue one of our staves that you can keep as a reward.");
end
end
function event_trade(e)
local item_lib =require("items");
if(item_lib.check_turn_in(e.self, e.trade, {item1 = 2646})) then -- Arterial Blood
e.self:Emote("holds up a staff and applies the blood to the top of the weapon, turning it dark red. 'Thank you! I hope it wasn't too much trouble to finish off. This weapon should prove most effective against other lycanthropes and magical creatures that you may run across. Good luck!");
e.other:QuestReward(e.self,0,0,0,0,6048,0); -- Item: Darkwood Staff
end
item_lib.return_items(e.self, e.other, e.trade)
end

View file

@ -0,0 +1,32 @@
function event_spawn(e)
eq.set_timer("ww",3600000);
end
function event_timer(e)
eq.unique_spawn(47353,0,0,-1553,1199,-24.2,174); -- NPC: Giant Werewolf -- Halloween Event
eq.zone_emote(15,"a loud roar is heard in the distance, everything goes eerily silent...");
end
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("Beware, traveller!! There has been increased sightings of lycanthropes in this area. This time of year, the sky glows flame-orange and the [beasts] become more active.");
elseif(e.message:findi("beast")) then
e.self:Say("They are known to attack almost anything they see, I've even heard [reports] of a single werewolf wiping out an entire bandit camp!");
elseif(e.message:findi("report")) then
e.self:Say("I am a scout sent by the renowned werewolf hunting clan known as The Fangbreakers. We're testing a new [poison] that contains strong acids that severely weakens and kills werewolves.");
elseif(e.message:findi("poison")) then
e.self:Say("I tracked down a fearsome one on my way here and shot it with a poison-tipped arrow. Because of the size of the beast, I'm afraid it wasn't enough to kill it. It [escaped].");
elseif(e.message:findi("escape")) then
e.self:Say("If you see it lumbering around, please approach with caution! If it has already died, return to me with a blood sample so that we may analyze it to improve our concoction. I will also use the blood to imbue one of our staves that you can keep as a reward.");
end
end
function event_trade(e)
local item_lib =require("items");
if(item_lib.check_turn_in(e.self, e.trade, {item1 = 2646})) then -- Arterial Blood
e.self:Emote("holds up a staff and applies the blood to the top of the weapon, turning it dark red. 'Thank you! I hope it wasn't too much trouble to finish off. This weapon should prove most effective against other lycanthropes and magical creatures that you may run across. Good luck!");
e.other:QuestReward(e.self,0,0,0,0,6048,0); -- Item: Darkwood Staff
end
item_lib.return_items(e.self, e.other, e.trade)
end

View file

@ -1,6 +1,6 @@
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("Welcome to Gord's Smithy! What brings you to our shop this good day? Is it our lavish assortment of weapons? Or perhaps it is to learn the art of the [seafarers' buckler] and [seafarers' weapons]?");
e.self:Say("Welcome to Gord's Smithy!! What brings you to our shop this good day? Is it our lavish assortment of weapons? Or perhaps it is to learn the art of the [seafarers' buckler] and [seafarers' weapons]?");
e.self:DoAnim(49);
elseif(e.message:findi("buckler")) then
e.self:Say("Seafarers' bucklers are light shields, perfect for sailors, pirates, and anyone who frequently spends time on the seas. The bucklers can only be crafted in the unique forge here in Freeport. If you're interested in attempting a seafarers' buckler, you will need a buckler mold, a flask of water, a smithy hammer, and a high quality sheet of metal.");

View file

@ -17,14 +17,12 @@ function event_trade(e)
e.other:Faction(e.self,281,-15,0); -- Knights of Truth
e.other:Faction(e.self,296,20,0); -- Opal Dark Briar
e.other:QuestReward(e.self,0,0,0,0,13561,20); -- Faded Crimson Tunic
elseif(item_lib.check_turn_in(e.self, e.trade, {item1 = 18825})) then -- Bayle List
if(e.other:GetFactionValue(e.self) >= 250) then
e.self:Say("You have proven yourself truly evil. Your hatred shall shine from this day forth. Innoruuk commands that I reward you with this. It is called Rage and it serves the powers of hate. Use it to smite the forces of good. Hail Innoruuk!");
e.other:Faction(e.self,271,100,0); -- Dismal Rage
e.other:Faction(e.self,281,-15,0); -- Knights of Truth
e.other:Faction(e.self,296,20,0); -- Opal Dark Briar
e.other:QuestReward(e.self,0,0,0,0,12153,100); -- Rage War Maul
end
elseif(e.other:GetFactionValue(e.self) >= 250 and item_lib.check_turn_in(e.self, e.trade, {item1 = 18825})) then -- Bayle List
e.self:Say("You have proven yourself truly evil. Your hatred shall shine from this day forth. Innoruuk commands that I reward you with this. It is called Rage and it serves the powers of hate. Use it to smite the forces of good. Hail Innoruuk!");
e.other:Faction(e.self,271,100,0); -- Dismal Rage
e.other:Faction(e.self,281,-15,0); -- Knights of Truth
e.other:Faction(e.self,296,20,0); -- Opal Dark Briar
e.other:QuestReward(e.self,0,0,0,0,12153,100); -- Rage War Maul
end
item_lib.return_items(e.self, e.other, e.trade);
end

View file

@ -1,10 +1,8 @@
function event_say(e)
local fac = e.other:GetFaction(e.self);
if(e.message:findi("hail")) then
e.self:Say("Greetings! Please look through my fine wares. I have spent most of my life practicing my skills in tailoring. I do my best to compete with the other local merchants, but I have yet to make a profit. I pray to Tunare that my [banded orc vests] will finally bring me a few extra coins.");
elseif(e.message:findi("Banded Orc Vests")) then
if(fac < 6) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("Glad you are interested. I can create a leather vest I call a banded orc vest. It will aid you in repelling any disease and offers quite a bit of protection in battle. I will need some materials. For a Deathfist banded orc vest, I require two legionnaire pads worn by the clan Deathfist, one Deathfist slashed belt, and ten gold coins. For a Crushbone banded orc vest, I require two legionnaire pads worn by the Clan Crushbone, one Crushbone belt, and one silk swatch.");
else
e.self:Say("Your ways are considered vile to Faydark's Champions. Leave before my rage overcomes my restraint.");
@ -15,14 +13,14 @@ end
function event_trade(e)
local item_lib = require("items");
if(item_lib.check_turn_in(e.self, e.trade, {item1 = 13917,item2 = 13917,item3 = 13916,item4 = 13916,gold = 10})) then -- 2x Deathfist Shoulderpads, 2x Deathfist Slashed Belt, 10 gold
if(e.other:GetFactionValue(e.self) >= 0 and item_lib.check_turn_in(e.self, e.trade, {item1 = 13917,item2 = 13917,item3 = 13916,gold = 10})) then -- 2x Deathfist Shoulderpads, 1x Deathfist Slashed Belt, 10 gold
e.self:Say("Grand doing business with you. Hold your nose. I can never get rid of the Orc stench of the vests. That is why the other merchants do not pay me much for them.");
e.other:Faction(e.self,276,5,0); -- Kelethin Merchants
e.other:Faction(e.self,246,1,0); -- Faydark's Champions
e.other:Faction(e.self,326,1,0); -- Emerald Warriors
e.other:Faction(e.self,5002,1,0); -- Anti-mage Faction
e.other:QuestReward(e.self,0,0,0,0,12187,150); -- Banded Orc Vest
elseif(item_lib.check_turn_in(e.self, e.trade, {item1 = 13319,item2 = 13319,item3 = 13318,item4 = 16482})) then -- 2x Crushbone Shoulderpads, 1x Crushbone Belt, 1x silk swatch
elseif(e.other:GetFactionValue(e.self) >= 0 and item_lib.check_turn_in(e.self, e.trade, {item1 = 13319,item2 = 13319,item3 = 13318,item4 = 16482})) then -- 2x Crushbone Shoulderpads, 1x Crushbone Belt, 1x silk swatch
e.self:Say("Grand doing business with you. Hold your nose. I can never get rid of the Orc stench of the vests. That is why the other merchants do not pay me much for them.");
e.other:Faction(e.self,276,5,0); -- Kelethin Merchants
e.other:Faction(e.self,246,1,0); -- Faydark's Champions

View file

@ -8,17 +8,35 @@ function event_say(e)
elseif(e.message:findi("orc saboteurs")) then
if(e.other:GetFactionValue(e.self) >= 100) then
e.self:Say("As others move to battle the orc armies. we have word that the orc pawns have been sent into the woods to damage the great trees which support Kelethin. We shall employ the talents of our young rangers to halt their efforts. I currently seek those who will [hunt the orc pawns].");
elseif(e.other:GetFaction(e.self) == 5) then
elseif(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("Faydark's Champions cannot call you foe. but you have yet to earn our trust.");
else
e.self:Say("Your ways are considered vile to Faydark's Champions. Leave before my rage overcomes my restraint.");
end
elseif(e.message:findi("hunt.* orc pawn")) then
if(e.other:GetFactionValue(e.self) >= 100) then
e.self:Say("Go to the forest floor and seek out the orc pawns. Within their ranks can sometimes be found orc hatchetmen. They carry orc hatchets which you must return and I shall reward you for every two orc hatchets and perhaps offer you a weapon in return. should we have any to spare at the time.");
elseif(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("Faydark's Champions cannot call you foe. but you have yet to earn our trust.");
else
e.self:Say("Your ways are considered vile to Faydark's Champions. Leave before my rage overcomes my restraint.");
end
elseif(e.message:findi("crushbone allies") or e.message:findi("crushbone ally")) then
if(e.other:GetFactionValue(e.self) >= 100) then
e.self:Say("It seems the orcs have allied themselves with the wicked Teir'Dal. We know of this through reports of a Teir'Dal presence within Crushbone. We must [intercept the Crushbone runners] and find a reason for their union.");
elseif(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("Faydark's Champions cannot call you foe. but you have yet to earn our trust.");
else
e.self:Say("Your ways are considered vile to Faydark's Champions. Leave before my rage overcomes my restraint.");
end
elseif(e.message:findi("intercept.* crushbone runner")) then
if(e.other:GetFactionValue(e.self) >= 100) then
e.self:Say("Go to the Butcherblocks. You stand a greater chance of finding the runners there. I shall pay a bounty for all returned runner pouches.");
elseif(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("Faydark's Champions cannot call you foe. but you have yet to earn our trust.");
else
e.self:Say("Your ways are considered vile to Faydark's Champions. Leave before my rage overcomes my restraint.");
end
elseif(e.message:findi("hunt the orc pawns")) then
e.self:Say("Go to the forest floor and seek out the orc pawns. Within their ranks can sometimes be found orc hatchetmen. They carry orc hatchets which you must return and I shall reward you for every two orc hatchets and perhaps offer you a weapon in return. should we have any to spare at the time.");
elseif(e.message:findi("crushbone allies")) then
e.self:Say("It seems the orcs have allied themselves with the wicked Teir'Dal. We know of this through reports of a Teir'Dal presence within Crushbone. We must [intercept the Crushbone runners] and find a reason for their union.");
elseif(e.message:findi("intercept the crushbone runners")) then
e.self:Say("Go to the Butcherblocks. You stand a greater chance of finding the runners there. I shall pay a bounty for all returned runner pouches.");
end
end

View file

@ -0,0 +1,32 @@
function event_spawn(e)
eq.set_timer("ww",3600000);
end
function event_timer(e)
eq.unique_spawn(54388,0,0,-2188,2351,30,82); -- NPC: Giant Werewolf -- Halloween Event
eq.zone_emote(15,"a loud roar is heard in the distance, everything goes eerily silent...");
end
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("Beware, traveller!! There has been increased sightings of lycanthropes in this area. This time of year, the sky glows flame-orange and the [beasts] become more active.");
elseif(e.message:findi("beast")) then
e.self:Say("They are known to attack almost anything they see, I've even heard [reports] of a single werewolf wiping out an entire bandit camp!");
elseif(e.message:findi("report")) then
e.self:Say("I am a scout sent by the renowned werewolf hunting clan known as The Fangbreakers. We're testing a new [poison] that contains strong acids that severely weakens and kills werewolves.");
elseif(e.message:findi("poison")) then
e.self:Say("I tracked down a fearsome one on my way here and shot it with a poison-tipped arrow. Because of the size of the beast, I'm afraid it wasn't enough to kill it. It [escaped].");
elseif(e.message:findi("escape")) then
e.self:Say("If you see it lumbering around, please approach with caution! If it has already died, return to me with a blood sample so that we may analyze it to improve our concoction. I will also use the blood to imbue one of our staves that you can keep as a reward.");
end
end
function event_trade(e)
local item_lib =require("items");
if(item_lib.check_turn_in(e.self, e.trade, {item1 = 2646})) then -- Arterial Blood
e.self:Emote("holds up a staff and applies the blood to the top of the weapon, turning it dark red. 'Thank you! I hope it wasn't too much trouble to finish off. This weapon should prove most effective against other lycanthropes and magical creatures that you may run across. Good luck!");
e.other:QuestReward(e.self,0,0,0,0,6048,0); -- Item: Darkwood Staff
end
item_lib.return_items(e.self, e.other, e.trade)
end

View file

@ -1,16 +1,16 @@
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("Hail, young adventurer! I'm the chief overseer o' the Shamans o' Justice. We serve the will o' the Tribunal. Justice is our way. Within Halas, there are none who are above the scales o' justice. There are still some who have defied our laws. We wish to [apprehend the fugitives].");
elseif(e.message:findi("apprehend the fugitives") or e.message:findi("young shaman") or e.message:findi("standin' member of the court")) then -- requires amiable
if(e.other:GetFaction(e.self) < 5) then -- requires amiably
elseif(e.message:findi("apprehend the fugitives") or e.message:findi("young shaman") or e.message:findi("member of the court")) then -- requires amiable
if(e.other:GetFactionValue(e.self) >= 100) then -- requires amiably
if(e.message:findi("apprehend the fugitives")) then
e.self:Say("Maybe so, however, there are some who may be too much fer ye to handle. I'll need to know if ye're a [young shaman] or a [standin' member of the court].");
elseif(e.message:findi("young shaman")) then
e.self:Say("We seek a former member who dared to curse the righteousness of the Tribunal. We'll have his head for that remark. His name is Granin O'Gill and he has run to the wastelands of Everfrost seeking safe haven. Find him. Return his head to me. Do so, and earn the ninth circle spell, Spirit o' the Bear. Go at once!");
elseif(e.message:findi("standin' member of the court")) then
elseif(e.message:findi("member of the court")) then
e.self:Say("At the moment, I've no word o' heretics about for ye to hunt down. I pray that there will be no more, too!");
end
elseif(e.other:GetFaction(e.self) == 5) then
elseif(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("Ye're no criminal to the Shamans o' Justice, but ye've yet to prrove yer devotion to justice.");
else
e.self:Say("The scales o' the Shamans o' Justice dinnae tip in yer favor. Ye'd best flee while ye still have the chance.");
@ -20,44 +20,15 @@ end
function event_trade(e)
local item_lib = require("items");
if(e.other:GetFaction(e.self) < 5 and item_lib.check_turn_in(e.self, e.trade, {item1 = 13729})) then --Barbarian Head
local spelltext = "";
-- : Drowsy : Frost Rift : Sicken : Fleting Fury : Spirit of Bear : Cure Blindness : Spirit Sight : In that order
local spellreward = eq.ChooseRandom(15270,15275,15075,15271,15279,15212,15079);
local dialog0;
local dialog1 = "Drowsy ";
local dialog2 = "Frost Rift";
local dialog3 = "Sicken";
local dialog4 = "Fleeting Fury";
local dialog5 = "Spirit o' the Bear"; --check dialog with alla or live
local dialog6 = "Cure Blindness";
local dialog7 = "Spirit Sight";
if(spellreward == 15270) then
dialog0 = dialog1;
elseif(spellreward == 15275) then
dialog0 = dialog2;
elseif(spellreward == 15075) then
dialog0 = dialog3;
elseif(spellreward == 15271) then
dialog0 = dialog4;
elseif(spellreward == 15279) then
dialog0 = dialog5;
elseif(spellreward == 15212) then
dialog0 = dialog6;
elseif(spellreward == 15079) then
dialog0 = dialog7;
end
spelltext = "Take and remember this spell, " .. dialog0 .. ", I hope ye've attained the necessary skills to scribe it. If not, I'm sure ye soon will. Go now, and serve justice.";
e.self:Say("We can now rest assured that justice has been served. Ye'll be a valuable asset to our court. " .. spelltext .. "");
if(e.other:GetFactionValue(e.self) >= 100 and item_lib.check_turn_in(e.self, e.trade, {item1 = 13729})) then --Barbarian Head
e.self:Say("We can now rest assured that justice has been served. Ye'll be a valuable asset to our court. Take and remember this spell, Spirit o' the Bear. I hope ye've attained the necessary skills to scribe it. If not, I'm sure ye soon will. Go now, and serve justice.");
-- Confirmed Live Factions
e.other:Faction(e.self,327, 20); -- Shamen of Justice
e.other:Faction(e.self,328, 3); -- Merchants of Halas
e.other:Faction(e.self,223, -3); -- Circle of Unseen Hands
e.other:Faction(e.self,336, -3); -- Coalition of Tradefolk Underground
e.other:Faction(e.self,244, -4); -- Ebon Mask
e.other:QuestReward(e.self,math.random(0,10),math.random(0,10),math.random(0,5),0,spellreward,1600);
e.other:QuestReward(e.self,0,0,math.random(5,10),0,15279,1000); -- Spell: Spirit of Bear
elseif(item_lib.check_turn_in(e.self, e.trade, {item1 = 18761})) then
e.self:Say("Welcome t' the Church o' the Tribunal. Here, we practice the will o' the Six Hammers. This is our guild tunic - wear it with pride and represent us well.");
e.other:Faction(e.self,327, 100); -- Shamen of Justice

View file

@ -1,46 +1,54 @@
function event_say(e)
if(e.other:GetFactionValue(e.self) >= -350) then
if(e.message:findi("hail")) then
if(e.message:findi("hail")) then
if(e.other:GetFactionValue(e.self) >= -350) then
e.self:Say("I'm Captain Bosec. and I am the officer in charge down here. It's my job to patrol the prison and try to keep any [goblins] from getting into Highpass.");
elseif(e.message:findi("goblin")) then
e.self:Say("Help us exterminate these vile creatures. They call themselves the [Pickclaw] Clan.. I call them annoying. I will gladly pay big money for the left ear of every goblin slain.");
elseif(e.message:findi("pickclaw")) then
e.self:Say("A couple of months ago, Carson decided to add some more floors beneath the keep. During the construction, we came across these tunnels.. and these goblins. Work has been temporarily halted until we can completely clear out this Pickclaw infestation.");
elseif(e.message:findi("who.* mistress anna")) then
e.self:Say("Mistress! Aptly named, that one. You are speaking of the Highpass hussy. That is what everyone calls her, at least behind her back, that is. Just as Highpass, she is beautiful and frequently traveled. I have heard rumors that Carson has been seeing her, but how can that be true? He has Lady McCabe. What else does he need?");
elseif(e.message:findi("who.* carson")) then
e.self:Say("Carson McCabe is the ruler of Highpass Hold. It was his father, Sean McCabe, who established this great community.");
elseif(e.message:findi("who.* lady mccabe")) then
e.self:Say("A stunning lady if I ever saw one. There is truly a rose missing from the gardens of Erudin. Just look, but do not touch. She is the spouse of Carson McCabe himself. How even he won the heart of a lady as beautiful as that is an amazement to us all.");
elseif(e.message:findi("karana")) then
e.self:Say("If you are trying to get to Karana, you will need to leave Highpass from the western entrance.");
elseif(e.message:findi("prison") or e.message:findi("jail") or e.message:findi("dungeon")) then
e.self:Say("The dungeon is located on the lower levels of High Keep. Do not venture there. It is off limits to visitors. If you wish to get someone released, you will have to speak with the jail clerk just before you get to the dungeon.");
elseif(e.message:findi("sleep") or e.message:findi("inn")) then
e.self:Say("If you are looking for a comfortable bed to sleep on, speak to the innkeeper on the first level of the keep. The rooms are expensive, but other than that, your only choice would be to try and find an empty room at the Golden Rooster.");
elseif(e.message:findi("tavern") or e.message:findi("bar")) then
e.self:Say("There are a few places outside the keep which can supply an endless flow of grog. As for inside the keep, you may be able to buy a drink or two from the kitchen on the second floor.");
elseif(e.message:findi("freeport")) then
e.self:Say("If you plan on going to Freeport you will have to go through the Commonlands first.");
elseif(e.message:findi("bank") or e.message:findi("vault")) then
e.self:Say("Inside the keep, you can turn items in for safekeeping with the vault clerk who is on the lower level beyond the guestrooms. Do not wander too far down there.The dungeon is also in the same area.");
elseif(e.message:findi("tehafer")) then
e.self:Say("Commander Tehafer is a very noble man. It is rumored that he was once a paladin and has since fallen from grace. He now oversees all Highpass Watch operations. If you wish to speak with him, he can usually be found alongside the guards in High Keep entrance. Imagine that, a commander on watch alongside his men.");
elseif(e.message:findi("common")) then
e.self:Say("Exit Highpass from the eastern entrance. You will run right into the Commonlands. Just be careful in the Commonlands - I hear there has been an increase in orc activity.");
elseif(e.message:findi("guild")) then
e.self:Say("Guilds in Highpass!? I am afraid not. If you wish to join the ranks of the Highpass Watch, speak with one of our officers.");
elseif(e.message:findi("officer")) then
e.self:Say("The officers of the Highpass Watch are Captain Bosec of the High Keep Guard, Captain Ashlan of the East Gate Guard and finally Captain Orben of the West Gate Guard. Above them all is Commander Tehafer.");
elseif(e.message:findi("where.* carson")) then
e.self:Say("Carson McCabe resides in the royal chambers of High Keep. If you wish to meet with him, do so when he is on the lower levels of the keep. He does not like visitors in the upper levels.");
elseif(e.message:findi("where.* lady mccabe")) then
e.self:Say("I would assume that she would be in the royal chambers in the highest levels of High Keep.");
elseif(e.message:findi("where.* mistress anna")) then
e.self:Say("My best guess would be that she's somewhere in the suite of the richest noble passing through Highpass.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself."));
elseif(e.message:findi("goblin")) then
if(e.other:GetFactionValue(e.self) >= -350) then
e.self:Say("Help us exterminate these vile creatures. They call themselves the [Pickclaw] Clan.. I call them annoying. I will gladly pay big money for the left ear of every goblin slain.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("pickclaw")) then
if(e.other:GetFactionValue(e.self) >= -350) then
e.self:Say("A couple of months ago, Carson decided to add some more floors beneath the keep. During the construction, we came across these tunnels.. and these goblins. Work has been temporarily halted until we can completely clear out this Pickclaw infestation.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("who.* mistress anna")) then
e.self:Say("Mistress! Aptly named, that one. You are speaking of the Highpass hussy. That is what everyone calls her, at least behind her back, that is. Just as Highpass, she is beautiful and frequently traveled. I have heard rumors that Carson has been seeing her, but how can that be true? He has Lady McCabe. What else does he need?");
elseif(e.message:findi("who.* carson")) then
e.self:Say("Carson McCabe is the ruler of Highpass Hold. It was his father, Sean McCabe, who established this great community.");
elseif(e.message:findi("who.* lady mccabe")) then
e.self:Say("A stunning lady if I ever saw one. There is truly a rose missing from the gardens of Erudin. Just look, but do not touch. She is the spouse of Carson McCabe himself. How even he won the heart of a lady as beautiful as that is an amazement to us all.");
elseif(e.message:findi("karana")) then
e.self:Say("If you are trying to get to Karana, you will need to leave Highpass from the western entrance.");
elseif(e.message:findi("prison") or e.message:findi("jail") or e.message:findi("dungeon")) then
e.self:Say("The dungeon is located on the lower levels of High Keep. Do not venture there. It is off limits to visitors. If you wish to get someone released, you will have to speak with the jail clerk just before you get to the dungeon.");
elseif(e.message:findi("sleep") or e.message:findi("inn")) then
e.self:Say("If you are looking for a comfortable bed to sleep on, speak to the innkeeper on the first level of the keep. The rooms are expensive, but other than that, your only choice would be to try and find an empty room at the Golden Rooster.");
elseif(e.message:findi("tavern") or e.message:findi("bar")) then
e.self:Say("There are a few places outside the keep which can supply an endless flow of grog. As for inside the keep, you may be able to buy a drink or two from the kitchen on the second floor.");
elseif(e.message:findi("freeport")) then
e.self:Say("If you plan on going to Freeport you will have to go through the Commonlands first.");
elseif(e.message:findi("bank") or e.message:findi("vault")) then
e.self:Say("Inside the keep, you can turn items in for safekeeping with the vault clerk who is on the lower level beyond the guestrooms. Do not wander too far down there.The dungeon is also in the same area.");
elseif(e.message:findi("tehafer")) then
e.self:Say("Commander Tehafer is a very noble man. It is rumored that he was once a paladin and has since fallen from grace. He now oversees all Highpass Watch operations. If you wish to speak with him, he can usually be found alongside the guards in High Keep entrance. Imagine that, a commander on watch alongside his men.");
elseif(e.message:findi("common")) then
e.self:Say("Exit Highpass from the eastern entrance. You will run right into the Commonlands. Just be careful in the Commonlands - I hear there has been an increase in orc activity.");
elseif(e.message:findi("guild")) then
e.self:Say("Guilds in Highpass!? I am afraid not. If you wish to join the ranks of the Highpass Watch, speak with one of our officers.");
elseif(e.message:findi("officer")) then
e.self:Say("The officers of the Highpass Watch are Captain Bosec of the High Keep Guard, Captain Ashlan of the East Gate Guard and finally Captain Orben of the West Gate Guard. Above them all is Commander Tehafer.");
elseif(e.message:findi("where.* carson")) then
e.self:Say("Carson McCabe resides in the royal chambers of High Keep. If you wish to meet with him, do so when he is on the lower levels of the keep. He does not like visitors in the upper levels.");
elseif(e.message:findi("where.* lady mccabe")) then
e.self:Say("I would assume that she would be in the royal chambers in the highest levels of High Keep.");
elseif(e.message:findi("where.* mistress anna")) then
e.self:Say("My best guess would be that she's somewhere in the suite of the richest noble passing through Highpass.");
end
end

View file

@ -1,6 +1,6 @@
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("Hello. stranger. I would talk to thee. but [Barn] has instructed me not to converse with strangers.");
e.self:Say("Hello, stranger. I would talk to thee, but [Barn] has instructed me not to converse with strangers.");
elseif(e.message:findi("Barn")) then
e.self:Say("Barn is my hero. He saved me from a life on the evil streets in Freeport.");
end

View file

@ -0,0 +1,32 @@
function event_spawn(e)
eq.set_timer("ww",3600000);
end
function event_timer(e)
eq.unique_spawn(46221,0,0,1479,-2569,-23,89); -- NPC: Giant Werewolf -- Halloween Event
eq.zone_emote(15,"a loud roar is heard in the distance, everything goes eerily silent...");
end
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("Beware, traveller!! There has been increased sightings of lycanthropes in this area. This time of year, the sky glows flame-orange and the [beasts] become more active.");
elseif(e.message:findi("beast")) then
e.self:Say("They are known to attack almost anything they see, I've even heard [reports] of a single werewolf wiping out an entire bandit camp!");
elseif(e.message:findi("report")) then
e.self:Say("I am a scout sent by the renowned werewolf hunting clan known as The Fangbreakers. We're testing a new [poison] that contains strong acids that severely weakens and kills werewolves.");
elseif(e.message:findi("poison")) then
e.self:Say("I tracked down a fearsome one on my way here and shot it with a poison-tipped arrow. Because of the size of the beast, I'm afraid it wasn't enough to kill it. It [escaped].");
elseif(e.message:findi("escape")) then
e.self:Say("If you see it lumbering around, please approach with caution! If it has already died, return to me with a blood sample so that we may analyze it to improve our concoction. I will also use the blood to imbue one of our staves that you can keep as a reward.");
end
end
function event_trade(e)
local item_lib =require("items");
if(item_lib.check_turn_in(e.self, e.trade, {item1 = 2646})) then -- Arterial Blood
e.self:Emote("holds up a staff and applies the blood to the top of the weapon, turning it dark red. 'Thank you! I hope it wasn't too much trouble to finish off. This weapon should prove most effective against other lycanthropes and magical creatures that you may run across. Good luck!");
e.other:QuestReward(e.self,0,0,0,0,6048,0); -- Item: Darkwood Staff
end
item_lib.return_items(e.self, e.other, e.trade)
end

View file

@ -1,3 +1,15 @@
function event_spawn(e)
eq.set_timer("pick_up", 6000);
end
function event_timer(e)
if ( e.timer == "pick_up" ) then
while ( e.self:CheckGround() ) do
e.self:Emote("picks up something from the ground.");
end
end
end
function event_say(e)
if(e.message:findi("Stanos")) then
e.self:Say("Stanos? Stanos!! That dog, I WILL see him dead for what he cost me. Outcast I am, stripped of my position, my god has forsaken me, blaming ME for the loss of some tome. And you, " .. e.other:GetCleanName() .. ", you have aided him. For that, you will die first. Please, struggle and beg, I do so enjoy watching my victims squirm, and I have little joy left in my life now. If you want my favor, perhaps if you came bearing Stanos' head I would be more forgiving. But I doubt it.");

View file

@ -1,6 +1,6 @@
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("What. what?!! I am quite busy here. I have studies to complete and charts to make!");
e.self:Say("What, what?!! I am quite busy here. I have studies to complete and charts to make!");
elseif(e.message:findi("lens")) then
e.self:Say("Yes, of course. Here you are. Now be off.");
e.other:QuestReward(e.self,0,0,0,0,13275); --telescope lens [trudo's lens]

32
misty/Lorisyn_Oakwynd.lua Normal file
View file

@ -0,0 +1,32 @@
function event_spawn(e)
eq.set_timer("ww",3600000);
end
function event_timer(e)
eq.unique_spawn(33246,0,0,-806,1045,18.4,123); -- NPC: Giant Werewolf -- Halloween Event
eq.zone_emote(15,"a loud roar is heard in the distance, everything goes eerily silent...");
end
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("Beware, traveller!! There has been increased sightings of lycanthropes in this area. This time of year, the sky glows flame-orange and the [beasts] become more active.");
elseif(e.message:findi("beast")) then
e.self:Say("They are known to attack almost anything they see, I've even heard [reports] of a single werewolf wiping out an entire bandit camp!");
elseif(e.message:findi("report")) then
e.self:Say("I am a scout sent by the renowned werewolf hunting clan known as The Fangbreakers. We're testing a new [poison] that contains strong acids that severely weakens and kills werewolves.");
elseif(e.message:findi("poison")) then
e.self:Say("I tracked down a fearsome one on my way here and shot it with a poison-tipped arrow. Because of the size of the beast, I'm afraid it wasn't enough to kill it. It [escaped].");
elseif(e.message:findi("escape")) then
e.self:Say("If you see it lumbering around, please approach with caution! If it has already died, return to me with a blood sample so that we may analyze it to improve our concoction. I will also use the blood to imbue one of our staves that you can keep as a reward.");
end
end
function event_trade(e)
local item_lib =require("items");
if(item_lib.check_turn_in(e.self, e.trade, {item1 = 2646})) then -- Arterial Blood
e.self:Emote("holds up a staff and applies the blood to the top of the weapon, turning it dark red. 'Thank you! I hope it wasn't too much trouble to finish off. This weapon should prove most effective against other lycanthropes and magical creatures that you may run across. Good luck!");
e.other:QuestReward(e.self,0,0,0,0,6048,0); -- Item: Darkwood Staff
end
item_lib.return_items(e.self, e.other, e.trade)
end

View file

@ -1,33 +1,77 @@
--Quest Name: Necromancer Words - X`Ta Tempi
function event_say(e)
if(e.other:GetFactionValue(e.self) >= 0) then
if(e.message:findi("hail")) then
if(e.message:findi("hail")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("We three are the [Sisters Dark] - [Necromancy] is our Art - Bonded dead, they serve our will - No beat of heart, yet faithful still.");
elseif(e.message:findi("sisters dark")) then
e.self:Say("We three are the Sisters Dark - Keepers of the shadowed Dread - [Lore of Death]. we research now - Join with us and serve [the Dead].");
elseif(e.message:findi("lore of death")) then
e.self:Say("The Lore of Death is shadow bound - Its [words] are [hid]. yet shall be found - Through our research into the dark - Old hexes found and parchment marked.");
elseif(e.message:findi("the dead")) then
e.self:Say("The Dead are the shadowknights and necromancers of Neriak. They were formed by Queen Cristanos herself. Even among the Teir'Dal they are feared and they keep to themselves within the Lodge of the Dead in the Third Gate. I have heard they take orders only from the queen.");
elseif(e.message:findi("necromancy")) then
e.self:Say("Necromancy - Art of the Dead - Binding bones to serve your will - We research now the [Lore of Death] - Ancient spells with power still.");
elseif(e.message:findi("hid")) then
e.self:Say("The Words are hid in tomes of old - Their yielded lore worth more than gold - Though we search both 'fore and 'hind - [Components] we can not yet find.");
elseif(e.message:findi("components")) then
e.self:Say("We need components for research - These are things that you could find - In return for [tasks] that you perform - Words of [reward] we have in mind.");
elseif(e.message:findi("tasks") or e.message:findi("reward")) then
e.self:Say("Bring us components for our research - We give [Word]s by tasks performed - [Possession], [Detachment], [Allure], [Haunting], [Rupturing], [Dark Paths], [Suffering], [Collection], [Obligation], [Requisition] and [Acquisition].");
elseif(e.message:findi("words of possession")) then
e.self:Say("From the Estate of Unrest, bring barbed bone chips - From Castle Mistmoore, a dagger charred - From a merchant bring a stone of blood - Words of Possession will be your reward.");
elseif(e.message:findi("words of haunting")) then
e.self:Say("From the Estate of Unrest, bring dark bone chips - From Castle Mistmoore, a dagger ebon - From a merchant bring a jasper stone - Then Words of Haunting will to you be given.");
elseif(e.message:findi("words of collection")) then
e.self:Say("Two Words of Collection I possess - To obtain Beza to me you must bring - a globe of darkness, an Eye of Kor and an amber gem. To obtain Caza to me you must bring - an Eye of Guk, a globe of fear, and jade.");
elseif(e.message:findi("words of detachment") or e.message:findi("words of allure") or e.message:findi("words of rupturing") or e.message:findi("words of dark paths") or e.message:findi("words of suffering") or e.message:findi("words of obligation") or e.message:findi("words of requisition") or e.message:findi("words of acquisition")) then
e.self:Say("The answer to that question is held by another - Ask again of my sister...");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("sisters dark")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("We three are the Sisters Dark - Keepers of the shadowed Dread - [Lore of Death]. we research now - Join with us and serve [the Dead].");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("lore of death")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("The Lore of Death is shadow bound - Its [words] are [hid]. yet shall be found - Through our research into the dark - Old hexes found and parchment marked.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("the dead")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("The Dead are the shadowknights and necromancers of Neriak. They were formed by Queen Cristanos herself. Even among the Teir'Dal they are feared and they keep to themselves within the Lodge of the Dead in the Third Gate. I have heard they take orders only from the queen.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("necromancy")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("Necromancy - Art of the Dead - Binding bones to serve your will - We research now the [Lore of Death] - Ancient spells with power still.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("hid")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("The Words are hid in tomes of old - Their yielded lore worth more than gold - Though we search both 'fore and 'hind - [Components] we can not yet find.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("components")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("We need components for research - These are things that you could find - In return for [tasks] that you perform - Words of [reward] we have in mind.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("tasks") or e.message:findi("reward")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("Bring us components for our research - We give [Word]s by tasks performed - [Possession], [Detachment], [Allure], [Haunting], [Rupturing], [Dark Paths], [Suffering], [Collection], [Obligation], [Requisition] and [Acquisition].");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("words of possession")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("From the Estate of Unrest, bring barbed bone chips - From Castle Mistmoore, a dagger charred - From a merchant bring a stone of blood - Words of Possession will be your reward.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("words of haunting")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("From the Estate of Unrest, bring dark bone chips - From Castle Mistmoore, a dagger ebon - From a merchant bring a jasper stone - Then Words of Haunting will to you be given.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("words of collection")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("Two Words of Collection I possess - To obtain Beza to me you must bring - a globe of darkness, an Eye of Kor and an amber gem. To obtain Caza to me you must bring - an Eye of Guk, a globe of fear, and jade.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("words of detachment") or e.message:findi("words of allure") or e.message:findi("words of rupturing") or e.message:findi("words of dark paths") or e.message:findi("words of suffering") or e.message:findi("words of obligation") or e.message:findi("words of requisition") or e.message:findi("words of acquisition")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("The answer to that question is held by another - Ask again of my sister...");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
end
@ -35,8 +79,8 @@ function event_trade(e)
local item_lib = require("items");
--Words of Possession
--Requires: 1 Charred Dagger, 1 Bloodstone, 2 Barbed Bone Chips
if(e.other:GetFactionValue(e.self) >= 0 and item_lib.check_turn_in(e.self, e.trade, {item1 = 7036, item2 = 10019, item3 = 10516, item4 = 10516})) then
--Requires: 1 Charred Dagger, 1 Bloodstone, Barbed Bone Chips
if(e.other:GetFactionValue(e.self) >= 0 and item_lib.check_turn_in(e.self, e.trade, {item1 = 7036, item2 = 10019, item3 = 10516})) then
e.self:Say("You have quested well - With spell and sword - Accept our thanks - And this reward.");
e.other:Faction(e.self,239,10); -- The Dead
e.other:Faction(e.self,303,1); -- Queen Cristanos Thex
@ -46,8 +90,8 @@ function event_trade(e)
e.other:Faction(e.self,1522,-20); -- Primordial Malice
e.other:QuestReward(e.self,0,0,0,0,11815,62000); --Item: Words of Possession
--Words of Haunting
--Requires: 1 Ebon Dagger, 1 Jasper, 2 Dark Bone Chips
elseif(e.other:GetFactionValue(e.self) >= 0 and item_lib.check_turn_in(e.self, e.trade, {item1 = 7037, item2 = 10020, item3 = 10518, item4 = 10518})) then
--Requires: 1 Ebon Dagger, 1 Jasper, Dark Bone Chips
elseif(e.other:GetFactionValue(e.self) >= 0 and item_lib.check_turn_in(e.self, e.trade, {item1 = 7037, item2 = 10020, item3 = 10518})) then
e.self:Say("You have quested well - With spell and sword - Accept our thanks - And this reward.");
e.other:Faction(e.self,239,10); -- The Dead
e.other:Faction(e.self,303,1); -- Queen Cristanos Thex

View file

@ -1,35 +1,83 @@
--Quest Name: Necromancer Words - X`Ta Timpi
function event_say(e)
if(e.other:GetFactionValue(e.self) >= 0) then
if(e.message:findi("hail")) then
if(e.message:findi("hail")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("We three are the [Sisters Dark] - [Necromancy] is our Art - Bonded dead, they serve our will - No beat of heart, yet faithful still.");
elseif(e.message:findi("sisters dark")) then
e.self:Say("We three are the Sisters Dark - Keepers of the shadowed Dread - [Lore of Death]. we research now - Join with us and serve [the Dead].");
elseif(e.message:findi("lore of death")) then
e.self:Say("The Lore of Death is shadow bound - Its [words] are [hid]. yet shall be found - Through our research into the dark - Old hexes found and parchment marked.");
elseif(e.message:findi("the dead")) then
e.self:Say("The Dead are the shadowknights and necromancers of Neriak. They were formed by Queen Cristanos herself. Even among the Teir'Dal they are feared and they keep to themselves within the Lodge of the Dead in the Third Gate. I have heard they take orders only from the queen.");
elseif(e.message:findi("necromancy")) then
e.self:Say("Necromancy - Art of the Dead - Binding bones to serve your will - We research now the [Lore of Death] - Ancient spells with power still.");
elseif(e.message:findi("hid")) then
e.self:Say("The Words are hid in tomes of old - Their yielded lore worth more than gold - Though we search both 'fore and 'hind - [Components] we can not yet find.");
elseif(e.message:findi("components")) then
e.self:Say("We need components for research - These are things that you could find - In return for [tasks] that you perform - Words of [reward] we have in mind.");
elseif(e.message:findi("tasks") or e.message:findi("reward")) then
e.self:Say("Bring us components for our research - We give [Word]s by tasks performed - [Possession], [Detachment], [Allure], [Haunting], [Rupturing], [Dark Paths], [Suffering], [Collection], [Obligation], [Requisition] and [Acquisition].");
elseif(e.message:findi("words of detachment")) then
e.self:Say("From the Estate of Unrest, bring dull bone chips - From Castle Mistmoore, a dagger charred - From a merchant bring a stone of blood - Words of Detachment will be your reward.");
elseif(e.message:findi("words of rupturing")) then
e.self:Say("From the Estate of Unrest, bring a festering cloak - From Castle Mistmoore, ebon wands - From a merchant bring a jasper stone - Then Words of Rupturing will to you be given.");
elseif(e.message:findi("words of requisition")) then
e.self:Say("From the Plane of Fear, bring an Eye of Fright and a Stone of the Wraith - From a merchant bring a pearl - Then Words of Requisition will to you be given.");
elseif(e.message:findi("words of suffering")) then
e.self:Say("From Befallen, bring Iced Bone Chips - From spectres, bring a Globe of Fear - From a merchant bring a Star Rose Quartz - Then Words of Suffering will to you be given.");
elseif(e.message:findi("words of possession")or e.message:findi("words of allure") or e.message:findi("words of dark paths") or e.message:findi("words of haunting") or e.message:findi("words of obligation") or e.message:findi("words of collection") or e.message:findi("words of acquisition")) then
e.self:Say("The answer to that question is held by another - Ask again of my sister...");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("sisters dark")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("We three are the Sisters Dark - Keepers of the shadowed Dread - [Lore of Death]. we research now - Join with us and serve [the Dead].");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("lore of death")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("The Lore of Death is shadow bound - Its [words] are [hid]. yet shall be found - Through our research into the dark - Old hexes found and parchment marked.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("the dead")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("The Dead are the shadowknights and necromancers of Neriak. They were formed by Queen Cristanos herself. Even among the Teir'Dal they are feared and they keep to themselves within the Lodge of the Dead in the Third Gate. I have heard they take orders only from the queen.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("necromancy")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("Necromancy - Art of the Dead - Binding bones to serve your will - We research now the [Lore of Death] - Ancient spells with power still.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("hid")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("The Words are hid in tomes of old - Their yielded lore worth more than gold - Though we search both 'fore and 'hind - [Components] we can not yet find.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("components")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("We need components for research - These are things that you could find - In return for [tasks] that you perform - Words of [reward] we have in mind.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("tasks") or e.message:findi("reward")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("Bring us components for our research - We give [Word]s by tasks performed - [Possession], [Detachment], [Allure], [Haunting], [Rupturing], [Dark Paths], [Suffering], [Collection], [Obligation], [Requisition] and [Acquisition].");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("words of detachment")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("From the Estate of Unrest, bring dull bone chips - From Castle Mistmoore, a dagger charred - From a merchant bring a stone of blood - Words of Detachment will be your reward.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("words of rupturing")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("From the Estate of Unrest, bring a festering cloak - From Castle Mistmoore, ebon wands - From a merchant bring a jasper stone - Then Words of Rupturing will to you be given.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("words of requisition")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("From the Plane of Fear, bring an Eye of Fright and a Stone of the Wraith - From a merchant bring a pearl - Then Words of Requisition will to you be given.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("words of suffering")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("From Befallen, bring Iced Bone Chips - From spectres, bring a Globe of Fear - From a merchant bring a Star Rose Quartz - Then Words of Suffering will to you be given.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("words of possession")or e.message:findi("words of allure") or e.message:findi("words of dark paths") or e.message:findi("words of haunting") or e.message:findi("words of obligation") or e.message:findi("words of collection") or e.message:findi("words of acquisition")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("The answer to that question is held by another - Ask again of my sister...");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
end
@ -37,8 +85,8 @@ function event_trade(e)
local item_lib = require("items");
--Words of Detachment
--Requires: 1 Charred Dagger, 1 Bloodstone, 2 Dull Bone Chips
if(e.other:GetFactionValue(e.self) >= 0 and item_lib.check_turn_in(e.self, e.trade, {item1 = 7036, item2 = 10019, item3 = 10517, item4 = 10517})) then
--Requires: 1 Charred Dagger, 1 Bloodstone, Dull Bone Chips
if(e.other:GetFactionValue(e.self) >= 0 and item_lib.check_turn_in(e.self, e.trade, {item1 = 7036, item2 = 10019, item3 = 10517})) then
e.self:Say("You have quested well - With spell and sword - Accept our thanks - And this reward.");
e.other:Faction(e.self,239,10); -- The Dead
e.other:Faction(e.self,303,1); -- Queen Cristanos Thex
@ -70,8 +118,8 @@ function event_trade(e)
e.other:Faction(e.self,1522,-20); -- Primordial Malice
e.other:QuestReward(e.self,0,0,0,0,11865,62000); -- Item: Words of Requisition
--Words of the Suffering
--Requires: 1 Globe of Fear, 1 Star Rose Quartz, 2 Iced Boned Chips
elseif(e.other:GetFactionValue(e.self) >= 0 and item_lib.check_turn_in(e.self, e.trade, {item1 = 10521, item2 = 10021, item3 = 10519, item4 = 10519})) then
--Requires: 1 Globe of Fear, 1 Star Rose Quartz, Iced Boned Chips
elseif(e.other:GetFactionValue(e.self) >= 0 and item_lib.check_turn_in(e.self, e.trade, {item1 = 10521, item2 = 10021, item3 = 10519})) then
e.self:Say("You have quested well - With spell and sword - Accept our thanks - And this reward.");
e.other:Faction(e.self,239,10); -- The Dead
e.other:Faction(e.self,303,1); -- Queen Cristanos Thex

View file

@ -1,35 +1,83 @@
--Quest Name: Necromancer Words - X`Ta Tompi
function event_say(e)
if(e.other:GetFactionValue(e.self) >= 0) then
if(e.message:findi("hail")) then
if(e.message:findi("hail")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("We three are the [Sisters Dark] - [Necromancy] is our Art - Bonded dead, they serve our will - No beat of heart, yet faithful still.");
elseif(e.message:findi("sisters dark")) then
e.self:Say("We three are the Sisters Dark - Keepers of the shadowed Dread - [Lore of Death]. we research now - Join with us and serve [the Dead].");
elseif(e.message:findi("lore of death")) then
e.self:Say("The Lore of Death is shadow bound - Its [words] are [hid]. yet shall be found - Through our research into the dark - Old hexes found and parchment marked.");
elseif(e.message:findi("the dead")) then
e.self:Say("The Dead are the shadowknights and necromancers of Neriak. They were formed by Queen Cristanos herself. Even among the Teir'Dal they are feared and they keep to themselves within the Lodge of the Dead in the Third Gate. I have heard they take orders only from the queen.");
elseif(e.message:findi("necromancy")) then
e.self:Say("Necromancy - Art of the Dead - Binding bones to serve your will - We research now the [Lore of Death] - Ancient spells with power still.");
elseif(e.message:findi("hid")) then
e.self:Say("The Words are hid in tomes of old - Their yielded lore worth more than gold - Though we search both 'fore and 'hind - [Components] we can not yet find.");
elseif(e.message:findi("components")) then
e.self:Say("We need components for research - These are things that you could find - In return for [tasks] that you perform - Words of [reward] we have in mind.");
elseif(e.message:findi("tasks") or e.message:findi("reward")) then
e.self:Say("Bring us components for our research - We give [Word]s by tasks performed - [Possession], [Detachment], [Allure], [Haunting], [Rupturing], [Dark Paths], [Suffering], [Collection], [Obligation], [Requisition] and [Acquisition].");
elseif(e.message:findi("words of allure")) then
e.self:Say("From the Estate of Unrest, bring a Charred Pearl - From Castle Mistmoore, a wand charred - From a merchant bring a stone of blood and a ruby - Words of Allure will be your reward.");
elseif(e.message:findi("words of dark paths")) then
e.self:Say("From the Estate of Unrest, bring an globe of darkness - From Guk, an Eye of Urd - From a merchant bring a Star Rose Quartz - Then Words of Dark Paths will to you be given.");
elseif(e.message:findi("words of acquisition")) then
e.self:Say("From the Plane of Fear, bring Fetid Skin, Scare Straw and a Turmoil Wart - From a merchant bring a pearl - Then Words of Acquisition will to you be given.");
elseif(e.message:findi("words of obligation")) then
e.self:Say("From Guk, bring an Eye of Jin - From spectres, bring a Globe of Fear - From a merchant bring a jade stone - Then Words of Obligation will to you be given.");
elseif(e.message:findi("words of possession") or e.message:findi("words of detachment") or e.message:findi("words of rupturing") or e.message:findi("words of haunting") or e.message:findi("words of suffering") or e.message:findi("words of collection") or e.message:findi("words of requisition")) then
e.self:Say("The answer to that question is held by another - Ask again of my sister...");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("sisters dark")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("We three are the Sisters Dark - Keepers of the shadowed Dread - [Lore of Death]. we research now - Join with us and serve [the Dead].");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("lore of death")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("The Lore of Death is shadow bound - Its [words] are [hid]. yet shall be found - Through our research into the dark - Old hexes found and parchment marked.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("the dead")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("The Dead are the shadowknights and necromancers of Neriak. They were formed by Queen Cristanos herself. Even among the Teir'Dal they are feared and they keep to themselves within the Lodge of the Dead in the Third Gate. I have heard they take orders only from the queen.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("necromancy")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("Necromancy - Art of the Dead - Binding bones to serve your will - We research now the [Lore of Death] - Ancient spells with power still.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("hid")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("The Words are hid in tomes of old - Their yielded lore worth more than gold - Though we search both 'fore and 'hind - [Components] we can not yet find.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("components")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("We need components for research - These are things that you could find - In return for [tasks] that you perform - Words of [reward] we have in mind.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("tasks") or e.message:findi("reward")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("Bring us components for our research - We give [Word]s by tasks performed - [Possession], [Detachment], [Allure], [Haunting], [Rupturing], [Dark Paths], [Suffering], [Collection], [Obligation], [Requisition] and [Acquisition].");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("words of allure")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("From the Estate of Unrest, bring a Charred Pearl - From Castle Mistmoore, a wand charred - From a merchant bring a stone of blood and a ruby - Words of Allure will be your reward.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("words of dark paths")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("From the Estate of Unrest, bring an globe of darkness - From Guk, an Eye of Urd - From a merchant bring a Star Rose Quartz - Then Words of Dark Paths will to you be given.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("words of acquisition")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("From the Plane of Fear, bring Fetid Skin, Scare Straw and a Turmoil Wart - From a merchant bring a pearl - Then Words of Acquisition will to you be given.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("words of obligation")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("From Guk, bring an Eye of Jin - From spectres, bring a Globe of Fear - From a merchant bring a jade stone - Then Words of Obligation will to you be given.");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
elseif(e.message:findi("words of possession") or e.message:findi("words of detachment") or e.message:findi("words of rupturing") or e.message:findi("words of haunting") or e.message:findi("words of suffering") or e.message:findi("words of collection") or e.message:findi("words of requisition")) then
if(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("The answer to that question is held by another - Ask again of my sister...");
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
else
e.self:Say(eq.ChooseRandom("I didn't know Slime could speak common. Go back to the sewer before I lose my temper.","Is that your BREATH, or did something die in here? Now go away!","I wonder how much I could get for the tongue of a blithering fool? Leave before I decide to find out for myself.","Oh look..a talking lump of refuse..how novel!"));
end
end
@ -49,7 +97,7 @@ function event_trade(e)
e.other:QuestReward(e.self,0,0,0,0,11829,62000); -- Item: Words of Allure
--Words of Dark Paths
--Requires: 1 Sphere of Unrest, 1 Eye of Urd, 1 Star Rose Quartz
elseif(e.other:GetFactionValue(e.self) >= 0 and item_lib.check_turn_in(e.self, e.trade, {item1 = 10520, item2 = 10523, item3 = 10021, item4 = 10019})) then
elseif(e.other:GetFactionValue(e.self) >= 0 and item_lib.check_turn_in(e.self, e.trade, {item1 = 10520, item2 = 10523, item3 = 10021})) then
e.self:Say("You have quested well - With spell and sword - Accept our thanks - And this reward.");
e.other:Faction(e.self,239,10); -- The Dead
e.other:Faction(e.self,303,1); -- Queen Cristanos Thex
@ -71,7 +119,7 @@ function event_trade(e)
e.other:QuestReward(e.self,0,0,0,0,11866,62000); -- Item: Words of Acquisition (Beza)
--Words of Obligation
--Requires: 1 Globe of Fear, 1 Eye of Jin, 1 Jade
elseif(e.other:GetFactionValue(e.self) >= 0 and item_lib.check_turn_in(e.self, e.trade, {item1 = 10521, item2 = 10525, item3 = 10023, item4 = 10024})) then
elseif(e.other:GetFactionValue(e.self) >= 0 and item_lib.check_turn_in(e.self, e.trade, {item1 = 10521, item2 = 10525, item3 = 10023})) then
e.self:Say("You have quested well - With spell and sword - Accept our thanks - And this reward.");
e.other:Faction(e.self,239,10); -- The Dead
e.other:Faction(e.self,303,1); -- Queen Cristanos Thex

View file

@ -1,6 +1,6 @@
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("Greetings. disciple " .. e.other:GetCleanName() .. ". Feel free to inspect my wares. I am here to serve all necromancers of the Dead. I can also enchant a [ring of the Dead] if you have one.");
e.self:Say("Greetings, disciple " .. e.other:GetCleanName() .. ". Feel free to inspect my wares. I am here to serve all necromancers of the Dead. I can also enchant a [ring of the Dead] if you have one.");
elseif(e.message:findi("ring of the dead")) then
if(e.other:GetFactionValue(e.self) >= 500) then
e.self:Say("The ring of the Dead is the mark of loyal members of the his house. One can use it to bind his soul to any point, but only once and then the enchantment is gone. It is my duty to enchant the ring of the Dead once it is drained of all power, but only for a loyal member. I believe you to be loyal. I require the drained ring and ten gold coins.");
@ -12,6 +12,17 @@ function event_say(e)
end
end
function event_trade(e)
local item_lib =require("items");
local text = "Come now.. I said I require the ring of the Dead and 10 gold pieces.";
if(e.other:GetFactionValue(e.self) >= 500 and item_lib.check_turn_in(e.self, e.trade, {item1 = 13394, gold = 10},1,text)) then -- Ring of the Dead
e.self:Say("Here you are, disciple. I have enchanted your ring once more.");
e.other:QuestReward(e.self,0,0,0,0,13394,0); -- Item: Ring of the Dead (Recharged)
end
item_lib.return_items(e.self, e.other, e.trade)
end
--END of FILE Zone:neriakc ID:42063 -- Xantis_Ixtax
-------------------------------------------------------------------------------------------------
-- Converted to .lua using MATLAB converter written by Stryd and manual edits by Speedz

View file

@ -29,3 +29,12 @@ function event_trade(e)
end
item_lib.return_items(e.self, e.other, e.trade)
end
function event_spawn(e)
eq.set_timer("ww",3600000);
end
function event_timer(e)
eq.set_sky(5);
end

7
nro/Innkeep_Tozie.lua Normal file
View file

@ -0,0 +1,7 @@
function event_spawn(e)
eq.set_timer("ww",3600000);
end
function event_timer(e)
eq.set_sky(5);
end

7
oasis/Innkeep_Tizzy.lua Normal file
View file

@ -0,0 +1,7 @@
function event_spawn(e)
eq.set_timer("ww",3600000);
end
function event_timer(e)
eq.set_sky(5);
end

13
oot/Dayle_Jornin.lua Normal file
View file

@ -0,0 +1,13 @@
function event_waypoint_arrive(e)
if(e.wp == 4) then
e.self:Say("Join the Pirates of Gunthak, wench, or die!!");
eq.signal(69022,1); -- NPC: Euboea_Delewyn
end
end
function event_signal(e)
if(e.signal == 1) then
e.self:Say("Foolish maiden!");
eq.attack_npc_type(69022); --Euboea_Delewyn
end
end

View file

@ -2,5 +2,26 @@ function event_signal(e)
if(e.signal == 1) then
e.self:Say("I shall never join you!! I would rather die.");
eq.signal(69092,1); -- NPC: Zyle_Bensmill
elseif(e.signal == 1) then
e.self:Say("I shall never join you!! I would rather die.");
eq.signal(69153,1); -- NPC: Dayle_Jornin
end
end
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("Welcome to the island of the Sisterhood of Erollisi.")
elseif(e.message:findi("sisterhood")) then
e.self:Say("The Sisterhood of Erollisi was formed by Styria. We are all female warriors from the Faydarks. We found the male warriors did not respect our skills or our purity. We have come here to train without distraction. We often aid Faydark's Champions when called upon.")
elseif(e.message:findi("styria")) then
e.self:Say("Our leader, Styria, is quite a magnificent warrior. She was never given her rightful place among the guildmasters of the elves. So it is that she now acts as guildmaster to the Sisterhood of Erollisi.")
elseif(e.message:findi("dwarves")) then
e.self:Say("The dwarves were on a return trip from a failed business venture in Freeport. Their ship went down and they almost drowned. Styria saved them and they now make their home on our island and supply us with weapons and armor as well as selling to adventurers.")
elseif(e.message:findi("purity belt")) then
e.self:Say("All warriors of the Sisterhood of Erollisi wear purity belts. Ho hum... They keep us from impure acts. Along with purity comes great strength. That is what Styria always tells us. She holds the only key to the belts.")
elseif(e.message:findi("pirate")) then
e.self:Say("We have been plagued by buccaneers who call themselves the Pirates of Gunthak. We saw their ship go down nearby. They have taken refuge on a nearby island. They are attempting to take over our isle so they can commandeer the next ship. Go and ask Styria of the Pirates. She is hiring adventurers to hunt them down.")
elseif(e.message:findi("ship") or e.message:findi("boat")) then
e.self:Say("The ship comes and goes once a day, I believe. Though I can't imagine why you would ever want to leave our beautiful island.")
end
end

View file

@ -1,5 +1,5 @@
function event_waypoint_arrive(e)
if(e.wp == 2) then
if(e.wp == 4) then
e.self:Say("Join the Pirates of Gunthak, wench, or die!!");
eq.signal(69022,1); -- NPC: Euboea_Delewyn
end
@ -8,5 +8,6 @@ end
function event_signal(e)
if(e.signal == 1) then
e.self:Say("Foolish maiden!");
eq.attack_npc_type(69022); --Euboea_Delewyn
end
end

11
paw/player.lua Normal file
View file

@ -0,0 +1,11 @@
function event_click_door(e)
local id = e.door:GetDoorID();
if ( id == 52 ) then
eq.get_entity_list():GetDoorsByDoorID(10):ForceOpen(e.self);
eq.get_entity_list():GetDoorsByDoorID(7):ForceOpen(e.self);
elseif ( id == 53 ) then
eq.get_entity_list():GetDoorsByDoorID(5):ForceOpen(e.self);
end
end

7
qey2hh1/Alysa.lua Normal file
View file

@ -0,0 +1,7 @@
function event_spawn(e)
eq.set_timer("ww",3600000);
end
function event_timer(e)
eq.set_sky(5);
end

View file

@ -1,6 +1,6 @@
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("<BARK!> Hiya! <Bark!> <Bark!> My name is Furball Miller. I work here on my father's farm. Of course. he is not my real [father] but he is the one who raisd me from a pup. I hope to go back to [Blackburrow] some day and try to get them to stop all the senseless fighting with the humans of Qeynos.");
e.self:Say("<BARK!> Hiya! <Bark!> <Bark!> My name is Furball Miller. I work here on my father's farm. Of course, he is not my real [father] but he is the one who raised me from a pup. I hope to go back to [Blackburrow] some day and try to get them to stop all the senseless fighting with the humans of Qeynos.");
elseif(e.message:findi("blackburrow")) then
e.self:Say("Blackburrow is home to a clan of gnolls called the Sabertooths. It is where I am from but I really don't ever remember being there. Pa tells me the gnolls there are always fighting with the <BARK!> humans of Qeynos. I wish they would stop and realize that humans and gnolls are not as different as they like to think. <BARK!>");
end

View file

@ -5,6 +5,14 @@ function event_say(e)
e.self:Say("The executioner is quite an exceptional person. [Field Marshall Ralem] happened upon her while on a secret operation in Everfrost Peaks. They fought side by side against some creature the locals named Iceberg. The creature escaped. Ralem was grateful and eventually recruited her when she decided to separate from the guards of Halas.");
elseif(e.message:findi("field marshall ralem")) then
e.self:Say("Field Marshall Ralem Christof is in charge of a brigade of roving rangers, druids and warriors. He hails from the Jaggedpine. He is quite an exceptional ranger. No one is ever really sure where he is. His brigade is constantly on the move.");
elseif(e.message:findi("antonius")) then
e.self:Say("Antonius Bayle is the governor of this great city. He may well be the most powerful man in all of Norrath. You just might bump into him on the streets of Qeynos. He likes to walk among the citizens from time to time.");
elseif(e.message:findi("kane")) then
e.self:Say("Commander Kane Bayle is the highest ranking officer in the Qeynos Guard. He reports only to Antonius Bayle, his older brother. You may find Commander Kane in the guardhouse by the city gates, but do not disturb him. He is a very busy man.");
elseif(e.message:findi("linariu")) then
e.self:Say("Captain Linarius Graffe is in charge of all the Tower Guards of Qeynos. Every guard tower from the hills of Qeynos to the plains of Karana is under his control. He commands his guards from a great bridge keep in northern Karana.");
elseif(e.message:findi("corrupt.* guard")) then
e.self:Say("Corruption among my guards! Are you mad? Begone with your wild accusations!");
end
end
@ -32,7 +40,7 @@ function event_trade(e)
e.other:Faction(e.self,230,-6,0); -- Corrupt Qeynos Guards
e.other:Faction(e.self,223,-10,0); -- Circle of Unseen Hands
e.other:Faction(e.self,291,4,0); -- Merchants of Qeynos
e.other:QuestReward(e.self,math.random(10),math.random(9),math.random(5),0,13305,500);
e.other:QuestReward(e.self,math.random(10),math.random(9),math.random(13),1,13305,500);
eq.unique_spawn(1202,62,0,-412,75,-24,0); -- NPC: Executioner
elseif(item_lib.check_turn_in(e.self, e.trade, {item1 = 18912}, 0)) then
e.self:Say("So, an assassin has been sent to Qeynos! I shall have my guards keep an eye out for any suspicious looking visitors. As for you... you should speak with the Surefall Glade ambassador. Ambassador Gash is staying at the Lion's Mane Inn here in South Qeynos. Inform him that [an assassin has been sent to kill] him. Do not let the assassin near him!");

View file

@ -10,6 +10,7 @@ function event_say(e)
elseif(e.message:findi("deliver.* flock")) then
if(e.other:GetFactionValue(e.self) >= 100) then
e.self:Say("Then go to the Plains of Karana. It is there that the blessings are needed. Ask every resident of the plains if they are followers of Karana. If they are, then ask them if they [require Karana's blessings]. Let them drink from this temple chalice. Return the empty chalice to me and you shall never go thirsty again.");
e.other:SummonCursorItem(12103); -- Item: A Full Chalice
elseif(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("Well, friend, the Temple of Thunder has recognized and appreciates your past deeds for us. But this matter is of vital importance to us and we need more proof of your devotion to our cause.");
else
@ -18,7 +19,6 @@ function event_say(e)
elseif(e.message:findi("hunt.* binders")) then
if(e.other:GetFactionValue(e.self) >= 250) then -- requires mid amiably
e.self:Say("Go to the Plains of Karana and seek out the Karana Bandits. Among them can be found their bandit binders. They are healers of sorts. Which evil deity granted them this power is unknown to us. Each carries a binder spectacle. I shall reward clerics for every two returned spectacles. Perhaps a new power may even be bestowed.");
e.other:SummonCursorItem(12103); -- Item: A Full Chalice
elseif(e.other:GetFactionValue(e.self) >= 0) then
e.self:Say("Well, friend, the Temple of Thunder has recognized and appreciates your past deeds for us. But this matter is of vital importance to us and we need more proof of your devotion to our cause.");
else

View file

@ -20,11 +20,8 @@ function event_waypoint_arrive(e)
end
function event_signal(e)
local rando = math.random(2);
e.self:Say("You shall never take me alive!!");
if(rando == 1) then
eq.attack_npc_type(1202);
end
eq.attack_npc_type(1202);
end
function event_trade(e)

View file

@ -0,0 +1,33 @@
function event_spawn(e)
eq.set_timer("ww",3600000);
end
function event_timer(e)
eq.unique_spawn(4209,0,0,1081,2806,-33.3,28); -- NPC: Giant Werewolf -- Halloween Event
eq.zone_emote(15,"a loud roar is heard in the distance, everything goes eerily silent...");
eq.set_sky(5);
end
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("Beware, traveller!! There has been increased sightings of lycanthropes in this area. This time of year, the sky glows flame-orange and the [beasts] become more active.");
elseif(e.message:findi("beast")) then
e.self:Say("They are known to attack almost anything they see, I've even heard [reports] of a single werewolf wiping out an entire bandit camp!");
elseif(e.message:findi("report")) then
e.self:Say("I am a scout sent by the renowned werewolf hunting clan known as The Fangbreakers. We're testing a new [poison] that contains strong acids that severely weakens and kills werewolves.");
elseif(e.message:findi("poison")) then
e.self:Say("I tracked down a fearsome one on my way here and shot it with a poison-tipped arrow. Because of the size of the beast, I'm afraid it wasn't enough to kill it. It [escaped].");
elseif(e.message:findi("escape")) then
e.self:Say("If you see it lumbering around, please approach with caution! If it has already died, return to me with a blood sample so that we may analyze it to improve our concoction. I will also use the blood to imbue one of our staves that you can keep as a reward.");
end
end
function event_trade(e)
local item_lib =require("items");
if(item_lib.check_turn_in(e.self, e.trade, {item1 = 2646})) then -- Arterial Blood
e.self:Emote("holds up a staff and applies the blood to the top of the weapon, turning it dark red. 'Thank you! I hope it wasn't too much trouble to finish off. This weapon should prove most effective against other lycanthropes and magical creatures that you may run across. Good luck!");
e.other:QuestReward(e.self,0,0,0,0,6048,0); -- Item: Darkwood Staff
end
item_lib.return_items(e.self, e.other, e.trade)
end

View file

@ -63,7 +63,7 @@ function event_trade(e)
e.other:Faction(e.self,272,6,0); -- Jaggedpine Treefolk
e.other:Faction(e.self,306,-3,0); -- Sabertooths of Blackburrow
e.other:Faction(e.self,262,1,0); -- Guards of Qeynos
e.other:QuestReward(e.self,math.random(5),math.random(5),math.random(5),0,eq.ChooseRandom(2137,2172,9006,5033),20000); --items: Raw-Hide Skullcap, Large Raw-Hide Boots, Wooden Shield, Bronze Broad Sword
e.other:QuestReward(e.self,math.random(5),math.random(5),math.random(5),0,eq.ChooseRandom(2137,2140,9006,5033),20000); --items: Raw-Hide Skullcap, Raw-Hide Tunic, Wooden Shield, Bronze Broad Sword
elseif(e.other:GetFactionValue(e.self) >= 100 and item_lib.check_turn_in(e.self, e.trade, {item1 = 17970,item2 = 17970, item3 = 17970},1,text)) then
e.self:Say("Excellent! Ridding the area of those foul beasts will certainly slow down whatever it is they are planning. Here is the Cloak of Jaggedpine. You should keep this, for you never know when we may decide to alter the enchantments on it.");
e.other:Faction(e.self,302,20,0); -- Faction: Protectors of Pine

View file

@ -0,0 +1,7 @@
function event_spawn(e)
eq.set_timer("ww",3600000);
end
function event_timer(e)
eq.set_sky(5);
end

View file

@ -2,6 +2,14 @@
-- The xp from this quest was what made it worthwhile, more than the concordance. -Kilelen
-- Converted to .lua by Speedz
function event_spawn(e)
eq.set_timer("ww",3600000);
end
function event_timer(e)
eq.set_sky(5);
end
function event_say(e)
if(e.message:findi("hail")) then
if(e.other:GetFactionValue(e.self) >= 0) then

View file

@ -0,0 +1,33 @@
function event_spawn(e)
eq.set_timer("ww",3600000);
end
function event_timer(e)
eq.unique_spawn(56331,0,0,876,766,-100.7,46); -- NPC: Giant Werewolf -- Halloween Event
eq.zone_emote(15,"a loud roar is heard in the distance, everything goes eerily silent...");
eq.set_sky(5);
end
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("Beware, traveller!! There has been increased sightings of lycanthropes in this area. This time of year, the sky glows flame-orange and the [beasts] become more active.");
elseif(e.message:findi("beast")) then
e.self:Say("They are known to attack almost anything they see, I've even heard [reports] of a single werewolf wiping out an entire bandit camp!");
elseif(e.message:findi("report")) then
e.self:Say("I am a scout sent by the renowned werewolf hunting clan known as The Fangbreakers. We're testing a new [poison] that contains strong acids that severely weakens and kills werewolves.");
elseif(e.message:findi("poison")) then
e.self:Say("I tracked down a fearsome one on my way here and shot it with a poison-tipped arrow. Because of the size of the beast, I'm afraid it wasn't enough to kill it. It [escaped].");
elseif(e.message:findi("escape")) then
e.self:Say("If you see it lumbering around, please approach with caution! If it has already died, return to me with a blood sample so that we may analyze it to improve our concoction. I will also use the blood to imbue one of our staves that you can keep as a reward.");
end
end
function event_trade(e)
local item_lib =require("items");
if(item_lib.check_turn_in(e.self, e.trade, {item1 = 2646})) then -- Arterial Blood
e.self:Emote("holds up a staff and applies the blood to the top of the weapon, turning it dark red. 'Thank you! I hope it wasn't too much trouble to finish off. This weapon should prove most effective against other lycanthropes and magical creatures that you may run across. Good luck!");
e.other:QuestReward(e.self,0,0,0,0,6048,0); -- Item: Darkwood Staff
end
item_lib.return_items(e.self, e.other, e.trade)
end

View file

@ -2,7 +2,7 @@
function event_death_complete(e)
ran = math.random(100);
if(ran > 99) then
if(ran > 97) then
eq.unique_spawn(56152,28,0,-1294,1360,-103); -- NPC: Minotaur_Hero
end
end

32
tox/Lorisyn_Oakwynd.lua Normal file
View file

@ -0,0 +1,32 @@
function event_spawn(e)
eq.set_timer("ww",3600000);
end
function event_timer(e)
eq.unique_spawn(38239,0,0,2515,592,-28.7,195); -- NPC: Giant Werewolf -- Halloween Event
eq.zone_emote(15,"a loud roar is heard in the distance, everything goes eerily silent...");
end
function event_say(e)
if(e.message:findi("hail")) then
e.self:Say("Beware, traveller!! There has been increased sightings of lycanthropes in this area. This time of year, the sky glows flame-orange and the [beasts] become more active.");
elseif(e.message:findi("beast")) then
e.self:Say("They are known to attack almost anything they see, I've even heard [reports] of a single werewolf wiping out an entire bandit camp!");
elseif(e.message:findi("report")) then
e.self:Say("I am a scout sent by the renowned werewolf hunting clan known as The Fangbreakers. We're testing a new [poison] that contains strong acids that severely weakens and kills werewolves.");
elseif(e.message:findi("poison")) then
e.self:Say("I tracked down a fearsome one on my way here and shot it with a poison-tipped arrow. Because of the size of the beast, I'm afraid it wasn't enough to kill it. It [escaped].");
elseif(e.message:findi("escape")) then
e.self:Say("If you see it lumbering around, please approach with caution! If it has already died, return to me with a blood sample so that we may analyze it to improve our concoction. I will also use the blood to imbue one of our staves that you can keep as a reward.");
end
end
function event_trade(e)
local item_lib =require("items");
if(item_lib.check_turn_in(e.self, e.trade, {item1 = 2646})) then -- Arterial Blood
e.self:Emote("holds up a staff and applies the blood to the top of the weapon, turning it dark red. 'Thank you! I hope it wasn't too much trouble to finish off. This weapon should prove most effective against other lycanthropes and magical creatures that you may run across. Good luck!");
e.other:QuestReward(e.self,0,0,0,0,6048,0); -- Item: Darkwood Staff
end
item_lib.return_items(e.self, e.other, e.trade)
end