SelyseBrazenroot.lua 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273
  1. --[[
  2. Script Name : SpawnScripts/Freeport/SelyseBrazenroot.lua
  3. Script Author : Premierio015
  4. Script Date : 2020.08.07 06:08:04
  5. Script Purpose :
  6. :
  7. --]]
  8. local QUEST1 = 577
  9. local QUEST2 = 578
  10. local QUEST3 = 579
  11. function spawn(NPC)
  12. ProvidesQuest(NPC, QUEST1)
  13. ProvidesQuest(NPC, QUEST2)
  14. ProvidesQuest(NPC, QUEST3)
  15. end
  16. function hailed(NPC, Spawn)
  17. FaceTarget(NPC, Spawn)
  18. conversation = CreateConversation()
  19. if GetRace(Spawn) == 0 then
  20. if not HasQuest(Spawn, QUEST1) and not HasCompletedQuest(Spawn, QUEST1) then
  21. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_001.mp3", "", "", 1119188187, 48635974, Spawn)
  22. AddConversationOption(conversation, "Wait. What do you mean?", "dlg01")
  23. AddConversationOption(conversation, "I'm not following.", "dlg01")
  24. AddConversationOption(conversation, "Yes, horrible. Goodbye!")
  25. StartConversation(conversation, NPC, Spawn, "I tell ya, I'm glad to be out of that damned slum, but to see our clan thrown out like week-old wolf meat? Terrible!")
  26. elseif HasQuest(Spawn, QUEST1) and not GetQuestStep(Spawn, QUEST1, 3) then
  27. PlayFlavor(NPC, "", "Honor your heritage by retrieving the Halasian heirlooms and killing the greedy guards in Scale Yard.", "", 1689589577, 4560189, Spawn)
  28. elseif HasQuest(Spawn, QUEST1) and GetQuestStep(Spawn, QUEST1, 3) then
  29. dlg06(NPC, Spawn)
  30. elseif HasCompletedQuest(Spawn, QUEST1) and not HasQuest(Spawn, QUEST2) and not HasCompletedQuest(Spawn, QUEST2) then
  31. dlg08(NPC, Spawn)
  32. elseif HasQuest(Spawn, QUEST2) and GetQuestStep(Spawn, QUEST2) < 5 then
  33. PlayFlavor(NPC, "", "Be sure to speak with each and every one of those suspects. We have to find out who is preaching this message of defection to New Halas.", "", 1689589577, 4560189, Spawn)
  34. elseif HasQuest(Spawn, QUEST2) and GetQuestStep(Spawn, QUEST2) == 5 then
  35. dlg13(NPC, Spawn)
  36. elseif HasCompletedQuest(Spawn, QUEST2) and not HasQuest(Spawn, QUEST3) and not HasCompletedQuest(Spawn, QUEST3) then
  37. dlg14(NPC, Spawn)
  38. elseif GetQuestStep(Spawn, QUEST3) == 8 then
  39. dlg18(NPC, Spawn)
  40. elseif HasCompletedQuest(Spawn, QUEST1) and HasCompletedQuest(Spawn, QUEST2) and HasCompletedQuest(Spawn, QUEST3) then
  41. PlayFlavor(NPC, "", "You make our ancestors proud, "..GetName(Spawn).."! Go forth; bare your teeth and cull the weak, my friend!", "", 1689589577, 4560189, Spawn)
  42. end
  43. else
  44. PlayFlavor(NPC, "", "Glory to The Overlord.", "", 1689589577, 4560189, Spawn)
  45. end
  46. end
  47. function dlg01(NPC, Spawn)
  48. FaceTarget(NPC, Spawn)
  49. conversation = CreateConversation()
  50. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_002.mp3", "", "", 2780352113, 2800215288, Spawn)
  51. AddConversationOption(conversation, "What was so wrong with it?", "dlg02")
  52. AddConversationOption(conversation, "I know what you mean.", "dlg03")
  53. StartConversation(conversation, NPC, Spawn, "Y'know... Scale Yard. All of us Northmen were given home in that Freeport ???hood when we arrived from the Outpost of the Overlord. It was a loathsome place.")
  54. end
  55. function dlg02(NPC, Spawn)
  56. FaceTarget(NPC, Spawn)
  57. conversation = CreateConversation()
  58. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_003.mp3", "", "", 3445608770, 386353370, Spawn)
  59. AddConversationOption(conversation, "Oh, that is bad.", "dlg03")
  60. AddConversationOption(conversation, "I had not realized that.", "dlg03")
  61. StartConversation(conversation, NPC, Spawn, "Aside from its general state of disrepair and filth? The fact that it had been a detention camp for the iksar before we arrived!")
  62. end
  63. function dlg03(NPC, Spawn)
  64. FaceTarget(NPC, Spawn)
  65. conversation = CreateConversation()
  66. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_004.mp3", "", "", 1494608776, 3430426492, Spawn)
  67. AddConversationOption(conversation, "That's unfortunate.", "dlg04")
  68. AddConversationOption(conversation, "I guess you should have obeyed the orders.", "dlg03_1")
  69. AddConversationOption(conversation, "You can handle it.")
  70. StartConversation(conversation, NPC, Spawn, "So, now ya see why I don't miss hanging me blood-stained kilt there any longer. But we were forced out of there with little warning when it was decided to turn it back into a prison. Those that didn't follow the orders to move out in a timely fashion were kicked to the streets with nothing but the shirts on their backs.")
  71. end
  72. function dlg03_1(NPC, Spawn)
  73. FaceTarget(NPC, Spawn)
  74. conversation = CreateConversation()
  75. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_006.mp3", "", "", 4026139026, 1883313878, Spawn)
  76. AddConversationOption(conversation, "You should go in there and reclaim them", "dlg05")
  77. StartConversation(conversation, NPC, Spawn, "Oh, I did. As a member of the Militia I knew better. But others did not, and it resulted in the loss of many antique and heirloom Halasian objects. We were promised that the items would be sent along afterward, but we've seen no such shipments.")
  78. end
  79. function dlg04(NPC, Spawn)
  80. FaceTarget(NPC, Spawn)
  81. conversation = CreateConversation()
  82. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_005.mp3", "", "", 1409150471, 1981001632, Spawn)
  83. AddConversationOption(conversation, "You should go in there and reclaim them.", "dlg05")
  84. StartConversation(conversation, NPC, Spawn, "Especially, when it means the loss of many antique and heirloom Halasian objects. We were promised that the items would be sent along afterward, but we've seen no such shipments.")
  85. end
  86. function dlg05(NPC, Spawn)
  87. FaceTarget(NPC, Spawn)
  88. local conversation = CreateConversation()
  89. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_008.mp3", "", "", 141225016, 3926164437, Spawn)
  90. AddConversationOption(conversation, "I'll take both the items and their lives!", "offer")
  91. AddConversationOption(conversation, "I'm not going to mess with those guards.")
  92. StartConversation(conversation, NPC, Spawn, "I agree! And show them how a Halasian fights, first hand! But they know me too well, considering my position here. I could never get away with it. You, on the other hand, can! Go in there, get us back our Halasian heirlooms, and kill the greedy guards that are hoarding them.")
  93. end
  94. function dlg06(NPC, Spawn)
  95. FaceTarget(NPC, Spawn)
  96. local conversation = CreateConversation()
  97. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_009.mp3", "", "", 3247274285, 200045010, Spawn)
  98. AddConversationOption(conversation, "It was invigorating!", "complete1")
  99. AddConversationOption(conversation, "I wouldn't call it a mauling.", "dlg07")
  100. StartConversation(conversation, NPC, Spawn, "You've honored your heritage by retrieving the Halasian heirlooms from Scale Yard, "..GetName(Spawn).." How did it feel mauling those greedy guards?")
  101. end
  102. function dlg07(NPC, Spawn)
  103. FaceTarget(NPC, Spawn)
  104. SetStepComplete(Spawn, QUEST1, 3)
  105. local conversation = CreateConversation()
  106. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_010.mp3", "", "", 2533066692, 351799116, Spawn)
  107. AddConversationOption(conversation, "Speaking of Halas, why don't you move there?", "dlg08")
  108. StartConversation(conversation, NPC, Spawn, "You can call it what ya like. This Halasian likes that they're dead!")
  109. end
  110. function dlg08(NPC, Spawn)
  111. FaceTarget(NPC, Spawn)
  112. local conversation = CreateConversation()
  113. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_012.mp3", "", "", 3597618993, 2154374839, Spawn)
  114. AddConversationOption(conversation, "A little too goodie-goody, huh?", "dlg09")
  115. StartConversation(conversation, NPC, Spawn, "Let it be known that there is a frozen sea of difference between New Halas and Halas. Don't ya be fooled! Many of those that moved to New Halas came lumbering back, cursing Marr to the Ethernere for having established the city and making it a beacon for Truth and Love.")
  116. end
  117. function complete1(NPC, Spawn)
  118. FaceTarget(NPC, Spawn)
  119. SetStepComplete(Spawn, QUEST1, 3)
  120. local conversation = CreateConversation()
  121. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_011.mp3", "", "", 592397197, 4111904685, Spawn)
  122. AddConversationOption(conversation, "Speaking of Halas, why don't you move there?", "dlg08")
  123. StartConversation(conversation, NPC, Spawn, "Ha! A Halasian after me own frigid heart!")
  124. end
  125. function dlg09(NPC, Spawn)
  126. FaceTarget(NPC, Spawn)
  127. local conversation = CreateConversation()
  128. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_013.mp3", "", "", 4148197515, 1288700917, Spawn)
  129. AddConversationOption(conversation, "Supply and demand.", "dlg10")
  130. StartConversation(conversation, NPC, Spawn, "Exactly. Halas was a barbarian city free to follow Rallos Zek, The Tribunal, Mithaniel or Erollisi. It should not be founded on melting concepts of good or evil. I have heard of some Northmen living there, providing less reputable services to the citizens, for a hefty coin.")
  131. end
  132. function dlg10(NPC, Spawn)
  133. FaceTarget(NPC, Spawn)
  134. local conversation = CreateConversation()
  135. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_014.mp3", "", "", 148258916, 4065934826, Spawn)
  136. AddConversationOption(conversation, "So, the Northmen are split on this issue?", "dlg11")
  137. StartConversation(conversation, NPC, Spawn, "That may even explain why some fools continue to preach that we should move there.")
  138. end
  139. function dlg11(NPC, Spawn)
  140. FaceTarget(NPC, Spawn)
  141. local conversation = CreateConversation()
  142. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_015.mp3", "", "", 2910936644, 1886456939, Spawn)
  143. AddConversationOption(conversation, "You bet your kilt!", "dlg12")
  144. AddConversationOption(conversation, "Tell me more about it.", "dlg12")
  145. AddConversationOption(conversation, "No, not this time.")
  146. StartConversation(conversation, NPC, Spawn, "Like a gobbo's skull cleaved by my axe! Just as we be on many things. The difference being, preaching this message of defection is bound to land ya, and all of them ya hold dear, in a shallow grave... or worse. I don't know who's behind it, but I have my suspicions. Ya feel up to the task?")
  147. end
  148. function dlg12(NPC, Spawn)
  149. FaceTarget(NPC, Spawn)
  150. local conversation = CreateConversation()
  151. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_016.mp3")
  152. AddConversationOption(conversation, "I'll do it.", "offer2")
  153. AddConversationOption(conversation, "You can find another barbarian to chat them up.")
  154. StartConversation(conversation, NPC, Spawn, "There's four Northmen who I suspect may be the ones encouraging the move to New Halas. I need someone that they don't know to speak with them on the topics of New Halas and religion. I bet they'll reveal themselves with that bait, "..GetName(Spawn)..".")
  155. end
  156. function dlg13(NPC, Spawn)
  157. FaceTarget(NPC, Spawn)
  158. local conversation = CreateConversation()
  159. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_017.mp3", "", "", 326365756, 1910070032, Spawn)
  160. AddConversationOption(conversation, "Yes. Gerhild Maclennan admitted her faith in Love. But I dealt with her.", "complete2")
  161. StartConversation(conversation, NPC, Spawn, "Glad to see ya've returned, "..GetName(Spawn)..". Did any of them take the bait?")
  162. end
  163. function complete2(NPC, Spawn)
  164. FaceTarget(NPC, Spawn)
  165. SetStepComplete(Spawn, QUEST2, 5)
  166. local conversation = CreateConversation()
  167. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_019.mp3", "", "", 2898618356, 835984458, Spawn)
  168. AddConversationOption(conversation, "I didn't?!", "dlg14")
  169. StartConversation(conversation, NPC, Spawn, "You may have dealt with someone with an inclination toward New Halas, but you did not sever the head from this beast.")
  170. end
  171. function dlg14(NPC, Spawn)
  172. FaceTarget(NPC, Spawn)
  173. local conversation = CreateConversation()
  174. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_020.mp3", "", "", 1474636537, 2379671147, Spawn)
  175. AddConversationOption(conversation, "And how are you to ''deal with it''?", "dlg15")
  176. AddConversationOption(conversation, "The Overlord? You have your orders then. Goodbye!")
  177. StartConversation(conversation, NPC, Spawn, "There has been more talk amongst our Northmen brothers and sisters. It has been growing ever since we were forced from Scale yard and into Beggar's Court. The Overlord is aware of the rising popularity in barbarian relocation to New Halas. He has commanded The Militia to deal with it.")
  178. end
  179. function dlg15(NPC, Spawn)
  180. FaceTarget(NPC, Spawn)
  181. local conversation = CreateConversation()
  182. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_021.mp3", "", "", 1714203856, 3757134511, Spawn)
  183. AddConversationOption(conversation, "That makes sense.", "dlg16")
  184. AddConversationOption(conversation, "Killing them would be fun though.", "dlg17")
  185. StartConversation(conversation, NPC, Spawn, "I suggested we coerce them into changing their minds! It's more effective than watching the offenders bleed out upon the cobbled streets. Killing the traitors would only persuade more to consider their message, and there is no guarantee that all of them would be slain, anyway.")
  186. end
  187. function dlg16(NPC, Spawn)
  188. FaceTarget(NPC, Spawn)
  189. local conversation = CreateConversation()
  190. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_022.mp3", "", "", 3870033274, 1910681182, Spawn)
  191. AddConversationOption(conversation, "How should I coerce them?", "dlg17")
  192. AddConversationOption(conversation, "Good luck with that!")
  193. StartConversation(conversation, NPC, Spawn, "I know damned well that the situation in Beggar's Court is not the best, but I'm convinced that it is better than it was in Scale Yard. You'll have better luck identifying the true leader of this movement within Beggar's Court.")
  194. end
  195. function dlg17(NPC, Spawn)
  196. FaceTarget(NPC, Spawn)
  197. local conversation = CreateConversation()
  198. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_023.mp3", "", "", 3880259447, 4087733008, Spawn)
  199. AddConversationOption(conversation, "I will succeed.", "offer3")
  200. AddConversationOption(conversation, "I can't be a part of this.")
  201. StartConversation(conversation, NPC, Spawn, "I don't care what ya do; threaten their family, burn down their house. Do what you must to force them into being a happy citizen of Freeport!")
  202. end
  203. function dlg18(NPC, Spawn)
  204. FaceTarget(NPC, Spawn)
  205. local conversation = CreateConversation()
  206. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_024.mp3", "", "", 596545421, 406094570, Spawn)
  207. AddConversationOption(conversation, "I was. Clan Chief Sleetsaber gave a convincing speech to all.", "complete3")
  208. StartConversation(conversation, NPC, Spawn, "You look quite pleased, "..GetName(Spawn)..". Tell me, were you able to cleave some sense into the would-be betrayer?")
  209. end
  210. function complete3(NPC, Spawn)
  211. FaceTarget(NPC, Spawn)
  212. SetStepComplete(Spawn, QUEST3, 8)
  213. local conversation = CreateConversation()
  214. PlayFlavor(NPC, "selyse_brazenroot/freeport_combined/quest/racial/barbarian/selyse_brazenroot_025.mp3", "", "", 1770656376, 337080574, Spawn)
  215. AddConversationOption(conversation, "I plan on it!")
  216. StartConversation(conversation, NPC, Spawn, "That is good news! You have made our ancestors proud this day! Go forth; bare your teeth and cull the weak, my friend!")
  217. end
  218. function offer(NPC, Spawn)
  219. FaceTarget(NPC, Spawn)
  220. OfferQuest(NPC, Spawn, QUEST1)
  221. end
  222. function offer2(NPC, Spawn)
  223. FaceTarget(NPC, Spawn)
  224. OfferQuest(NPC, Spawn, QUEST2)
  225. end
  226. function offer3(NPC, Spawn)
  227. FaceTarget(NPC, Spawn)
  228. OfferQuest(NPC, Spawn, QUEST3)
  229. end
  230. function respawn(NPC)
  231. spawn(NPC)
  232. end