KanosXaphon.lua 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. --[[
  2. Script Name : SpawnScripts/Freeport/KanosXaphon.lua
  3. Script Author : Premierio015
  4. Script Date : 2021.06.03 09:06:46
  5. Script Purpose :
  6. :
  7. --]]
  8. local KeyToFallenGate = 5252
  9. function spawn(NPC)
  10. AddSpawnAccess(NPC, NPC)
  11. ProvidesQuest(NPC, KeyToFallenGate)
  12. SetPlayerProximityFunction(NPC, 15, "InRange")
  13. end
  14. function InRange(NPC, Spawn)
  15. if GetQuestStep(Spawn, KeyToFallenGate) == 5 then
  16. RemoveSpawnAccess(NPC, Spawn)
  17. else
  18. AddSpawnAccess(NPC, Spawn)
  19. end
  20. end
  21. function hailed(NPC, Spawn)
  22. FaceTarget(NPC, Spawn)
  23. local conversation = CreateConversation()
  24. if not HasQuest(Spawn, KeyToFallenGate) and not HasCompletedQuest(Spawn, KeyToFallenGate ) then
  25. AddConversationOption(conversation, "You underestimate me. I have the ability.", "Option1")
  26. elseif GetQuestStep(Spawn, KeyToFallenGate) == 4 then
  27. AddConversationOption(conversation, "I've the information you need from Tundis N'oxyle.", "Option4")
  28. elseif GetQuestStep(Spawn, KeyToFallenGate) == 6 then
  29. AddConversationOption(conversation, "The deed is done, as you can see.", "Option8")
  30. end
  31. AddConversationOption(conversation, "Okay, I'm going.")
  32. StartConversation(conversation, NPC, Spawn, "You mean nothing to me, whelp. I seek one with ability enough to do my bidding. Now, back out the door whence you came with your tail between your legs before I disembowel you and leave your entrails for the vermin infesting this filthy human city.")
  33. PlayFlavor(NPC, "voiceover/english/optional1/kanos_x_aphon/fprt_north/kanosxaphon000.mp3", "", "", 2038969056, 4166254179, Spawn)
  34. end
  35. function Option1(NPC, Spawn)
  36. FaceTarget(NPC, Spawn)
  37. local conversation = CreateConversation()
  38. AddConversationOption(conversation, "Any task you have, I can manage.", "Option2")
  39. AddConversationOption(conversation, "I think you're the one with delusions of grandeur - I'm going now.")
  40. StartConversation(conversation, NPC, Spawn, "I've no problem sending you to your death, if you seek it so quickly. Now, are you sure you possess the fortitude to attempt what I need done? Or are you just another simpering coward, emboldened by a sword in the hand and the delusion of your own greatness?")
  41. PlayFlavor(NPC, "voiceover/english/optional1/kanos_x_aphon/fprt_north/kanosxaphon001.mp3", "", "", 3055364853, 457504919, Spawn)
  42. end
  43. function Option2(NPC, Spawn)
  44. FaceTarget(NPC, Spawn)
  45. local conversation = CreateConversation()
  46. AddConversationOption(conversation, "Why don't you just join their cause?", "Option3")
  47. StartConversation(conversation, NPC, Spawn, "Then listen closely. Attention to detail is essential. I need a key to the Fallen Gate, and you're going to find one for me. Too long have I been away from my home, and those foolish Thexian loyalists have finally found a way back into Neriak ... or at least, that's what my informants told me.")
  48. PlayFlavor(NPC, "voiceover/english/optional1/kanos_x_aphon/fprt_north/kanosxaphon002.mp3", "", "", 3454315360, 3694713407, Spawn)
  49. end
  50. function Option3(NPC, Spawn)
  51. FaceTarget(NPC, Spawn)
  52. local conversation = CreateConversation()
  53. AddConversationOption(conversation, "So what do you need me for?", "offer")
  54. StartConversation(conversation, NPC, Spawn, "I've not invited you to ask questions! Hold your tongue. I do not desire to see the Thex dynasty restored. I bear no love for those spineless worms. I'm certain they're the reason Neriak fell in the first place. What I do desire is to return to the halls of my birth with my bloody blade in hand and a prayer to Innoruuk on my lips.")
  55. PlayFlavor(NPC, "voiceover/english/optional1/kanos_x_aphon/fprt_north/kanosxaphon003.mp3", "", "", 2172761836, 3484681636, Spawn)
  56. end
  57. function Option4(NPC, Spawn)
  58. FaceTarget(NPC, Spawn)
  59. local conversation = CreateConversation()
  60. AddConversationOption(conversation, "There is to be a ceremony to grant me a key, along with entrance to the Thexian Loyalists.", "Option5")
  61. StartConversation(conversation, NPC, Spawn, "Perhaps you've more mettle than I gave you credit. The common weakness of the trash who dwell in this city has jaded me to the possibility that some gutter filth are not completely worthless. If you've information, out with it.")
  62. PlayFlavor(NPC, "voiceover/english/optional1/kanos_x_aphon/fprt_north/kanosxaphon005.mp3", "", "", 3836396074, 2873645226, Spawn)
  63. end
  64. function Option5(NPC, Spawn)
  65. SetStepComplete(Spawn, KeyToFallenGate, 4)
  66. FaceTarget(NPC, Spawn)
  67. local conversation = CreateConversation()
  68. PlayFlavor(NPC, "voiceover/english/optional1/kanos_x_aphon/fprt_north/kanosxaphon006.mp3", "", "", 1877907692, 3714053371, Spawn)
  69. AddConversationOption(conversation, "Your bidding will be done.", "Option6")
  70. StartConversation(conversation, NPC, Spawn, "Lucan himself could not have ordained a better time! You will go to this meeting. Slaughter every Thexian you come across and take a key for yourself as well as one for me. I will be along as soon as I am able. I have other matters to attend. I'm willing to venture that you alone cannot complete this task. I hope you have friends who are willing to assist..")
  71. end
  72. function Option6(NPC, Spawn)
  73. FaceTarget(NPC, Spawn)
  74. local conversation = CreateConversation()
  75. AddConversationOption(conversation, "I am ready to go now.", "Option7")
  76. AddConversationOption(conversation, "Give me a few moments to gather my allies.")
  77. StartConversation(conversation, NPC, Spawn, "Will it? Very well. I'll lead you to the place, from there you're on your own. I've other interests to attend in the meantime.")
  78. PlayFlavor(NPC, "voiceover/english/optional1/kanos_x_aphon/fprt_north/kanosxaphon009.mp3", "", "", 1745935557, 27393405, Spawn)
  79. end
  80. function Option7(NPC, Spawn)
  81. FaceTarget(NPC, Spawn)
  82. local conversation = CreateConversation()
  83. AddConversationOption(conversation, "I've got a bad feeling about this...", "ZoneToMeeting")
  84. StartConversation(conversation, NPC, Spawn, "Come then, I'll show you where you need to go.")
  85. PlayFlavor(NPC, "voiceover/english/optional1/kanos_x_aphon/fprt_north/kanosxaphon008.mp3", "", "", 1609094361, 3304823341, Spawn)
  86. end
  87. function Option8(NPC, Spawn)
  88. SetStepComplete(Spawn, KeyToFallenGate, 6)
  89. FaceTarget(NPC, Spawn)
  90. local conversation = CreateConversation()
  91. AddConversationOption(conversation, "Why you... I oughta... GAH!", "ZoneToFreeport")
  92. StartConversation(conversation, NPC, Spawn, "Well done! You served me well. I'll have more work for you in the future. In the meantime, go far from here. I will clean up this mess and make certain that no one hears of what transpired today ... so long as you continue to do my bidding, of course.")
  93. PlayFlavor(NPC, "voiceover/english/kanos_x_aphon/fprt_north/kanosxaphon010.mp3", "", "", 2746547542, 1484917117, Spawn)
  94. end
  95. function ZoneToMeeting(NPC, Spawn)
  96. Zone(GetZone(473), Spawn)
  97. end
  98. function ZoneToFreeport(NPC, Spawn)
  99. Zone(GetZone(559), Spawn)
  100. end
  101. function offer(NPC, Spawn)
  102. OfferQuest(NPC, Spawn, KeyToFallenGate)
  103. end
  104. function respawn(NPC)
  105. spawn(NPC)
  106. end