scout_training.lua 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. --[[
  2. Script Name : Quests/Hallmark/scout_training.lua
  3. Script Author : Dorbin
  4. Script Date : 2023.09.29 02:09:41
  5. Script Purpose :
  6. Zone : Hallmark
  7. Quest Giver:
  8. Preceded by: None
  9. Followed by:
  10. --]]
  11. require "SpawnScripts/Generic/DialogModule"
  12. function Init(Quest)
  13. AddQuestStepKill(Quest, 1, "I need to kill five rust monsters.", 5, 100, "Emissary Millia wants me to go to the Sunken City and kill five mature Rust Monsters. She claims that a Rogue always keeps open an avenue of escape.", 142, 1240011,8410008)
  14. AddQuestStepCompleteAction(Quest, 1, "Step1Complete")
  15. UpdateQuestZone(Quest,"Sunken City")
  16. end
  17. function Accepted(Quest, QuestGiver, Player)
  18. FaceTarget(QuestGiver, Player)
  19. Dialog.New(QuestGiver, Player)
  20. Dialog.AddDialog("Let's see if you have the skills to go with that mouth of yours, eh? Being a scout doesn't take much, a couple of eyes, working limbs, that's about all can get out of a sticky situation. If you do, you'll go even further. For instance, a good rogue always has an escape route. Go into the Sunken City and clear an escape path. Kill several Rust Monsters, and then comes back. If you return in one piece, maybe I shows you a few more tricks.")
  21. Dialog.AddOption("I won't need to escape when they're dead! I'll return shortly.")
  22. Dialog.Start()
  23. end
  24. function Declined(Quest, QuestGiver, Player)
  25. -- Add dialog here for when the quest is declined
  26. end
  27. function Deleted(Quest, QuestGiver, Player)
  28. -- Remove any quest specific items here when the quest is deleted
  29. end
  30. function Step1Complete(Quest, QuestGiver, Player)
  31. UpdateQuestStepDescription(Quest, 1, "I killed five rust monsters.")
  32. UpdateQuestTaskGroupDescription(Quest, 1, "I've killed five Rust Monsters as Millia has asked. If I were a Rogue and needed to get out of the city really fast, that would definitely help.")
  33. UpdateQuestZone(Quest,"North Freeport")
  34. AddQuestStepChat(Quest, 2, "I need to speak with Emissary Millia", 1, "I should let Millia know that I've done what she suggested.", 11, 1440464)
  35. AddQuestStepCompleteAction(Quest, 2, "Step2Complete")
  36. end
  37. function Step2Complete(Quest, QuestGiver, Player)
  38. UpdateQuestStepDescription(Quest, 2, "I have spoken with Emissary Millia")
  39. UpdateQuestTaskGroupDescription(Quest, 2, "Millia was pleased with the way I handled the situation.")
  40. UpdateQuestZone(Quest,"Multiple Zones")
  41. AddQuestStepChat(Quest, 3, "I should do some type of buffoonery in front of bartender Grum Zoomly of the Back Alley Brewhouse", 1, "Emissary Millia has now forced me to act the role of the fool in front of a couple bartenders here in the city. I can't believe I'm about to do this....", 11,1280029 )
  42. AddQuestStepChat(Quest, 4, "I should sing my own special type of love song to bartender, Ranik Calman, of the Seafarer's Roost.", 1, "Emissary Millia has now forced me to act the role of the fool in front of a couple bartenders here in the city. I can't believe I'm about to do this....", 11, 1680080 )
  43. AddQuestStepCompleteAction(Quest, 3, "Step3Complete")
  44. AddQuestStepCompleteAction(Quest, 4, "Step4Complete")
  45. end
  46. function Step3Complete(Quest, QuestGiver, Player)
  47. UpdateQuestStepDescription(Quest, 3, "I conned Grum Zoomly into thinking I am a fool.")
  48. CheckProgress(Quest, QuestGiver, Player)
  49. end
  50. function Step4Complete(Quest, QuestGiver, Player)
  51. UpdateQuestStepDescription(Quest, 4, "I've sang my song to Ranik Calman and also managed to swipe a gold coin for Millia.")
  52. CheckProgress(Quest, QuestGiver, Player)
  53. end
  54. function CheckProgress(Quest, QuestGiver, Player)
  55. if QuestStepIsComplete(Player, 5910, 3) and QuestStepIsComplete(Player, 5910, 4) then
  56. UpdateQuestTaskGroupDescription(Quest, 3, "I've convinced the bartenders I was an idiot, and in doing so they let their guard down. I could get away with murder being a Bard.")
  57. UpdateQuestZone(Quest,"North Freeport")
  58. AddQuestStepChat(Quest, 5, "I need to speak with Emissary Millia", 1, "I should return to Millia and also give her this gold coin I swiped when Ranik wasn't looking.", 11, 1440464)
  59. AddQuestStepCompleteAction(Quest, 5, "Step5Complete")
  60. end
  61. end
  62. function Step5Complete(Quest, QuestGiver, Player)
  63. UpdateQuestStepDescription(Quest, 5, "I have spoken with Emissary Millia")
  64. UpdateQuestTaskGroupDescription(Quest, 4, "I told Millia about my buffoonery and she agreed that Bards are far more dangerous than they look.")
  65. UpdateQuestZone(Quest,"Theives' Way")
  66. AddQuestStepKill(Quest, 6, "I need to kill five Darkblade Scouts.", 5, 100, "Emissary Millia wants me to stalk the sewers for Darkblade Scouts and kill five of them.", 91, 8430008,1540040 , 1540027)
  67. AddQuestStepCompleteAction(Quest, 6, "Step6Complete")
  68. end
  69. function Step6Complete(Quest, QuestGiver, Player)
  70. UpdateQuestStepDescription(Quest, 6, "I killed five Darkblade Scouts.")
  71. UpdateQuestTaskGroupDescription(Quest, 5, "I've killed five Darkblade Scouts the way a Predator would take care of their victims.")
  72. UpdateQuestZone(Quest,"North Freeport")
  73. AddQuestStepChat(Quest, 7, "I need to speak with Emissary Millia.", 1, "I should return to Millia to let her know that I was able to take care of the competition.", 11, 1440464)
  74. AddQuestStepCompleteAction(Quest, 7, "QuestComplete")
  75. end
  76. function QuestComplete(Quest, QuestGiver, Player)
  77. -- The following UpdateQuestStepDescription and UpdateTaskGroupDescription are not needed, parser adds them for completion in case stuff needs to be moved around
  78. UpdateQuestStepDescription(Quest, 7, "I spoke with Emissary Millia.")
  79. UpdateQuestTaskGroupDescription(Quest, 6, "Millia has let me know that I've learned all of the tricks she's willing to teach me.")
  80. UpdateQuestDescription(Quest, "I have been given a taste of what the Emissary does for Freeport, and it seems intriguing. With that in mind, I think I'm going to specialize in certain skills so that one day I might be in a position to do what she does. Either way, I'm pretty sure I can find some good loot in the meantime. ")
  81. GiveQuestReward(Quest, Player)
  82. end
  83. function Reload(Quest, QuestGiver, Player, Step)
  84. if Step == 1 then
  85. Step1Complete(Quest, QuestGiver, Player)
  86. elseif Step == 2 then
  87. Step2Complete(Quest, QuestGiver, Player)
  88. elseif Step == 3 then
  89. Step3Complete(Quest, QuestGiver, Player)
  90. elseif Step == 4 then
  91. Step4Complete(Quest, QuestGiver, Player)
  92. elseif Step == 5 then
  93. Step5Complete(Quest, QuestGiver, Player)
  94. elseif Step == 6 then
  95. Step6Complete(Quest, QuestGiver, Player)
  96. elseif Step == 7 then
  97. QuestComplete(Quest, QuestGiver, Player)
  98. end
  99. end