HwalRucksif.lua 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289
  1. --[[
  2. Script Name : SpawnScripts/Antonica/HwalRucksif.lua
  3. Script Author : Premierio015
  4. Script Date : 2021.06.26 07:06:22
  5. Script Purpose :
  6. :
  7. --]]
  8. require "SpawnScripts/Generic/DialogModule"
  9. local TheseBootsWereMadeFor = 5805 -- These Boots Were Made For QUEST ID
  10. function spawn(NPC)
  11. SetPlayerProximityFunction(NPC, 15, "InRange", "", Spawn)
  12. ProvidesQuest(NPC, TheseBootsWereMadeFor)
  13. end
  14. function hailed(NPC, Spawn)
  15. FaceTarget(NPC, Spawn)
  16. if HasQuest(Spawn,5766) and GetQuestStepProgress(Spawn,5766,6) == 0 then --WELCOME TO QEYNOS,CITIZEN
  17. SetStepComplete(Spawn,5766,6)
  18. end
  19. if not HasQuest(Spawn, TheseBootsWereMadeFor) or GetQuestStep(Spawn, TheseBootsWereMadeFor, 8) or GetQuestStep(Spawn, TheseBootsWereMadeFor, 10) or GetQuestStep(Spawn, TheseBootsWereMadeFor, 11) or GetQuestStep(Spawn, TheseBootsWereMadeFor, 12) or HasCompletedQuest(Spawn, TheseBootsWereMadeFor) then
  20. Dialog1(NPC, Spawn)
  21. elseif GetQuestStep(Spawn, TheseBootsWereMadeFor) == 1 or GetQuestStep(Spawn, TheseBootsWereMadeFor) == 2 then
  22. PlayFlavor(NPC, "voiceover/english/hwal_rucksif/antonica/quest/quest_hwal_rucksif_need_materials_60f2a69b.mp3", "Got my material? Doesn't look like it.", "sigh", 1237617987, 3622122831, Spawn)
  23. elseif GetQuestStep(Spawn, TheseBootsWereMadeFor) == 3 then
  24. Dialog2(NPC, Spawn)
  25. elseif GetQuestStep(Spawn, TheseBootsWereMadeFor) == 4 or GetQuestStep(Spawn, TheseBootsWereMadeFor) == 5 or GetQuestStep(Spawn, TheseBootsWereMadeFor) == 6 then
  26. PlayFlavor(NPC, "voiceover/english/hwal_rucksif/antonica/quest/quest_hwal_rucksif_eitoa_components_6fc1205.mp3", "Come back when you've found the components for Captain Eitoa's sword.", "shrug", 438547110, 205957881, Spawn)
  27. elseif GetQuestStep(Spawn, TheseBootsWereMadeFor) == 7 then
  28. Dialog7(NPC, Spawn)
  29. elseif GetQuestStep(Spawn, TheseBootsWereMadeFor) == 9 then
  30. Dialog10(NPC, Spawn)
  31. elseif GetQuestStep(Spawn, TheseBootsWereMadeFor) == 11 then
  32. Dialog16(NPC, Spawn)
  33. elseif GetQuestStep(Spawn, TheseBootsWereMadeFor) == 16 then
  34. Dialog22(NPC, Spawn)
  35. end
  36. end
  37. function InRange(NPC, Spawn)
  38. if CanReceiveQuest(Spawn, TheseBootsWereMadeFor) then
  39. PlayFlavor(NPC, "voiceover/english/hwal_rucksif/antonica/quest/quest_hwal_rucksif_callout_30d20c93.mp3", "Ho, there! You wouldn't mind helping out a hard working dwarf, would ya?", "hello", 596769271, 2784563151, Spawn)
  40. end
  41. end
  42. function respawn(NPC)
  43. spawn(NPC)
  44. end
  45. function Dialog1(NPC, Spawn)
  46. FaceTarget(NPC, Spawn)
  47. Dialog.New(NPC, Spawn)
  48. Dialog.AddDialog("Ya see, I've been tasked with gettin' a whole bunch of fine weapons made for the sentries out here, and me achin' back is already at its limit. Argh! These boots chafe something awful!")
  49. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif002.mp3", 4019058614, 2305053500)
  50. Dialog.AddEmote("hello")
  51. if CanReceiveQuest(Spawn, TheseBootsWereMadeFor) then
  52. Dialog.AddOption("I might be able to help you", "offer")
  53. end
  54. Dialog.AddOption("No thanks, I lost my work ethic a while back.")
  55. Dialog.Start()
  56. end
  57. function offer(NPC, Spawn)
  58. OfferQuest(NPC, Spawn, TheseBootsWereMadeFor)
  59. end
  60. function Dialog2(NPC, Spawn)
  61. FaceTarget(NPC, Spawn)
  62. Dialog.New(NPC, Spawn)
  63. Dialog.AddDialog("Ahh, you're back! My now, that's a serious load of iron and wood!")
  64. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif004.mp3", 1212942996, 3121543539)
  65. Dialog.AddEmote("applaud")
  66. Dialog.AddOption("Mmmffff! Take it, quick!", "Dialog3")
  67. Dialog.Start()
  68. end
  69. function Dialog3(NPC, Spawn)
  70. FaceTarget(NPC, Spawn)
  71. Dialog.New(NPC, Spawn)
  72. Dialog.AddDialog("Easy now! Don't go dropping it all over! I'll just have to pick it up later!")
  73. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif005.mp3", 2215806706, 569080202)
  74. Dialog.AddEmote("boggle")
  75. Dialog.AddOption("It's heavy!", "Dialog4")
  76. Dialog.Start()
  77. end
  78. function Dialog4(NPC, Spawn)
  79. FaceTarget(NPC, Spawn)
  80. Dialog.New(NPC, Spawn)
  81. Dialog.AddDialog("Har har har! Don't tell me that! I have to do this all day long! The forge is a cruel mistress, but she rewards well!")
  82. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif006.mp3", 342444773, 1889970866)
  83. Dialog.AddEmote("chuckle")
  84. Dialog.AddOption("I'll take some of that reward!", "Dialog5")
  85. Dialog.Start()
  86. end
  87. function Dialog5(NPC, Spawn)
  88. FaceTarget(NPC, Spawn)
  89. Dialog.New(NPC, Spawn)
  90. Dialog.AddDialog("I've got some coin for ya, but how about I enlist you to help with another task? What's that? Yes? Great!")
  91. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif007.mp3", 2431845223, 2233032287)
  92. Dialog.AddEmote("stare")
  93. Dialog.AddOption("Obviously your back isn't the only thing that's going. ", "Dialog6")
  94. Dialog.AddOption("Well, yes, I suppose I can help. ", "Dialog6")
  95. Dialog.Start()
  96. end
  97. function Dialog6(NPC, Spawn)
  98. SetStepComplete(Spawn, TheseBootsWereMadeFor, 3)
  99. FaceTarget(NPC, Spawn)
  100. Dialog.New(NPC, Spawn)
  101. Dialog.AddDialog("The captain of the guards requested I forge a rather special sword, and I'm having a slight problem finding the materials I need. That's a dandy little book you've got there; I'll just write down what I need.")
  102. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif008.mp3", 2629427115, 991638830)
  103. Dialog.AddOption("Hey, that's my journal!")
  104. Dialog.Start()
  105. end
  106. function Dialog7(NPC, Spawn)
  107. FaceTarget(NPC, Spawn)
  108. Dialog.New(NPC, Spawn)
  109. Dialog.AddDialog("Very nice, indeed! These samples will make a wonderful sword. I'm sure that Eitoa will be pleased once I get a chance to make it for her.")
  110. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif009.mp3", 612576791, 3127535606)
  111. Dialog.AddOption("I hope so, that was a lot of work.", "Dialog8")
  112. Dialog.Start()
  113. end
  114. function Dialog8(NPC, Spawn)
  115. FaceTarget(NPC, Spawn)
  116. Dialog.New(NPC, Spawn)
  117. Dialog.AddDialog("Speaking of work, all this smithing is thirsty business! You wouldn't mind helping me curb a guilty pleasure, would you? Noooo, of course you wouldn't!")
  118. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif010.mp3", 3100412846, 461623462)
  119. Dialog.AddOption("I'm almost afraid to ask...", "Dialog9")
  120. Dialog.Start()
  121. end
  122. function Dialog9(NPC, Spawn)
  123. SetStepComplete(Spawn, TheseBootsWereMadeFor, 7)
  124. FaceTarget(NPC, Spawn)
  125. Dialog.New(NPC, Spawn)
  126. Dialog.AddDialog("Don't be! It's not traditional, and it's hard to come by, but I could really go for a Blackburrow Stout! Now, back to the forge!")
  127. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif011.mp3", 3697829619, 659221647)
  128. Dialog.AddOption("A dwarf drinking gnoll-brew?")
  129. Dialog.Start()
  130. end
  131. function Dialog10(NPC, Spawn)
  132. FaceTarget(NPC, Spawn)
  133. Dialog.New(NPC, Spawn)
  134. Dialog.AddDialog("Well done! Nothing hits the spot like a good keg o' the Stout!")
  135. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif012.mp3", 4272911909, 2566231204)
  136. Dialog.AddEmote("applaud")
  137. Dialog.AddOption("If you say so... I wouldn't touch that gnoll-filth with a ten foot polearm!", "Dialog11")
  138. Dialog.Start()
  139. end
  140. function Dialog11(NPC, Spawn)
  141. FaceTarget(NPC, Spawn)
  142. Dialog.New(NPC, Spawn)
  143. Dialog.AddDialog("You've been trustworthy thus far. I think you'd be perfect to help me out with my dear old granddad.")
  144. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif013.mp3", 50142058, 1032335681)
  145. Dialog.AddOption("Oh no, I draw the line at convalescent care!", "Dialog12")
  146. Dialog.Start()
  147. end
  148. function Dialog12(NPC, Spawn)
  149. FaceTarget(NPC, Spawn)
  150. Dialog.New(NPC, Spawn)
  151. Dialog.AddDialog("Don't be silly. He's been dead for more than a century! But ... well ... ya see... there's this family curse that goes back every other generation for the past ... oh Ro's flame, I don't know how many years, but a long dang time!")
  152. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif014.mp3", 2209750474, 3589103244)
  153. Dialog.AddOption("Now you're going to tell me he's some sort of ghost?", "Dialog13")
  154. Dialog.Start()
  155. end
  156. function Dialog13(NPC, Spawn)
  157. FaceTarget(NPC, Spawn)
  158. Dialog.New(NPC, Spawn)
  159. Dialog.AddDialog("Oh, so you've heard of the ol' Rucksif curse! Jolly good! I just need ya to totter off and see if ya can lay him to rest properly.")
  160. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif015.mp3", 1437826389, 2209485957)
  161. Dialog.AddOption("I've never heard of a ghost around here before...", "Dialog14")
  162. Dialog.Start()
  163. end
  164. function Dialog14(NPC, Spawn)
  165. FaceTarget(NPC, Spawn)
  166. Dialog.New(NPC, Spawn)
  167. Dialog.AddDialog("He's the quiet sort, doesn't really get out to bother anyone these days. Oh, sure, he used to be a real terror out here in Antonica, but he's gotten quiet in his old age. Spends most of his time moaning and groaning underneath that bard's tower.")
  168. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif016.mp3", 1645899542, 3940230430)
  169. Dialog.AddOption("I guess I'll see what I can do.", "Dialog15")
  170. Dialog.Start()
  171. end
  172. function Dialog15(NPC, Spawn)
  173. SetStepComplete(Spawn, TheseBootsWereMadeFor, 9)
  174. FaceTarget(NPC, Spawn)
  175. Dialog.New(NPC, Spawn)
  176. Dialog.AddDialog("That's the spirit! Give him my best. Brell guide his path!")
  177. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif017.mp3", 3573355881, 2429569870)
  178. Dialog.AddOption("Bah, you should be guiding his path.")
  179. Dialog.Start()
  180. end
  181. function Dialog16(NPC, Spawn)
  182. FaceTarget(NPC, Spawn)
  183. Dialog.New(NPC, Spawn)
  184. Dialog.AddDialog("Whoa, and here I thought you might have some trouble!")
  185. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif018.mp3", 732409035, 4138837447)
  186. Dialog.AddOption("You know, you really could have warned me that he'd put up a fight.", "Dialog17")
  187. Dialog.Start()
  188. end
  189. function Dialog17(NPC, Spawn)
  190. FaceTarget(NPC, Spawn)
  191. Dialog.New(NPC, Spawn)
  192. Dialog.AddDialog("Oh, now where's the fun in that, eh? I suppose you're expecting some sort of reward. Adventurers are always thinking about what they get for helpin' someone. I think it's a law of nature!")
  193. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif019.mp3", 2615861284, 4010544627)
  194. Dialog.AddOption("Well, it would be appreciated...", "Dialog18")
  195. Dialog.Start()
  196. end
  197. function Dialog18(NPC, Spawn)
  198. FaceTarget(NPC, Spawn)
  199. Dialog.New(NPC, Spawn)
  200. Dialog.AddDialog("I don't have much, just the boots on my feet ... and my forge of course. I'm not givin' up my forge, ya hear!")
  201. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif020.mp3", 2118687776, 743391925)
  202. Dialog.AddOption("So the only thing you have left is your set of old, smelly boots?", "Dialog19")
  203. Dialog.Start()
  204. end
  205. function Dialog19(NPC, Spawn)
  206. FaceTarget(NPC, Spawn)
  207. Dialog.New(NPC, Spawn)
  208. Dialog.AddDialog("Now, now, no need to be rude about it! They're quite a fine pair of dwarven boots! But I'll need something to replace 'em. Hah ha! I've got just the thing!")
  209. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif021.mp3", 3908614762, 554555549)
  210. Dialog.AddOption("[groan] Why does this sound bad for me?", "Dialog20")
  211. Dialog.Start()
  212. end
  213. function Dialog20(NPC, Spawn)
  214. FaceTarget(NPC, Spawn)
  215. Dialog.New(NPC, Spawn)
  216. Dialog.AddDialog("Buck up! It's only a quick thing! I needed a new pair o' boots anyway! A good friend of mine, Minty Frostbeard, is likely the finest Dwarven tailor you'll ever meet. She gave me a list of things to gather a while back, but I haven't gotten around to it.")
  217. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif022.mp3", 3066848429, 3653191715)
  218. Dialog.AddOption("I'm not sure I like where this is going...", "Dialog21")
  219. Dialog.Start()
  220. end
  221. function Dialog21(NPC, Spawn)
  222. SetStepComplete(Spawn, TheseBootsWereMadeFor, 11)
  223. FaceTarget(NPC, Spawn)
  224. Dialog.New(NPC, Spawn)
  225. Dialog.AddDialog("Now, now, that's no way to talk! Bring the stuff to Minty, and I'll give you my boots when you get back.")
  226. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif023.mp3", 1586655326, 3399089635)
  227. Dialog.AddOption("Fine, I guess there's not much I can say about that...")
  228. Dialog.Start()
  229. end
  230. function Dialog22(NPC, Spawn)
  231. FaceTarget(NPC, Spawn)
  232. Dialog.New(NPC, Spawn)
  233. Dialog.AddDialog("Ahh, well done! I trust Minty is well? These boots are a testament to her prowess with the needle!")
  234. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif024.mp3", 746062436, 1532463336)
  235. Dialog.AddOption("Should have kept those for myself!", "Dialog23")
  236. Dialog.Start()
  237. end
  238. function Dialog23(NPC, Spawn)
  239. SetStepComplete(Spawn, TheseBootsWereMadeFor, 16)
  240. FaceTarget(NPC, Spawn)
  241. Dialog.New(NPC, Spawn)
  242. Dialog.AddDialog("Oh, I think you'll like the ol' Rucksif boots well enough, mark my words! It's been an honor knowing such a fine and upstanding adventurer. I'd shake your hand, but I'm afraid mine's all sooty.")
  243. Dialog.AddVoiceover("voiceover/english/hwal_rucksif/antonica/hwal_rucksif025.mp3", 1217158698, 2375616433)
  244. Dialog.AddOption("These are... really... err... amazing boots!")
  245. Dialog.Start()
  246. end