Deianeira.lua 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. --[[
  2. Script Name : SpawnScripts/QueensColony/Deianeira.lua
  3. Script Purpose : Deianeira
  4. Script Author : Scatman
  5. Script Date : 2008.09.20
  6. Script Notes :
  7. Modified Date : 2020.04.04
  8. Modified by : premierio015
  9. Notes : Added animations
  10. --]]
  11. local Tainted = 183
  12. local GhostsAndGoblins = 184
  13. function spawn(NPC)
  14. ProvidesQuest(NPC, Tainted)
  15. ProvidesQuest(NPC, GhostsAndGoblins)
  16. end
  17. function respawn(NPC)
  18. spawn(NPC)
  19. end
  20. function hailed(NPC, Spawn)
  21. FaceTarget(NPC, Spawn)
  22. if HasCompletedQuest(Spawn, Tainted) then
  23. if HasCompletedQuest(Spawn, GhostsAndGoblins) or HasQuest(Spawn, GhostsAndGoblins) then
  24. Quest2RandomSay(NPC, Spawn)
  25. else
  26. NotConvinced(NPC, Spawn)
  27. end
  28. elseif HasQuest(Spawn, Tainted) then
  29. if GetQuestStep(Spawn, Tainted) < 9 then
  30. listenToTheSilence(NPC, Spawn)
  31. elseif GetQuestStep(Spawn, Tainted) == 9 then
  32. listenToTheSilence(NPC, Spawn, 2)
  33. end
  34. else
  35. listenToTheSilence(NPC, Spawn, 1)
  36. end
  37. end
  38. function listenToTheSilence(NPC, Spawn, option)
  39. FaceTarget(NPC, Spawn)
  40. conversation = CreateConversation()
  41. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/deianeira/tutorial_island02_revamp/quests/deianeira/deianeira001.mp3", "", "ponder", 974807054, 1523157599, Spawn)
  42. if option == 1 then
  43. AddConversationOption(conversation, "Listen to the silence?", "quest1_before1")
  44. elseif option == 2 then
  45. AddConversationOption(conversation, "I found a parchment that hinted Direspike was under the influence of something else.", "FoundParchment")
  46. end
  47. AddConversationOption(conversation, "Then I'll leave you in peace.")
  48. StartConversation(conversation, NPC, Spawn, "Shhh...I'm trying to listen to the silence. Whisper please.")
  49. end
  50. function quest1_before1(npc, spawn)
  51. conversation = CreateConversation()
  52. PlayFlavor(npc, "voiceover/english/tutorial_revamp/deianeira/tutorial_island02_revamp/quests/deianeira/deianeira002.mp3", "", "nod", 1920565588, 3425134667, Spawn)
  53. AddConversationOption(conversation, "The view's not so clear from here.", "quest1_before2")
  54. StartConversation(conversation, npc, spawn, "Away from the noise over in the camp. I like standing here. You can see where you've been and where you can go. You know what awaits you if you go further in. If only everything were as simple as that, where all your choices are clear and you can see what awaits.")
  55. end
  56. function quest1_before2(npc, spawn)
  57. conversation = CreateConversation()
  58. PlayFlavor(npc, "voiceover/english/tutorial_revamp/deianeira/tutorial_island02_revamp/quests/deianeira/deianeira003.mp3", "", "shrug", 3746790389, 1573998689, Spawn)
  59. AddConversationOption(conversation, "What evil do you sense?", "quest1_before3")
  60. AddConversationOption(conversation, "Then I'll have no more dealings with you.")
  61. StartConversation(conversation, npc, spawn, "True, but it's clearer than, say, the difference between good and evil. All those around here who are ''good'' avoid me because I was born ''evil''. I grew up in Freeport. Does that make them better than me somehow, that I chose to leave Freeport to work on behalf of the Queen only recently? Who knows? Yet I must be evil; I can sense the evil in others.")
  62. end
  63. function quest1_before3(npc, spawn)
  64. conversation = CreateConversation()
  65. PlayFlavor(npc, "voiceover/english/tutorial_revamp/deianeira/tutorial_island02_revamp/quests/deianeira/deianeira004.mp3", "", "nod", 428169630, 2788724653, Spawn)
  66. AddConversationOption(conversation, "I'll do what I can.", "quest1_offerQuest")
  67. AddConversationOption(conversation, "Perhaps some other time.")
  68. StartConversation(conversation, npc, spawn, "They say that there is a taint rising from an unknown source, polluting this place and corrupting the inhabitants. I feel it is much simpler than that. There are spiders in the Tainted Forest, poisonous ones. With their venom, they can cause untold suffering. The search for ''evil'' sometimes has a mundane cause. We must rid the Colony of these spiders.", spawn)
  69. end
  70. function quest1_offerQuest(npc, spawn)
  71. OfferQuest(npc, spawn, Tainted)
  72. end
  73. function FoundParchment(NPC, Spawn)
  74. FaceTarget(NPC, Spawn)
  75. conversation = CreateConversation()
  76. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/deianeira/tutorial_island02_revamp/quests/deianeira/deianeira005.mp3", "", "frustrated", 2666912393, 3640169922, Spawn)
  77. AddConversationOption(conversation, "The crawlers were being influenced by a hidden totem.", "dlg_17_2")
  78. AddConversationOption(conversation, "I'm not finished with them yet.")
  79. StartConversation(conversation, NPC, Spawn, "The influence of something else? But I've sensed the evil in them. They aren't capable of planning to be evil. It must be their poison. It must!")
  80. end
  81. function dlg_17_2(NPC, Spawn)
  82. FaceTarget(NPC, Spawn)
  83. conversation = CreateConversation()
  84. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/deianeira/tutorial_island02_revamp/quests/deianeira/deianeira006.mp3", "", "ponder", 1022748345, 1750032594, Spawn)
  85. AddConversationOption(conversation, "There is something that runs deeper than spider venom here.", "NotConvinced")
  86. StartConversation(conversation, NPC, Spawn, "I was so sure... Well, there goes that theory. Tell me, you may be less biased than someone like me: do you sense anything in the Tainted Forest? Anything at all?")
  87. end
  88. function NotConvinced(NPC, Spawn)
  89. FaceTarget(NPC, Spawn)
  90. conversation = CreateConversation()
  91. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/deianeira/tutorial_island02_revamp/quests/deianeira/deianeira007.mp3", "", "no", 2498899827, 4165283209, Spawn)
  92. AddConversationOption(conversation, "So you moved to Qeynos?", "dlg_17_4")
  93. StartConversation(conversation, NPC, Spawn, "I'm not convinced, but this does throw a gnome wrench into things. I don't believe that there is such a thing as evil. Look at me: I was raised to believe Qeynos was a horrible place filled with mindless drones. Once I came of age I realized that the Overlord's minions were spreading lies.")
  94. end
  95. function dlg_17_4(NPC, Spawn)
  96. FaceTarget(NPC, Spawn)
  97. conversation = CreateConversation()
  98. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/deianeira/tutorial_island02_revamp/quests/deianeira/deianeira008.mp3", "", "orate", 56356150, 3856145142, Spawn)
  99. AddConversationOption(conversation, "You were wrong about the toxic crawlers' poison.", "dlg_17_5")
  100. StartConversation(conversation, NPC, Spawn, "'Moved' is such a polite way to say it. I betrayed Freeport to do what I felt in my heart was right. And yet...not everyone in Qeynos accepts me or my decision. So I came here, where I could help remove this island's taint. The honorable Qeynosians won't work with me, so I've had to devise my own theories.")
  101. end
  102. function dlg_17_5(NPC, Spawn)
  103. SetStepComplete(Spawn, Tainted, 9)
  104. FaceTarget(NPC, Spawn)
  105. conversation = CreateConversation()
  106. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/deianeira/tutorial_island02_revamp/quests/deianeira/deianeira009.mp3", "", "shrug", 3026175083, 2234137219, Spawn)
  107. AddConversationOption(conversation, "Sure.", "dlg_17_6")
  108. AddConversationOption(conversation, "Not yet.")
  109. StartConversation(conversation, NPC, Spawn, "We all make mistakes. Hopefully, this is not a mistake I'll live to regret. Are you willing to help me test another theory?")
  110. end
  111. function dlg_17_6(NPC, Spawn)
  112. FaceTarget(NPC, Spawn)
  113. conversation = CreateConversation()
  114. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/deianeira/tutorial_island02_revamp/quests/deianeira/deianeira010.mp3", "", "nod", 3135820636, 1299129722, Spawn)
  115. AddConversationOption(conversation, "I'll check into it.", "OfferQuest2")
  116. AddConversationOption(conversation, "I'll need to do this later.")
  117. StartConversation(conversation, NPC, Spawn, "The Tainted Forest is key. Look for the Forest Keeper, a treant who lives in a nook in the hillside just beyond these trees. It was a guardian of this place and has resisted the taint. It may be willing to speak to you. It chooses not to speak to a betrayer like me.")
  118. end
  119. function OfferQuest2(NPC, Spawn)
  120. OfferQuest(NPC, Spawn, GhostsAndGoblins)
  121. end
  122. function Quest2RandomSay(NPC, Spawn)
  123. FaceTarget(NPC, Spawn)
  124. choice = math.random(1, 5)
  125. if choice == 1 then
  126. Say(NPC, "There's only so much I can do to earn someone's trust.")
  127. elseif choice == 2 then
  128. Say(NPC, "It's up to us to find the answers; they're never handed to us.")
  129. elseif choice == 3 then
  130. Say(NPC, "Evil is not always what it appears to be. That's the danger.")
  131. elseif choice == 4 then
  132. Say(NPC, "We Ayr'Dal are proud, though others may not appreciate us.")
  133. elseif choice == 5 then
  134. Say(NPC, "Freeport isn't that bad of a place, if you like watching over your shoulder all the time.")
  135. end
  136. end