Rumdum.lua 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320
  1. --[[
  2. Script Name : SpawnScripts/TheCityofFreeport/Rumdum.lua
  3. Script Purpose : Rumdum
  4. Script Author : Premierio015
  5. Script Date : 2022.04.02
  6. Script Notes : Auto-Generated Conversation from PacketParser Data
  7. --]]
  8. local TheSteinOfMoggok = 5511
  9. require "SpawnScripts/Generic/DialogModule"
  10. function spawn(NPC)
  11. SetPlayerProximityFunction(NPC, 10, "RandomGreeting")
  12. ProvidesQuest(NPC, TheSteinOfMoggok)
  13. end
  14. function respawn(NPC)
  15. spawn(NPC)
  16. end
  17. function hailed(NPC, Spawn)
  18. Dialog1(NPC, Spawn)
  19. end
  20. function RandomGreeting(NPC, Spawn)
  21. PlayFlavor(NPC, "", "Keep the ale comin'! I haven't lost my balance...", "", 0, 0, Spawn, 0)
  22. end
  23. function Dialog0(NPC, Spawn)
  24. RemoveCoin(Spawn, 400)
  25. FaceTarget(NPC, Spawn)
  26. Dialog.New(NPC, Spawn)
  27. Dialog.AddDialog("Mmmmm ale... Oh yeah, the magic stein. It was called the Stein of Mophawk ... err ... Mogpok ... err ... Moggok! That's it! The Stein of Moggok! Too bad that stein is gone now... It was supposed to make you smarter or somethin'.")
  28. Dialog.AddVoiceover("voiceover/english/rumdum/fprt_east/quest_rumdum007.mp3", 3079886262, 2546451154)
  29. Dialog.AddEmote("drinking_idle")
  30. Dialog.AddOption("What happened to the Stein of Moggok?", "Dialog7")
  31. Dialog.Start()
  32. end
  33. function Dialog4(NPC, Spawn)
  34. FaceTarget(NPC, Spawn)
  35. Dialog.New(NPC, Spawn)
  36. RemoveCoin(Spawn, 400)
  37. Dialog.AddDialog("Oooo! The good stuff! You're a good kid ... yeah, a good kid. This stein has a crack in it! I'm gettin' ale everywhere!")
  38. Dialog.AddEmote("yeah")
  39. Dialog.AddVoiceover("voiceover/english/rumdum/fprt_east/quest_rumdum004.mp3", 1836701843, 3938428532)
  40. Dialog.AddOption("I think the problem is the ale staying in your mouth...", "Dialog5")
  41. Dialog.Start()
  42. end
  43. function Dialog7(NPC, Spawn)
  44. FaceTarget(NPC, Spawn)
  45. Dialog.New(NPC, Spawn)
  46. Dialog.AddDialog("Froglok?! Let me tell ya somethin' 'bout them Frogloks... them froggies are only good fer squishin'. I remember the first time I squished a Froglok ... I was five-years old and --")
  47. Dialog.AddVoiceover("voiceover/english/rumdum/fprt_east/quest_rumdum008.mp3", 1911216997, 2661721879)
  48. Dialog.AddEmote("threaten")
  49. if HasCoin(Spawn, 400) then
  50. Dialog.AddOption("Bartender, we need another four silver ale here!", "Dialog8")
  51. end
  52. Dialog.AddOption("That's it, I'm out of here.")
  53. Dialog.Start()
  54. end
  55. function Dialog5(NPC, Spawn)
  56. FaceTarget(NPC, Spawn)
  57. Dialog.New(NPC, Spawn)
  58. Dialog.AddDialog("Let me tell ya somethin'... They just don't make steins like they used to ... My great great greatest grandpappy had a stein. It was a magical!")
  59. Dialog.AddEmote("orate")
  60. Dialog.AddVoiceover("voiceover/english/rumdum/fprt_east/quest_rumdum005.mp3", 968270018, 1345084346)
  61. Dialog.AddOption("Really? Tell me about this stein.", "Dialog6")
  62. Dialog.Start()
  63. end
  64. function Dialog6(NPC, Spawn)
  65. FaceTarget(NPC, Spawn)
  66. Dialog.New(NPC, Spawn)
  67. Dialog.AddDialog("Oooo yeah... it held the best drinks ... Ogre swill ... Flaming Clurg ... Oh! Flaming Clurg! Now there's a drink! Burns yer belly and freezes yer eyeballs... I remember my first Flaming Clurg... I was five years old and--")
  68. Dialog.AddEmote("ponder")
  69. Dialog.AddVoiceover("voiceover/english/rumdum/fprt_east/quest_rumdum006.mp3", 2037900091, 114693939)
  70. if HasCoin(Spawn, 400) then
  71. Dialog.AddOption("Bartender! Another four silver ale here! Now what about the stein?", "Dialog0")
  72. end
  73. Dialog.AddOption("Forget it. You are too drunk to even hear me.")
  74. Dialog.Start()
  75. end
  76. function Dialog10(NPC, Spawn)
  77. FaceTarget(NPC, Spawn)
  78. Dialog.New(NPC, Spawn)
  79. Dialog.AddDialog("Militia?! Let me tell you somethin' about the Freeport Militia... I didn't need them; they needed me... Okay? Just cuz I came to work with a lil' ale on my breath one, two, three .... okay, ten times... they kick me out! I been smashing froggies since I was five-years old and --")
  80. Dialog.AddVoiceover("voiceover/english/rumdum/fprt_east/quest_rumdum011.mp3", 1771534576, 1141357918)
  81. Dialog.AddEmote("scold")
  82. if HasCoin(Spawn, 400) then
  83. Dialog.AddOption("Bartender! Another four silver round for Rumdum!", "Dialog11")
  84. end
  85. Dialog.AddOption("I'll leave you to your ranting.")
  86. Dialog.Start()
  87. end
  88. function Dialog888(NPC, Spawn)
  89. FaceTarget(NPC, Spawn)
  90. Dialog.New(NPC, Spawn)
  91. Dialog.AddDialog("I suppose they is still in the Feerrott doin' their duty. Or they're dead. It's been a really long time... They's probably dead, but ya never know these days. People just don't want to stay dead... Let me tell ya something about the undead...")
  92. Dialog.AddEmote("agree")
  93. Dialog.AddVoiceover("voiceover/english/rumdum/fprt_east/quest_rumdum013.mp3", 2253824282, 3593362513)
  94. Dialog.AddOption("I've heard all I need to know for now. See you later, big guy.")
  95. Dialog.Start()
  96. end
  97. function Dialog2(NPC, Spawn)
  98. FaceTarget(NPC, Spawn)
  99. Dialog.New(NPC, Spawn)
  100. Dialog.AddDialog("Are ya callin' me smelly?! Nobody calls Rumdum Clurg smelly!")
  101. Dialog.AddVoiceover("voiceover/english/rumdum/fprt_east/quest_rumdum002.mp3", 2456172890, 2255945862)
  102. Dialog.AddEmote("threaten")
  103. if not HasQuest(Spawn, TheSteinOfMoggok) and not HasCompletedQuest(Spawn, TheSteinOfMoggok) then
  104. Dialog.AddOption("Easy, big guy. How about I buy you a drink?", "Dialog3")
  105. end
  106. Dialog.AddOption("Uh... I'll be leaving now.")
  107. Dialog.Start()
  108. end
  109. function Dialog3(NPC, Spawn)
  110. FaceTarget(NPC, Spawn)
  111. Dialog.New(NPC, Spawn)
  112. Dialog.AddDialog("Yeah, a drink. That sounds good. I need a drink... this one's almost empty.")
  113. Dialog.AddVoiceover("voiceover/english/rumdum/fprt_east/quest_rumdum003.mp3", 3277142292, 4121849623)
  114. if HasCoin(Spawn, 400) then
  115. Dialog.AddOption("Bartender, bring Rumdum here a four silver ale!", "Dialog4")
  116. end
  117. Dialog.AddEmote("nod")
  118. Dialog.AddOption("So do I, I think I'll find another place to have one though. See you later.")
  119. Dialog.Start()
  120. end
  121. function Dialog11(NPC, Spawn)
  122. RemoveCoin(Spawn, 400)
  123. FaceTarget(NPC, Spawn)
  124. Dialog.New(NPC, Spawn)
  125. Dialog.AddDialog("Mmmmm ale... Where was I?")
  126. Dialog.AddEmote("drinking_idle")
  127. Dialog.AddVoiceover("voiceover/english/rumdum/fprt_east/quest_rumdum012.mp3", 303364683, 1158756231)
  128. Dialog.AddOption("You were talking about the Bouncers. Where are they now?", "offer")
  129. Dialog.Start()
  130. end
  131. function Dialog8(NPC, Spawn)
  132. RemoveCoin(Spawn, 400)
  133. FaceTarget(NPC, Spawn)
  134. Dialog.New(NPC, Spawn)
  135. Dialog.AddDialog("Mmmmm ale ... Where was I? Oh yeah ... the stein. If it weren't for those dumb Bouncers fightin' over whose turn it was to use it for drinkin', it might still be around. Now it's all in pieces... What you gonna do with pieces of a stein? Ya can't put no ale in it ... It would just fall out on the floor...")
  136. Dialog.AddVoiceover("voiceover/english/rumdum/fprt_east/quest_rumdum009.mp3", 4092925670, 683051779)
  137. Dialog.AddEmote("drinking_idle")
  138. Dialog.AddOption("Who has the pieces?", "Dialog9")
  139. Dialog.Start()
  140. end
  141. function Dialog9(NPC, Spawn)
  142. FaceTarget(NPC, Spawn)
  143. Dialog.New(NPC, Spawn)
  144. Dialog.AddDialog("Duh! The Bouncers have 'em. They was the stubborn type, ya know... each keepin' a piece so no one could fix the thing. They even carried the pieces with them when they went back on duty.")
  145. Dialog.AddVoiceover("voiceover/english/rumdum/fprt_east/quest_rumdum010.mp3", 1336738268, 1623567135)
  146. Dialog.AddOption("Duty? So they were in the Ogre militia? ", "Dialog10")
  147. Dialog.Start()
  148. end
  149. function Dialog1(NPC, Spawn)
  150. FaceTarget(NPC, Spawn)
  151. Dialog.New(NPC, Spawn)
  152. Dialog.AddDialog("What in Zek do you want? Can't ya see I'm drinkin' here...")
  153. Dialog.AddVoiceover("voiceover/english/rumdum/fprt_east/quest_rumdum001.mp3", 531525914, 2611919563)
  154. Dialog.AddOption("Well, I suppose you are getting some of it in your mouth. I'll leave you to your \"drinking.\"")
  155. Dialog.AddOption("Yes, I can see that... and smell it.", "Dialog2")
  156. if GetQuestStep(Spawn, TheSteinOfMoggok) == 5 then
  157. Dialog.AddOption("Hey, Rumdum. Remember me?", "Dialog12")
  158. elseif GetQuestStep(Spawn, TheSteinOfMoggok) == 7 then
  159. Dialog.AddOption("Rumdum, I'm back.", "Dialog22")
  160. end
  161. Dialog.Start()
  162. end
  163. function Dialog12(NPC, Spawn)
  164. FaceTarget(NPC, Spawn)
  165. Dialog.AddDialog("Hey! It's the nice kid! Uh ... you the nice kid, right?")
  166. Dialog.AddOption("Right. Say... if someone were to get the pieces of the stein... how would they fix it?", "Dialog13")
  167. Dialog.Start()
  168. end
  169. function Dialog13(NPC, Spawn)
  170. FaceTarget(NPC, Spawn)
  171. Dialog.AddDialog("Well... they should give it to me! It's supposed to be mine.")
  172. Dialog.AddOption("Oh... what if they wanted to fix it up as a surprise for you? Yeah, a surprise.", "Dialog14")
  173. Dialog.Start()
  174. end
  175. function Dialog14(NPC, Spawn)
  176. FaceTarget(NPC, Spawn)
  177. Dialog.AddDialog("First, they'd need to get a new Oggokian Blood Ruby for it. The old one was shattered in the Bouncer fight. Ya can't have a good stein without a good jewel or two in it, right?")
  178. Dialog.AddOption("Where would I... I mean \"they\"... get a Blood Ruby?", "Dialog15")
  179. Dialog.Start()
  180. end
  181. function Dialog15(NPC, Spawn)
  182. FaceTarget(NPC, Spawn)
  183. Dialog.AddDialog("Oh ... hmmm ... I know! Clurg always has an extra one around--in case he has to fix the stein. You should ask him for the ruby.")
  184. Dialog.AddOption("Isn't Clurg... dead?", "Dialog16")
  185. Dialog.Start()
  186. end
  187. function Dialog16(NPC, Spawn)
  188. FaceTarget(NPC, Spawn)
  189. Dialog.AddDialog("Oh, yeah.... When I have a little too much to drink I forget some stuff. Like, once I was drinkin' this troll stuff that tasted like tinker grease, but it sure did the job... I couldn't remember my name for a week... or was it a month?")
  190. Dialog.AddOption("You were saying something about the Blood Ruby?", "Dialog17")
  191. Dialog.Start()
  192. end
  193. function Dialog17(NPC, Spawn)
  194. FaceTarget(NPC, Spawn)
  195. Dialog.AddDialog("Wha? Hmm... oh yeah, the Oggokian Blood Ruby. Momma said that Clurg must have been buried with it or something. All his stuff was put into a bag and thrown in on top of him. It was a pretty small bag...")
  196. Dialog.AddOption("So where is the grave?", "Dialog18")
  197. Dialog.Start()
  198. end
  199. function Dialog18(NPC, Spawn)
  200. FaceTarget(NPC, Spawn)
  201. Dialog.AddDialog("He was buried under a lake... 'cause he was a bartender...")
  202. Dialog.AddOption("Uh... why bury a bartender under a lake?", "Dialog19")
  203. Dialog.Start()
  204. end
  205. function Dialog19(NPC, Spawn)
  206. FaceTarget(NPC, Spawn)
  207. Dialog.AddDialog("So he won't get thirsty, duh!")
  208. Dialog.AddOption("Right... so where is this lake?", "Dialog20")
  209. Dialog.Start()
  210. end
  211. function Dialog19(NPC, Spawn)
  212. FaceTarget(NPC, Spawn)
  213. Dialog.AddDialog("So he won't get thirsty, duh!")
  214. Dialog.AddOption("Right... so where is this lake?", "Dialog20")
  215. Dialog.Start()
  216. end
  217. function Dialog20(NPC, Spawn)
  218. FaceTarget(NPC, Spawn)
  219. Dialog.AddDialog("Oh, from what I've heard it's called Spilt Ale Lake and it's in the Feerrott")
  220. Dialog.AddOption("You mean I have to go back to the Feerrott?!", "Dialog21")
  221. Dialog.Start()
  222. end
  223. function Dialog21(NPC, Spawn)
  224. FaceTarget(NPC, Spawn)
  225. SetStepComplete(Spawn, TheSteinOfMoggok, 5)
  226. Dialog.AddDialog("Back? You been there before?")
  227. Dialog.AddOption("Uh... never mind. Enjoy your tenth ale of the morning.")
  228. Dialog.Start()
  229. end
  230. function Dialog22(NPC, Spawn)
  231. FaceTarget(NPC, Spawn)
  232. Dialog.AddDialog("Heya kid! You gonna buy me more ale?")
  233. Dialog.AddOption("Maybe later. Okay... if someone was able to get a Blood Ruby and the stein pieces how would they fix the stein?", "Dialog23")
  234. Dialog.Start()
  235. end
  236. function Dialog23(NPC, Spawn)
  237. FaceTarget(NPC, Spawn)
  238. Dialog.AddDialog("I know this... I know I do... You would use ... the family recipe! That's right! The family stein fixin' recipe! It's been past down from poppa to son ever since Clurg died.")
  239. Dialog.AddOption("Do you have this recipe?", "Dialog24")
  240. Dialog.Start()
  241. end
  242. function Dialog24(NPC, Spawn)
  243. FaceTarget(NPC, Spawn)
  244. Dialog.AddDialog("Of course I do! I have it right here!")
  245. Dialog.AddOption("You mean that soaked piece of parchment you've been setting your tankard on?!", "Dialog25")
  246. Dialog.Start()
  247. end
  248. function Dialog25(NPC, Spawn)
  249. FaceTarget(NPC, Spawn)
  250. Dialog.AddDialog("Uh, yeah... the bartender don't like the rings, ya know.")
  251. Dialog.AddOption("Can I borrow the recipe?", "Dialog26")
  252. Dialog.Start()
  253. end
  254. function Dialog26(NPC, Spawn)
  255. FaceTarget(NPC, Spawn)
  256. Dialog.AddDialog("This is a very precious recipe that's been in my family for generee... jenera... a long time.")
  257. if HasCoin(Spawn, 400) then
  258. Dialog.AddOption("I'll give you four silver so you can buy more ale.", "Dialog27")
  259. end
  260. Dialog.AddOption("Looks like I can't talk you out of it.")
  261. Dialog.Start()
  262. end
  263. function Dialog27(NPC, Spawn)
  264. RemoveCoin(Spawn, 400)
  265. SetStepComplete(Spawn, TheSteinOfMoggok, 7)
  266. FaceTarget(NPC, Spawn)
  267. Dialog.AddDialog("Sold!")
  268. Dialog.AddOption("Thanks Rumdum!")
  269. Dialog.Start()
  270. end
  271. function offer(NPC, Spawn)
  272. OfferQuest(NPC, Spawn, TheSteinOfMoggok)
  273. end