ians_forgetful_family__part_iv_.lua 5.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. --[[
  2. Script Name : Quests/QeynosHarbor/ians_forgetful_family__part_iv_.lua
  3. Script Author : Dorbin
  4. Script Date : 2022.06.16 10:06:32
  5. Script Purpose :
  6. Zone : QeynosHarbor
  7. Quest Giver: Ian Cathlan
  8. Preceded by: Ian's Forgetful Family - Part III
  9. Followed by: Ian's Forgetful Family - Part V
  10. --]]
  11. require "SpawnScripts/Generic/DialogModule"
  12. function Init(Quest)
  13. AddQuestStepKill(Quest, 1, "I should try to find Ian's great-grandfather's leather straps on the deathly scarabs in The Crypt of Betrayal.", 25, 100, "My family and I have spent quite a bit of time in the Crypts below Qeynos battling the monsters there. So we've lost a few things in the process. I lost my favorite set of arrows but who knows where they have wound up. You'll know them by my name carved into each shaft. I'm sure some of the restless corpses probably have a few still stuck in them. My great grandfather lost a good set of leather straps down there ages ago, they are stamped with a four leaf clover. You might check the scarabs, they may have used some of them as padding for their lairs. And while nothing was lost can you kill a few of the shrillers down there just because I hate them, thanks. - Ian", 736, 2010013,2010002)
  14. AddQuestStepKill(Quest, 2, "I should kill several forsaken shrillers for Ian.", 10, 100, "My family and I have spent quite a bit of time in the Crypts below Qeynos battling the monsters there. So we've lost a few things in the process. I lost my favorite set of arrows but who knows where they have wound up. You'll know them by my name carved into each shaft. I'm sure some of the restless corpses probably have a few still stuck in them. My great grandfather lost a good set of leather straps down there ages ago, they are stamped with a four leaf clover. You might check the scarabs, they may have used some of them as padding for their lairs. And while nothing was lost can you kill a few of the shrillers down there just because I hate them, thanks. - Ian", 140, 2010003,2010035,2010026)
  15. AddQuestStepKill(Quest, 3, "Ian would like the arrows back he lost in The Crypt of Betrayal, he's certain the restless corpses still have them stuck in them.", 15, 100, "My family and I have spent quite a bit of time in the Crypts below Qeynos battling the monsters there. So we've lost a few things in the process. I lost my favorite set of arrows but who knows where they have wound up. You'll know them by my name carved into each shaft. I'm sure some of the restless corpses probably have a few still stuck in them. My great grandfather lost a good set of leather straps down there ages ago, they are stamped with a four leaf clover. You might check the scarabs, they may have used some of them as padding for their lairs. And while nothing was lost can you kill a few of the shrillers down there just because I hate them, thanks. - Ian", 364, 2010028)
  16. AddQuestStepCompleteAction(Quest, 1, "Step1Complete")
  17. AddQuestStepCompleteAction(Quest, 2, "Step2Complete")
  18. AddQuestStepCompleteAction(Quest, 3, "Step3Complete")
  19. UpdateQuestZone(Quest,"The Crypt of Betrayal")
  20. end
  21. function Accepted(Quest, QuestGiver, Player)
  22. FaceTarget(QuestGiver, Player)
  23. Dialog.New(QuestGiver, Player)
  24. Dialog.AddDialog("When I was younger, I picked up after my family. I got used to it. After a while, I started to see how things got lost. Here's a list of directions for ya. Good luck.")
  25. Dialog.AddVoiceover("voiceover/english/optional3/ian_cathlan/qey_harbor/quests/ian_cathlan/iancathlan013.mp3", 3987566922, 629145387)
  26. Dialog.AddOption("Um, sure. I'll be back.")
  27. Dialog.Start()
  28. end
  29. function Declined(Quest, QuestGiver, Player)
  30. -- Add dialog here for when the quest is declined
  31. end
  32. function Deleted(Quest, QuestGiver, Player)
  33. -- Remove any quest specific items here when the quest is deleted
  34. end
  35. function Step1Complete(Quest, QuestGiver, Player)
  36. UpdateQuestStepDescription(Quest, 1, "I have found Ian's great-grandfather's leather straps.")
  37. CheckProgress(Quest, QuestGiver, Player)
  38. end
  39. function Step2Complete(Quest, QuestGiver, Player)
  40. UpdateQuestStepDescription(Quest, 3, "I have recovered Ian's lost arrows.")
  41. CheckProgress(Quest, QuestGiver, Player)
  42. end
  43. function Step3Complete(Quest, QuestGiver, Player)
  44. UpdateQuestStepDescription(Quest, 3, "I have found the spellbook.")
  45. CheckProgress(Quest, QuestGiver, Player)
  46. end
  47. function CheckProgress(Quest, QuestGiver, Player)
  48. if QuestStepIsComplete(Player, 5591, 1) and QuestStepIsComplete(Player, 5591, 2) and QuestStepIsComplete(Player, 5591, 3) then
  49. UpdateQuestTaskGroupDescription(Quest, 1, "I've recovered everything Ian needed, I should return to him.")
  50. UpdateQuestZone(Quest,"Qeynos Harbor")
  51. AddQuestStepChat(Quest, 4, "I should return to Ian in Qeynos Harbor.", 1, 100, "I need to speak to Ian Cathlan in the Qeynos Harbor.", 11,2210084)
  52. AddQuestStepCompleteAction(Quest, 4, "QuestComplete")
  53. end
  54. end
  55. function QuestComplete(Quest, QuestGiver, Player)
  56. -- The following UpdateQuestStepDescription and UpdateTaskGroupDescription are not needed, parser adds them for completion in case stuff needs to be moved around
  57. UpdateQuestStepDescription(Quest, 4, "I have returned to Ian in Qeynos Harbor.")
  58. UpdateQuestTaskGroupDescription(Quest, 2, "I have spoken with Ian in Qeynos Harbor.")
  59. UpdateQuestDescription(Quest, "Ian has rewarded me with armor for collecting a few of his lost family's possessions.")
  60. GiveQuestReward(Quest, Player)
  61. end
  62. function Reload(Quest, QuestGiver, Player, Step)
  63. if Step == 1 then
  64. Step1Complete(Quest, QuestGiver, Player)
  65. elseif Step == 2 then
  66. Step2Complete(Quest, QuestGiver, Player)
  67. elseif Step == 3 then
  68. Step3Complete(Quest, QuestGiver, Player)
  69. elseif Step == 4 then
  70. QuestComplete(Quest, QuestGiver, Player)
  71. end
  72. end