HelainConyers.lua 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317
  1. --[[
  2. Script Name : SpawnScripts/Nettleville/HelainConyers.lua
  3. Script Purpose : Helain Conyers <Human Mentor>
  4. Script Author : Scatman
  5. Script Date : 2009.08.10
  6. Script Notes :
  7. --]]
  8. local HUMAN = 9
  9. local QUEST_1 = 295
  10. local QUEST_2 = 296
  11. local QUEST_3 = 297
  12. local QUEST_4 = 298
  13. function spawn(NPC)
  14. ProvidesQuest(NPC, QUEST_1)
  15. ProvidesQuest(NPC, QUEST_2)
  16. ProvidesQuest(NPC, QUEST_3)
  17. end
  18. function hailed(NPC, Spawn)
  19. FaceTarget(NPC, Spawn)
  20. conversation = CreateConversation()
  21. if HasCompletedQuest(Spawn, QUEST_1) then
  22. if HasCompletedQuest(Spawn, QUEST_2) then
  23. if HasCompletedQuest(Spawn, QUEST_3) then
  24. if HasCompletedQuest(Spawn, QUEST_4) then
  25. FoundPathToPeace(NPC, Spawn, conversation)
  26. else
  27. HaveYouFoundWork(NPC, Spawn, conversation)
  28. end
  29. elseif HasQuest(Spawn, QUEST_3) then
  30. OnQuest3(NPC, Spawn, conversation)
  31. else
  32. ANaturalHere(NPC, Spawn, conversation)
  33. end
  34. elseif HasQuest(Spawn, QUEST_2) then
  35. OnQuest2(NPC, Spawn, conversation)
  36. else
  37. LookAtAllTheBooks(NPC, Spawn, conversation)
  38. end
  39. elseif HasQuest(Spawn, QUEST_1) then
  40. OnQuest1(NPC, Spawn, conversation)
  41. else
  42. if GetRace(Spawn) == HUMAN then
  43. HelloTraveler(NPC, Spawn, conversation)
  44. else
  45. NotHuman(NPC, Spawn, conversation)
  46. end
  47. end
  48. end
  49. function NotHuman(NPC, Spawn, conversation)
  50. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers027.mp3", "", "", 3089860217, 2120414759, Spawn)
  51. AddConversationOption(conversation, "Thanks for the tip.")
  52. StartConversation(conversation, NPC, Spawn, "Hello, traveler! If it is peace you seek, the teachings of Quellious the Tranquil can show you the way.")
  53. end
  54. --------------------------------------------------------------------------------------------------------------------------
  55. -- QUEST 1
  56. --------------------------------------------------------------------------------------------------------------------------
  57. function HelloTraveler(NPC, Spawn, conversation)
  58. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers027.mp3", "", "", 3089860217, 2120414759, Spawn)
  59. AddConversationOption(conversation, "No, I suppose you can't.", "dlg_0_1")
  60. AddConversationOption(conversation, "Thanks for the tip.")
  61. StartConversation(conversation, NPC, Spawn, "Hello, traveler! If it is peace you seek, the teachings of Quellious the Tranquil can show you the way.")
  62. end
  63. function dlg_0_1(NPC, Spawn)
  64. FaceTarget(NPC, Spawn)
  65. conversation = CreateConversation()
  66. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers002.mp3", "", "", 2562313108, 1727059508, Spawn)
  67. AddConversationOption(conversation, "The only thing that is safe to assume about a human is that we strive to survive.", "dlg_0_2")
  68. AddConversationOption(conversation, "Well, you know what happens when you assume. Good day.")
  69. StartConversation(conversation, NPC, Spawn, "Why, it used to be that you could know certain things about a person's faith by their race, but just look at us humans. Some are agnostic while others praise the likes of Erollisi Marr, Tunare, or even Bristlebane, just to name a few. ")
  70. end
  71. function dlg_0_2(NPC, Spawn)
  72. FaceTarget(NPC, Spawn)
  73. conversation = CreateConversation()
  74. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers003.mp3", "", "", 2892663311, 3066293848, Spawn)
  75. AddConversationOption(conversation, "You obviously are a person of faith.", "dlg_0_3")
  76. AddConversationOption(conversation, "We may not be the oldest of races, but we are tenacious. ")
  77. StartConversation(conversation, NPC, Spawn, "Right you are! And while change is constant and all around us, we adjust and adapt right along with it. Thus our faiths and philosophies are very diverse.")
  78. end
  79. function dlg_0_3(NPC, Spawn)
  80. FaceTarget(NPC, Spawn)
  81. conversation = CreateConversation()
  82. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers004.mp3", "", "", 4064224894, 855111154, Spawn)
  83. AddConversationOption(conversation, "No doubt, especially in these times of turmoil and conflict.", "dlg_0_4")
  84. StartConversation(conversation, NPC, Spawn, "Oh, yes! I follow Quellious, the Tranquil child-goddess. I've been seeking inner peace for many years now. It has helped me so much! I look around and see so many others that would benefit from such personal peace.")
  85. end
  86. function dlg_0_4(NPC, Spawn)
  87. FaceTarget(NPC, Spawn)
  88. conversation = CreateConversation()
  89. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers005.mp3", "", "", 862333499, 1544985177, Spawn)
  90. AddConversationOption(conversation, "You find knowledge to be necessary for personal peace?", "dlg_0_5")
  91. AddConversationOption(conversation, "Perhaps, a conversation we can have another day. I was curious if you had work for me?", "OfferQuest1")
  92. StartConversation(conversation, NPC, Spawn, "So true. Some peace and knowledge would go far.")
  93. end
  94. function dlg_0_5(NPC, Spawn)
  95. FaceTarget(NPC, Spawn)
  96. conversation = CreateConversation()
  97. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers006.mp3", "", "", 1674826360, 1009450237, Spawn)
  98. AddConversationOption(conversation, "Interesting. I still think that many wage war for the sake of war, or to gain power.", "dlg_0_6")
  99. StartConversation(conversation, NPC, Spawn, "I do! Knowledge of other cultures and philosophies is very important. Why, if everyone fully understood themselves and their neighbors, there would be no conflict or war. No need for it!")
  100. end
  101. function dlg_0_6(NPC, Spawn)
  102. FaceTarget(NPC, Spawn)
  103. conversation = CreateConversation()
  104. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers007.mp3", "", "", 2276149336, 1155210883, Spawn)
  105. AddConversationOption(conversation, "Hmm. Some words to think about. ", "dlg_0_7")
  106. StartConversation(conversation, NPC, Spawn, "But see, if those people had peace, they would not seek power.")
  107. end
  108. function dlg_0_7(NPC, Spawn)
  109. FaceTarget(NPC, Spawn)
  110. conversation = CreateConversation()
  111. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers008.mp3", "", "", 2766152393, 2773509836, Spawn)
  112. AddConversationOption(conversation, "Wouldn't mind at all.", "OfferQuest1")
  113. StartConversation(conversation, NPC, Spawn, "Ya know, I am glad to have found another to talk to about these kinds of things. Would you mind helping me?")
  114. end
  115. function OfferQuest1(NPC, Spawn)
  116. FaceTarget(NPC, Spawn)
  117. OfferQuest(NPC, Spawn, QUEST_1)
  118. end
  119. function OnQuest1(NPC, Spawn, conversation)
  120. if GetQuestStep(Spawn, QUEST_1) == 2 then
  121. SetStepComplete(Spawn, QUEST_1, 2)
  122. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers010.mp3", "", "", 4087382660, 558784349, Spawn)
  123. AddConversationOption(conversation, "You're welcome.", "LookAtAllTheBooks")
  124. StartConversation(conversation, NPC, Spawn, "Oh, gracious! I did not expect so many at once. Thank you!")
  125. else
  126. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers025.mp3", "", "", 1625074590, 2007128908, Spawn)
  127. AddConversationOption(conversation, "I am sorry. I have not yet done what you asked. I will be back shortly!")
  128. StartConversation(conversation, NPC, Spawn, "Hello again! I did not expect you back so soon.")
  129. end
  130. end
  131. --------------------------------------------------------------------------------------------------------------------------
  132. -- QUEST 2
  133. --------------------------------------------------------------------------------------------------------------------------
  134. function LookAtAllTheBooks(NPC, Spawn, conversation)
  135. if conversation == nil then
  136. FaceTarget(NPC, Spawn)
  137. conversation = CreateConversation()
  138. end
  139. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers011.mp3", "", "", 1566451168, 2959134489, Spawn)
  140. AddConversationOption(conversation, "'Humans, Barbarians, and Erudites.' ", "dlg_7_2")
  141. AddConversationOption(conversation, "'Age of Blood, Age of Glory.'", "dlg_7_3")
  142. StartConversation(conversation, NPC, Spawn, "Oh, look at all these books you brought me. What is the title of that one, near you?")
  143. end
  144. function dlg_7_2(NPC, Spawn)
  145. FaceTarget(NPC, Spawn)
  146. conversation = CreateConversation()
  147. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers012.mp3", "", "", 3119581167, 1698005795, Spawn)
  148. AddConversationOption(conversation, "Perhaps some insight can be gained.", "dlg_7_3")
  149. StartConversation(conversation, NPC, Spawn, "That should be a good read. We are often thought of to have evolved from the barbarian race, you know? And well, the Erudites are a more intellectual subset of us. It is interesting, and can offer a bit more of an understanding of them and ourselves, when you put it in perspective like that.")
  150. end
  151. function dlg_7_3(NPC, Spawn)
  152. FaceTarget(NPC, Spawn)
  153. conversation = CreateConversation()
  154. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers013.mp3", "", "", 3228480005, 2535926237, Spawn)
  155. AddConversationOption(conversation, "Height of human power?", "dlg_7_4")
  156. StartConversation(conversation, NPC, Spawn, "Ah, look at this one! It is about the Age of Blood. A violent age, thought to be the height of human power, when the Combine Empire ruled over most of Norrath. If I recall right, the empire eventually splintered due to internal conflicts. Relics of the Combine Empire could be found across Norrath for ages.")
  157. end
  158. function dlg_7_4(NPC, Spawn)
  159. FaceTarget(NPC, Spawn)
  160. conversation = CreateConversation()
  161. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers031.mp3", "", "", 3917036825, 1372729086, Spawn)
  162. AddConversationOption(conversation, "Quite the testament to the humans who built Qeynos.", "dlg_7_5")
  163. StartConversation(conversation, NPC, Spawn, "That is not to say, that as a race, our time has come and gone. Why, just look at this city as an example. Qeynos has survived thousands of years, through wars, sieges, disease, famine, betrayals, and cataclysms, we have endured!")
  164. end
  165. function dlg_7_5(NPC, Spawn)
  166. FaceTarget(NPC, Spawn)
  167. conversation = CreateConversation()
  168. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers034.mp3", "", "", 3381534468, 2598998174, Spawn)
  169. AddConversationOption(conversation, "And humans still rule it.", "dlg_7_6")
  170. StartConversation(conversation, NPC, Spawn, "I should say so! We should be proud of them, and of ourselves for continuing the work. Our city, like us, has survived by adapting. Thus, it still stands and is open to all that seek its protection.")
  171. end
  172. function dlg_7_6(NPC, Spawn)
  173. FaceTarget(NPC, Spawn)
  174. conversation = CreateConversation()
  175. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers032.mp3", "", "", 2855759340, 2852857359, Spawn)
  176. AddConversationOption(conversation, "Yeah. Uh oh!", "dlg_7_7")
  177. StartConversation(conversation, NPC, Spawn, "Of course. Queen Antonia Bayle is someone who understands the ways of peace and knowledge. She's to be admired by all! Listen to me prattling on... Is that another book I see?")
  178. end
  179. function dlg_7_7(NPC, Spawn)
  180. FaceTarget(NPC, Spawn)
  181. conversation = CreateConversation()
  182. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers014.mp3", "", "", 2665081235, 3868863075, Spawn)
  183. AddConversationOption(conversation, "It was, and Andret told me to be careful, but it is now missing some of its pages. ", "dlg_7_8")
  184. StartConversation(conversation, NPC, Spawn, "What's wrong? Uh, that book looks ragged. Don't worry, I'll bet its spine was broken when you got it.")
  185. end
  186. function dlg_7_8(NPC, Spawn)
  187. FaceTarget(NPC, Spawn)
  188. conversation = CreateConversation()
  189. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers015.mp3", "", "", 4075505082, 3317310532, Spawn)
  190. AddConversationOption(conversation, "I will go look for the pages. I dropped them, so I will find them. ", "OfferQuest2")
  191. StartConversation(conversation, NPC, Spawn, "Oh, dear. You're right. We are missing six pages from the book 'Followers of Brell Serilis.' That would have been a great read, too. Oh, that's too bad.")
  192. end
  193. function OfferQuest2(NPC, Spawn)
  194. FaceTarget(NPC, Spawn)
  195. OfferQuest(NPC, Spawn, QUEST_2)
  196. end
  197. function OnQuest2(NPC, Spawn, conversation)
  198. if GetQuestStep(Spawn, QUEST_2) == 2 then
  199. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers017.mp3", "", "", 2087241060, 3147700165, Spawn)
  200. AddConversationOption(conversation, "I did! Though they are a little more smudged with dirt now.", "dlg_10_1")
  201. StartConversation(conversation, NPC, Spawn, "Did you find all the pages?")
  202. else
  203. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers025.mp3", "", "", 1625074590, 2007128908, Spawn)
  204. AddConversationOption(conversation, "I am sorry. I have not yet done what you asked. I will be back shortly!")
  205. StartConversation(conversation, NPC, Spawn, "Hello again! I did not expect you back so soon.")
  206. end
  207. end
  208. function dlg_10_1(NPC, Spawn)
  209. SetStepComplete(Spawn, QUEST_2, 2)
  210. FaceTarget(NPC, Spawn)
  211. conversation = CreateConversation()
  212. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers018.mp3", "", "", 4089087839, 2292542610, Spawn)
  213. AddConversationOption(conversation, "I guess it is rather fitting.", "ANaturalHere")
  214. StartConversation(conversation, NPC, Spawn, "Oh well, I'm sure the Duke of Below doesn't mind being a bit soiled.")
  215. end
  216. --------------------------------------------------------------------------------------------------------------------------
  217. -- QUEST 3
  218. --------------------------------------------------------------------------------------------------------------------------
  219. function ANaturalHere(NPC, Spawn, conversation)
  220. if conversation == nil then
  221. FaceTarget(NPC, Spawn)
  222. conversation = CreateConversation()
  223. end
  224. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers020.mp3", "", "", 2357657431, 1390308351, Spawn)
  225. AddConversationOption(conversation, "Thanks. I just try to do what's right.", "dlg_10_3")
  226. AddConversationOption(conversation, "Would you happen to have any other work for me?", "OfferQuest3")
  227. StartConversation(conversation, NPC, Spawn, "You know, you are a natural here in Qeynos. So willing to learn and help your fellow citizens.")
  228. end
  229. function dlg_10_3(NPC, Spawn)
  230. FaceTarget(NPC, Spawn)
  231. conversation = CreateConversation()
  232. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers021.mp3", "", "", 2715980640, 3245538913, Spawn)
  233. AddConversationOption(conversation, "You refer to Lucan and Freeport when you speak of ruling with fear. ", "dlg_10_4")
  234. StartConversation(conversation, NPC, Spawn, "That will do you well in these troubled times, no matter your faith. Qeynos is a collective people who are all driven by the same desire to better the world rather than being ruled by fear.")
  235. end
  236. function dlg_10_4(NPC, Spawn)
  237. FaceTarget(NPC, Spawn)
  238. conversation = CreateConversation()
  239. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers022.mp3", "", "", 1835163421, 380513186, Spawn)
  240. AddConversationOption(conversation, "I hope so. Would you happen to have any other work for me?", "OfferQuest3")
  241. StartConversation(conversation, NPC, Spawn, "I do. We strive to live as free individuals here in Qeynos. Everyone is doing their best to serve Queen Antonia and our community. You have already shown yourself to fit in nicely!")
  242. end
  243. function OfferQuest3(NPC, Spawn)
  244. FaceTarget(NPC, Spawn)
  245. OfferQuest(NPC, Spawn, QUEST_3)
  246. end
  247. function OnQuest3(NPC, Spawn, conversation)
  248. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers024.mp3", "", "", 1790327288, 1244496180, Spawn)
  249. AddConversationOption(conversation, "I have not asked all of them, but so far, no.")
  250. StartConversation(conversation, NPC, Spawn, "Did my friends have some work for you, Lophodeuh?")
  251. end
  252. function HaveYouFoundWork(NPC, Spawn, conversation)
  253. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers028.mp3", "", "", 1128584230, 3587308240, Spawn)
  254. AddConversationOption(conversation, "Laudine sent me to Johfrit Gythell. He has some work for me.")
  255. StartConversation(conversation, NPC, Spawn, "Have you found work, friend? ")
  256. end
  257. function FoundPathToPeace(NPC, Spawn, conversation)
  258. PlayFlavor(NPC, "voiceover/english/tutorial_revamp/helain_conyers/qey_village01/helainconyers026.mp3", "", "", 2566936431, 637185107, Spawn)
  259. AddConversationOption(conversation, "I have found my path. Let's hope it leads to peace.")
  260. StartConversation(conversation, NPC, Spawn, "Have you found your path to peace, friend?")
  261. end