AmbassadorTKirr.lua 8.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. --[[
  2. Script Name : SpawnScripts/IsleRefuge1/AmbassadorTKirr.lua
  3. Script Author : Dorbin
  4. Script Date : 2022.08.30 03:08:00
  5. Script Purpose :
  6. :
  7. --]]
  8. require "SpawnScripts/Generic/DialogModule"
  9. local BARBARIAN = 0
  10. local DARK_ELF = 1
  11. local DWARF = 2
  12. local ERUDITE = 3
  13. local FROGLOK = 4
  14. local GNOME = 5
  15. local HALF_ELF = 6
  16. local HALFLING = 7
  17. local HIGH_ELF = 8
  18. local HUMAN = 9
  19. local IKSAR = 10
  20. local KERRA = 11
  21. local OGRE = 12
  22. local RATONGA = 13
  23. local TROLL = 14
  24. local WOOD_ELF = 15
  25. local FAE = 16
  26. local ARASAI = 17
  27. local SARNAK = 18
  28. local VAMPIRE = 19
  29. local AERAKYN = 20
  30. function spawn(NPC)
  31. ProvidesQuest(NPC,5758)
  32. end
  33. function respawn(NPC)
  34. spawn(NPC)
  35. end
  36. function hailed(NPC, Spawn)
  37. if GetClass(Spawn)>0 then
  38. if not HasQuest(Spawn,5758) and not HasQuest(Spawn,5717) and not HasCompletedQuest(Spawn,5758) and not HasCompletedQuest(Spawn,5717) and not HasItem(Spawn, 1414,1) and GetFactionAmount(Spawn,12) >=0 then
  39. if GetRace(Spawn) == BARBARIAN or GetRace(Spawn) == DARK_ELF or GetRace(Spawn) == ERUDITE or GetRace(Spawn) ==GNOME or GetRace(Spawn) == HALF_ELF or GetRace(Spawn) == HUMAN or GetRace(Spawn) == IKSAR or GetRace(Spawn) == KERRA or GetRace(Spawn) == OGRE or GetRace(Spawn) == RATONGA or GetRace(Spawn) == TROLL or GetRace(Spawn) == ARASAI or GetRace(Spawn) == SARNAK or GetRace(Spawn) == VAMPIRE or GetRace(Spawn) == AERAKYN then
  40. Dialog1(NPC, Spawn)
  41. else
  42. PlayFlavor(NPC,"voiceover/english/ambassador_t_kirr/tutorial_island02/ambassadortkirr003.mp3","Ignore this fair-skinned wench's lies! She knows nothing of Freeport!","no",1210422898,1324228526,Spawn) --NOT RIGHT RACE
  43. end
  44. elseif HasQuest(Spawn,5717)then
  45. PlayFlavor(NPC,"voiceover/english/ambassador_t_kirr/tutorial_island02/ambassadortkirr003.mp3","Ignore this fair-skinned wench's lies! She knows nothing of Freeport!","shakefist",1210422898,1324228526,Spawn) --POSSIBLE FREEPORTER ACCEPTED QEYNOS
  46. else
  47. PlayFlavor(NPC,"voiceover/english/island_of_refuge/ambassador_tkir/ior_ktir_002.mp3","Right, can't you tell I'm busy?","glare",1541998982,3704557731,Spawn) --DONE WITH AVAILBLE STEPS
  48. end
  49. else
  50. PlayFlavor(NPC,"voiceover/english/island_of_refuge/ambassador_tkir/ior_ktir_002.mp3","Right, can't you tell I'm busy?","stare",1541998982,3704557731,Spawn) --COMMONER RESPONSE
  51. end
  52. end
  53. function Dialog1(NPC, Spawn)
  54. FaceTarget(NPC, Spawn)
  55. Dialog.New(NPC, Spawn)
  56. Dialog.AddDialog("Auugghh! Just thinking of those lovely white doves flying around a beautiful moat and the way Qeynos citizens always have a smile... Gah! Just the thought disgusts me.")
  57. Dialog.AddVoiceover("voiceover/english/ambassador_t_kirr/tutorial_island02/ambassadortkirr001.mp3", 1545000454, 4086082448)
  58. PlayFlavor(NPC,"","","frustrated",0,0,Spawn)
  59. Dialog.AddOption("Umm, well what is Freeport like?", "Dialog2")
  60. Dialog.AddOption("You don't seem like a very nice person...","Dialog1a")
  61. Dialog.Start()
  62. end
  63. function Dialog1a(NPC, Spawn)
  64. FaceTarget(NPC, Spawn)
  65. Dialog.New(NPC, Spawn)
  66. Dialog.AddDialog("Listen here and listen well. If you want a real life, one with freedom, one with power, and of course one with riches, Freeport is the place for you!")
  67. Dialog.AddVoiceover("voiceover/english/island_of_refuge/ambassador_tkir/ior_ktir_007.mp3", 1473255226, 2922317764)
  68. PlayFlavor(NPC,"","","glare",0,0,Spawn)
  69. if GetRace(Spawn) == BARBARIAN or GetRace(Spawn) == ERUDITE or GetRace(Spawn) ==GNOME or GetRace(Spawn) == HALF_ELF or GetRace(Spawn) == HUMAN or GetRace(Spawn) == KERRA or GetRace(Spawn) == VAMPIRE or GetRace(Spawn) == AERAKYN then
  70. Dialog.AddOption("[continue]", "Dialog2a")
  71. else
  72. Dialog.AddOption("Then tell me more about it.", "Dialog3")
  73. end
  74. Dialog.AddOption("You had me at riches!", "Dialog3")
  75. Dialog.AddOption("I think I should be going...", "Sigh")
  76. Dialog.Start()
  77. end
  78. function Dialog2(NPC, Spawn)
  79. FaceTarget(NPC, Spawn)
  80. Dialog.New(NPC, Spawn)
  81. Dialog.AddDialog("Listen and listen well. If you want a real life, one with freedom, one with power, one with an opportunity to serve a greater cause, Freeport is your only choice.")
  82. Dialog.AddVoiceover("voiceover/english/ambassador_t_kirr/tutorial_island02/ambassadortkirr002.mp3", 4073129922, 2847751764)
  83. PlayFlavor(NPC,"","","scold",0,0,Spawn)
  84. if GetRace(Spawn) == BARBARIAN or GetRace(Spawn) == ERUDITE or GetRace(Spawn) ==GNOME or GetRace(Spawn) == HALF_ELF or GetRace(Spawn) == HUMAN or GetRace(Spawn) == KERRA or GetRace(Spawn) == VAMPIRE or GetRace(Spawn) == AERAKYN then
  85. Dialog.AddOption("[continue]", "Dialog2a")
  86. else
  87. Dialog.AddOption("Then tell me more about it.", "Dialog3")
  88. end
  89. Dialog.Start()
  90. end
  91. function Dialog2a(NPC, Spawn)
  92. FaceTarget(NPC, Spawn)
  93. Dialog.New(NPC, Spawn)
  94. Dialog.AddDialog("Ignore this fair-skinned wench's lies! She knows nothing of Freeport!")
  95. Dialog.AddVoiceover("voiceover/english/ambassador_t_kirr/tutorial_island02/ambassadortkirr003.mp3", 1210422898,1324228526)
  96. PlayFlavor(NPC,"","","no",0,0,Spawn)
  97. Dialog.AddOption("Then tell me more about it.", "Dialog3")
  98. Dialog.AddOption("She might not, but I have to consider this.")
  99. Dialog.Start()
  100. end
  101. function Dialog3(NPC, Spawn)
  102. FaceTarget(NPC, Spawn)
  103. Dialog.New(NPC, Spawn)
  104. Dialog.AddDialog("My words intrigue you... good.")
  105. Dialog.AddVoiceover("voiceover/english/ambassador_t_kirr/tutorial_island02/ambassadortkirr004.mp3", 2159575268, 1334539968)
  106. PlayFlavor(NPC,"","","nod",0,0,Spawn)
  107. Dialog.AddOption("[continue]", "Dialog4")
  108. Dialog.Start()
  109. end
  110. function Dialog4(NPC, Spawn)
  111. FaceTarget(NPC, Spawn)
  112. Dialog.New(NPC, Spawn)
  113. Dialog.AddDialog("Well then, let me continue. Our great Overlord rules Freeport with a watchful eye and an iron fist. With his strength guiding us, Freeport easily defends its walls against both orcish hordes and ruthless cutthroats. A lesser city would have been destroyed long ago.")
  114. Dialog.AddVoiceover("voiceover/english/ambassador_t_kirr/tutorial_island02/ambassadortkirr005.mp3", 365161424, 1294590918)
  115. Dialog.AddOption("[continue]", "Dialog5")
  116. Dialog.Start()
  117. end
  118. function Dialog5(NPC, Spawn)
  119. FaceTarget(NPC, Spawn)
  120. Dialog.New(NPC, Spawn)
  121. Dialog.AddDialog("So what do you think? Do you possess the strength to live in the greatest city in Norrath? Is your will strong enough to see your way through the troubled times ahead? Or are you a smiling do-gooder who prefers frolicking in the streets of a softer city?")
  122. Dialog.AddVoiceover("voiceover/english/ambassador_t_kirr/tutorial_island02/ambassadortkirr007.mp3", 3785883027, 2697291122)
  123. PlayFlavor(NPC,"","","tapfoot",0,0,Spawn)
  124. Dialog.AddOption("I'm born and bred to lead. How do I get to Freeport?", "Dialog6")
  125. Dialog.AddOption("I think I'll weigh my options a bit first.")
  126. Dialog.Start()
  127. end
  128. function Dialog6(NPC, Spawn)
  129. if GetClientVersion(Spawn) <= 546 then
  130. local con = CreateConversation()
  131. if GetClass(Spawn)==1 then
  132. AddConversationOption(con, ""..GetName(Spawn).." the Fighter", "Dialog7")
  133. elseif GetClass(Spawn)==11 then
  134. AddConversationOption(con, ""..GetName(Spawn).." the Priest", "Dialog7")
  135. elseif GetClass(Spawn)==21 then
  136. AddConversationOption(con, ""..GetName(Spawn).." the Mage", "Dialog7")
  137. elseif GetClass(Spawn)==31 then
  138. AddConversationOption(con, ""..GetName(Spawn).." the Scout", "Dialog7")
  139. else
  140. AddConversationOption(con, ""..GetName(Spawn).."", "Dialog7")
  141. end
  142. AddConversationOption(con, "On second thought, I need to reconsider.","CloseConversation")
  143. StartDialogConversation(con, 1, NPC, Spawn, "-----------------------------------------\n Declaration to The Overlord \n-----------------------------------------\nI \""..GetName(Spawn).."\" pledge myself to \nOverlord Lucan D'Lere\nThe Lord and Ruler over\nThe City of Freeport\n\nMy actions shall be judged as a testament of Freeport's might, determination, and opportunity.\n\nBy the Overlord's will.\n\nSigned,")
  144. else window = CreateOptionWindow();
  145. AddOptionWindowOption(window, " Pledge allegiance to Freeport", "Dedicate yourself to the City of Freeport and to its leader, Overlord Lucan D'lere. [This decision is final!]", 2, 16, "Dialog7")
  146. AddOptionWindowOption(window, " Reconsider", "Rescind your request. Return to Ambassador T'Kirr if you decide Freeport is right for you.", 2, 13, "Sigh")
  147. SendOptionWindow(window, Spawn, "Pledge allegiance to Freeport?", "Cancel")
  148. end
  149. end
  150. function Dialog7(NPC, Spawn)
  151. OfferQuest(NPC,Spawn,5758)
  152. FaceTarget(NPC,Spawn)
  153. end
  154. function Sigh(NPC, Spawn)
  155. PlayFlavor(NPC,"voiceover/english/island_of_refuge/ambassador_tkir/ior_ktir_002.mp3","Right, can't you tell I'm busy?","stare",1541998982,3704557731,Spawn)
  156. FaceTarget(NPC,Spawn)
  157. end