ArgroDurthor.lua 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290
  1. --[[
  2. Script Name : SpawnScripts/ButcherblockMountains/ArgroDurthor.lua
  3. Script Purpose : Argro Durthor <Irontoe Brigade Recruit>
  4. Script Author : jakejp
  5. Script Date : 2018.06.08
  6. Script Notes : Auto-Generated Conversation from PacketParser Data
  7. --]]
  8. local TheYarpsnarls = 280
  9. local TheManyUsesOfCarapace = 281
  10. local IrontoeBrigadeRequisitionLists = 282
  11. local DeliveryToVerung
  12. function spawn(NPC)
  13. ProvidesQuest(NPC, TheYarpsnarls)
  14. ProvidesQuest(NPC, TheManyUsesOfCarapace)
  15. ProvidesQuest(NPC, IrontoeBrigadeRequisitionLists)
  16. ProvidesQuest(NPC, DeliveryToVerung)
  17. end
  18. function respawn(NPC)
  19. spawn(NPC)
  20. end
  21. function hailed(NPC, Spawn)
  22. FaceTarget(NPC, Spawn)
  23. conversation = CreateConversation()
  24. if HasCompletedQuest(Spawn, TheYarpsnarls) == false and HasQuest(Spawn, TheYarpsnarls) == false and CanReceiveQuest(Spawn, TheYarpsnarls) == true then
  25. PlayFlavor(NPC, "voiceover/english/voice_emotes/greetings/greetings_2_1010.mp3", "", "", 0, 0, Spawn)
  26. AddConversationOption(conversation, "I am " .. GetName(Spawn) .. ". What do you mean, 'convenient'?", "dlg_3_1")
  27. StartConversation(conversation, NPC, Spawn, "Well met! Argro Durthor's the name, right convenient to meet you.")
  28. elseif GetQuestStep(Spawn, TheYarpsnarls) == 1 or GetQuestStep(Spawn, TheYarpsnarls) == 2 then
  29. PlayFlavor(NPC, "voiceover/english/voice_emotes/greetings/greetings_2_1010.mp3", "", "", 0, 0, Spawn)
  30. AddConversationOption(conversation, "Not yet.")
  31. StartConversation(conversation, NPC, Spawn, "Have you taken care of the kobolds?")
  32. elseif GetQuestStep(Spawn, TheYarpsnarls) == 3 then
  33. PlayFlavor(NPC, "voiceover/english/voice_emotes/greetings/greetings_2_1004.mp3", "", "", 0, 0, Spawn)
  34. AddConversationOption(conversation, "I have.", "dlg_16_1")
  35. StartConversation(conversation, NPC, Spawn, "Have you taken care of the kobolds?")
  36. elseif HasCompletedQuest(Spawn, TheManyUsesOfCarapace) == false and HasQuest(Spawn, TheManyUsesOfCarapace) == false and CanReceiveQuest(Spawn, TheManyUsesOfCarapace) == true then
  37. PlayFlavor(NPC, "voiceover/english/voice_emotes/greetings/greetings_2_1004.mp3", "", "", 0, 0, Spawn)
  38. AddConversationOption(conversation, "I have.", "dlg_16_1")
  39. StartConversation(conversation, NPC, Spawn, "Have you taken care of the kobolds?")
  40. elseif GetQuestStep(Spawn, TheManyUsesOfCarapace) == 1 then
  41. PlayFlavor(NPC, "voiceover/english/voice_emotes/greetings/greetings_2_1004.mp3", "", "", 0, 0, Spawn)
  42. AddConversationOption(conversation, "Not yet.")
  43. StartConversation(conversation, NPC, Spawn, "Have you gathered the materials?")
  44. elseif GetQuestStep(Spawn, TheManyUsesOfCarapace) == 2 then
  45. PlayFlavor(NPC, "voiceover/english/voice_emotes/greetings/greetings_1_1004.mp3", "", "", 0, 0, Spawn)
  46. AddConversationOption(conversation, "Yup, here you go.", "dlg_0_1")
  47. StartConversation(conversation, NPC, Spawn, "Have you gathered the materials?")
  48. elseif HasCompletedQuest(Spawn, IrontoeBrigadeRequisitionLists) == false and HasQuest(Spawn, IrontoeBrigadeRequisitionLists) == false and CanReceiveQuest(Spawn, IrontoeBrigadeRequisitionLists) == true then
  49. PlayFlavor(NPC, "voiceover/english/voice_emotes/greetings/greetings_1_1004.mp3", "", "", 0, 0, Spawn)
  50. AddConversationOption(conversation, "Yup, here you go.", "dlg_0_1")
  51. StartConversation(conversation, NPC, Spawn, "Have you gathered the materials?")
  52. elseif GetQuestStep(Spawn, IrontoeBrigadeRequisitionLists) <= 1 and GetQuestStep(Spawn, IrontoeBrigadeRequisitionLists) >= 3 then
  53. PlayFlavor(NPC, "voiceover/english/voice_emotes/greetings/greetings_3_1004.mp3", "", "", 0, 0, Spawn)
  54. AddConversationOption(conversation, "I haven't collected them yet.")
  55. StartConversation(conversation, NPC, Spawn, "Do you have the requisition lists?")
  56. elseif GetQuestStep(Spawn, IrontoeBrigadeRequisitionLists) == 4 then
  57. PlayFlavor(NPC, "voiceover/english/voice_emotes/greetings/greetings_3_1004.mp3", "", "", 0, 0, Spawn)
  58. AddConversationOption(conversation, "Yes, I do.", "dlg_4_1")
  59. StartConversation(conversation, NPC, Spawn, "Do you have the requisition lists?")
  60. elseif HasCompletedQuest(Spawn, DeliveryToVerung) == false and HasQuest(Spawn, DeliveryToVerung) == false and CanReceiveQuest(Spawn, DeliveryToVerung) == true then
  61. PlayFlavor(NPC, "voiceover/english/voice_emotes/greetings/greetings_3_1004.mp3", "", "", 0, 0, Spawn)
  62. AddConversationOption(conversation, "Yes, I do.", "dlg_4_1")
  63. StartConversation(conversation, NPC, Spawn, "Do you have the requisition lists?")
  64. elseif GetQuestStep(Spawn, DeliveryToVerung) == 1 then
  65. PlayFlavor(NPC, "voiceover/english/voice_emotes/greetings/greetings_3_1004.mp3", "", "", 0, 0, Spawn)
  66. Say(NPC, "Thanks again for all yer help!")
  67. elseif HasCompletedQuest(Spawn, DeliveryToVerung) then
  68. PlayFlavor(NPC, "voiceover/english/voice_emotes/greetings/greetings_3_1004.mp3", "", "", 0, 0, Spawn)
  69. Say(NPC, "Thanks again for all yer help!")
  70. end
  71. end
  72. function dlg_0_1(NPC, Spawn)
  73. FaceTarget(NPC, Spawn)
  74. conversation = CreateConversation()
  75. if HasQuest(Spawn, TheManyUsesOfCarapace) then
  76. SetStepComplete(Spawn, TheManyUsesOfCarapace, 2)
  77. end
  78. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  79. AddConversationOption(conversation, "Sure, what do you need?", "dlg_0_2")
  80. StartConversation(conversation, NPC, Spawn, "Ah, excellent. These will do nicely. I'd like to get started on creating the armor as soon as possible. Would you mind doing another favor for me while I work on this?")
  81. end
  82. function dlg_0_2(NPC, Spawn)
  83. FaceTarget(NPC, Spawn)
  84. conversation = CreateConversation()
  85. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  86. AddConversationOption(conversation, "So I have to find out what the miners need?", "dlg_0_3")
  87. StartConversation(conversation, NPC, Spawn, "In the area south of here, on the south eastern wall there is a cave. In these caves we have a number of miners extracting minerals. We use these minerals for--well, that's not important, at least not to me so I never bothered to learn what we use the minerals for. The important thing is that I've been tasked with collecting the requisition forms from the miners. If we don't keep the miners supplied then they can't work, obviously.")
  88. end
  89. function dlg_0_3(NPC, Spawn)
  90. FaceTarget(NPC, Spawn)
  91. conversation = CreateConversation()
  92. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  93. AddConversationOption(conversation, "All right.", "GiveIrontoeBrigadeRequisitionLists")
  94. AddConversationOption(conversation, "You will have to find someone else for this task.")
  95. StartConversation(conversation, NPC, Spawn, "Yeah, but it's not as hard as it sounds. There are three dig supervisors in the caves, one for each section. Among other things, they are tasked with having and maintaining these requisition lists. All you need to do is find the supervisors and collect the lists from them.")
  96. end
  97. function dlg_0_4(NPC, Spawn)
  98. FaceTarget(NPC, Spawn)
  99. conversation = CreateConversation()
  100. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  101. AddConversationOption(conversation, "Ok.", "dlg_0_5")
  102. StartConversation(conversation, NPC, Spawn, "Once you get the lists, bring them back to me.")
  103. end
  104. function dlg_3_1(NPC, Spawn)
  105. FaceTarget(NPC, Spawn)
  106. conversation = CreateConversation()
  107. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  108. AddConversationOption(conversation, "Just in time for what?", "dlg_3_2")
  109. StartConversation(conversation, NPC, Spawn, "Well you're here just in time!")
  110. end
  111. function dlg_3_2(NPC, Spawn)
  112. FaceTarget(NPC, Spawn)
  113. conversation = CreateConversation()
  114. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  115. AddConversationOption(conversation, "What do you want of me?", "dlg_3_3")
  116. AddConversationOption(conversation, "Absolutely not! Find yourself another sentient shield.")
  117. StartConversation(conversation, NPC, Spawn, "For the dwarven reclamation of Kaladim, of course! We're on the eve of it, .. GetName(Spawn) .. , and soon no dwarf will have to settle for living anywhere else. Er, well not literally on the eve. Make no mistake we've still got plenty of hard years of work ahead of us, but the day will come when Kaladim will once again be ours. And you're in the right place at the right time to do your part, what do you say?")
  118. end
  119. function dlg_3_3(NPC, Spawn)
  120. FaceTarget(NPC, Spawn)
  121. conversation = CreateConversation()
  122. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  123. AddConversationOption(conversation, "So what do I need to do?", "dlg_3_4")
  124. StartConversation(conversation, NPC, Spawn, "The first order of business involves cleaning up the Butcherblock Mountains. I am but one of many tasked with such a project, we have other projects as well but the most pressing one is to make Butcherblock safe. Kobolds, bugbears, goblins, sirens, aviaks--these all have some hold on Butcherblock. It is our job to lessen their hold and prepare for our eventual liberation of Kaladim.")
  125. end
  126. function dlg_3_4(NPC, Spawn)
  127. FaceTarget(NPC, Spawn)
  128. conversation = CreateConversation()
  129. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  130. AddConversationOption(conversation, "Okay, I'll take them out.", "GiveTheYarpsnarls")
  131. StartConversation(conversation, NPC, Spawn, "If you'd like to help me we can start with the Yarpsnarl kobolds. They are all over Butcherblock, but east of here it is very common to run into some of their lesser ranks: lookouts and ravagers. While taking them out won't topple the kobold army, it will keep them on the defensive in this region.")
  132. end
  133. function dlg_3_5(NPC, Spawn)
  134. FaceTarget(NPC, Spawn)
  135. conversation = CreateConversation()
  136. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  137. AddConversationOption(conversation, "I'll be back.")
  138. StartConversation(conversation, NPC, Spawn, "That's what I like to hear!")
  139. end
  140. function dlg_4_1(NPC, Spawn)
  141. FaceTarget(NPC, Spawn)
  142. conversation = CreateConversation()
  143. if HasQuest(Spawn, IrontoeBrigadeRequisitionLists) then
  144. SetStepComplete(Spawn, IrontoeBrigadeRequisitionLists, 4)
  145. end
  146. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  147. AddConversationOption(conversation, "Thank you. What favor is that?", "dlg_4_2")
  148. StartConversation(conversation, NPC, Spawn, "Ah good work! I appreciate all the help you've given me. Here, please, take one of these as a token of my gratitude. If you could do one last favor for me I'd be ever-grateful.")
  149. end
  150. function dlg_4_2(NPC, Spawn)
  151. FaceTarget(NPC, Spawn)
  152. conversation = CreateConversation()
  153. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  154. AddConversationOption(conversation, "Ok, I'll drop these off with him.", "GiveDeliveryToVerung")
  155. StartConversation(conversation, NPC, Spawn, "These requisition lists need to get to Verung Kae'Rush at the western Irontoe Brigade outpost. In the eastern outpost--just south east of here--there is a tunnel that will take you to the western outpost.")
  156. end
  157. function dlg_4_3(NPC, Spawn)
  158. FaceTarget(NPC, Spawn)
  159. conversation = CreateConversation()
  160. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  161. AddConversationOption(conversation, "Ok.")
  162. StartConversation(conversation, NPC, Spawn, "Verung is my commanding officer, so try not to mention how much you helped me if you can avoid it.")
  163. end
  164. function dlg_16_1(NPC, Spawn)
  165. FaceTarget(NPC, Spawn)
  166. conversation = CreateConversation()
  167. if HasQuest(Spawn, TheYarpsnarls) then
  168. SetStepComplete(Spawn, TheYarpsnarls, 3)
  169. end
  170. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  171. AddConversationOption(conversation, "Why not?", "dlg_16_2")
  172. StartConversation(conversation, NPC, Spawn, "Great! If we keep the kobolds busy defending then we'll have an easier time building and training an army to retake Kaladim. That's another thing I've volunteered to help with, the creation of the army. I've been tasked with coming up with 'non-standard' methods of outfitting an army for combat. By 'nonstandard' they mean cheap. But that doesn't worry Ol' Argro...")
  173. end
  174. function dlg_16_2(NPC, Spawn)
  175. FaceTarget(NPC, Spawn)
  176. conversation = CreateConversation()
  177. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  178. AddConversationOption(conversation, "To use for armor?", "dlg_16_3")
  179. StartConversation(conversation, NPC, Spawn, "Since time began wars have been fought and more often than not the soldiers didn't have access to refined metals and hot forges. They made do with what they had available to them, and that's what I intend to do. West of here, in front of Kaladim herself, there's a large number of beetles. I need you to collect some of their carapaces for me!")
  180. end
  181. function dlg_16_3(NPC, Spawn)
  182. FaceTarget(NPC, Spawn)
  183. conversation = CreateConversation()
  184. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  185. AddConversationOption(conversation, "I'll go see what I can gather.", "GiveTheManyUsesOfCarapace")
  186. AddConversationOption(conversation, "Get someone else to smash your bugs.")
  187. StartConversation(conversation, NPC, Spawn, "Exactly! In my experience the harder shells come from the smaller beetles: the ones we call the stone and granite beetles--obviously they got those names for a reason, eh? Anyway, I'd like ten of each carapace type, that should be enough to come up with some armor sets I can propose to my uppers. If they like it, maybe I'll become famous! 'Argro's Armor,' they'll say, 'the recapture of Kaladim wasn't possible without it!'")
  188. end
  189. function dlg_16_4(NPC, Spawn)
  190. FaceTarget(NPC, Spawn)
  191. conversation = CreateConversation()
  192. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  193. AddConversationOption(conversation, "All right, all right.", "dlg_16_5")
  194. StartConversation(conversation, NPC, Spawn, "'Why, if it wasn't for Argro, we might still be living out in the Butcherblock mountains, or worse still Freeport! Oh, that Argro, he sure did attract the ladies--even the non dwarven ones!'")
  195. end
  196. function dlg_19_1(NPC, Spawn)
  197. FaceTarget(NPC, Spawn)
  198. conversation = CreateConversation()
  199. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  200. AddConversationOption(conversation, "Just in time for what?", "dlg_19_2")
  201. StartConversation(conversation, NPC, Spawn, "Well you're here just in time!")
  202. end
  203. function dlg_19_2(NPC, Spawn)
  204. FaceTarget(NPC, Spawn)
  205. conversation = CreateConversation()
  206. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  207. AddConversationOption(conversation, "What do you want of me?", "dlg_19_3")
  208. StartConversation(conversation, NPC, Spawn, "For the dwarven reclamation of Kaladim, of course! We're on the eve of it, Calisharoo, and soon no dwarf will have to settle for living anywhere else. Er, well not literally on the eve. Make no mistake we've still got plenty of hard years of work ahead of us, but the day will come when Kaladim will once again be ours. And you're in the right place at the right time to do your part, what do you say?")
  209. end
  210. function dlg_19_3(NPC, Spawn)
  211. FaceTarget(NPC, Spawn)
  212. conversation = CreateConversation()
  213. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  214. AddConversationOption(conversation, "So what do I need to do?", "dlg_19_4")
  215. StartConversation(conversation, NPC, Spawn, "The first order of business involves cleaning up the Butcherblock Mountains. I am but one of many tasked with such a project, we have other projects as well but the most pressing one is to make Butcherblock safe. Kobolds, bugbears, goblins, sirens, aviaks--these all have some hold on Butcherblock. It is our job to lessen their hold and prepare for our eventual liberation of Kaladim.")
  216. end
  217. function dlg_19_4(NPC, Spawn)
  218. FaceTarget(NPC, Spawn)
  219. conversation = CreateConversation()
  220. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  221. AddConversationOption(conversation, "Ok, I'll take them out.", "dlg_19_5")
  222. StartConversation(conversation, NPC, Spawn, "If you'd like to help me we can start with the Yarpsnarl kobolds. They are all over Butcherblock, but east of here it is very common to run into some of their lesser ranks: lookouts and ravagers. While taking them out won't topple the kobold army, it will keep them on the defensive in this region.")
  223. end
  224. function dlg_19_5(NPC, Spawn)
  225. FaceTarget(NPC, Spawn)
  226. conversation = CreateConversation()
  227. PlayFlavor(NPC, "", "", "", 0, 0, Spawn)
  228. AddConversationOption(conversation, "I'll be back.", "dlg_19_6")
  229. StartConversation(conversation, NPC, Spawn, "That's what I like to hear!")
  230. end
  231. function GiveTheYarpsnarls(NPC, Spawn)
  232. OfferQuest(NPC, Spawn, TheYarpsnarls)
  233. end
  234. function GiveTheManyUsesOfCarapace(NPC, Spawn)
  235. OfferQuest(NPC, Spawn, TheManyUsesOfCarapace)
  236. end
  237. function GiveIrontoeBrigadeRequisitionLists(NPC, Spawn)
  238. OfferQuest(NPC, Spawn, IrontoeBrigadeRequisitionLists)
  239. end
  240. function GiveDeliveryToVerung(NPC, Spawn)
  241. OfferQuest(NPC, Spawn, DeliveryToVerung)
  242. end