a_mystical_sphere.lua 5.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. --[[
  2. Script Name : ItemScripts/a_mystical_sphere.lua
  3. Script Purpose :Quest Stater for The Spirit's Release
  4. Script Author : Ememjr
  5. Script Date : 2019-10-07
  6. Script Notes :
  7. --]]
  8. local quest = 481
  9. local itemID = 2304
  10. function examined(Item, Player)
  11. conversation = CreateConversation()
  12. AddConversationOption(conversation, "Inspect", "dlg1")
  13. StartDialogConversation(conversation, 2, Item, Player, "A petrified heart.")
  14. if not HasQuest(Player, quest) and not HasCompletedQuest(Player, quest) then
  15. OfferQuest(nil, Player, quest)
  16. elseif HasQuest(Player, quest) and QuestStepIsComplete(Player, quest, 2) then
  17. SetStepComplete(Player, quest, 2)
  18. while HasItem(Player, itemID, 1) do
  19. RemoveItem(Player, itemID)
  20. end
  21. end
  22. end
  23. function obtained(Item, Player)
  24. if HasItem(Player, itemID) or GetItemCount(Item) > 1 then
  25. RemoveItem(Player, itemID)
  26. end
  27. end
  28. function dlg1(Item, Player)
  29. conversation = CreateConversation()
  30. AddConversationOption(conversation, "Inspect Further", "dlg2")
  31. StartDialogConversation(conversation, 2, Item, Player, "This humanoid heart has been petrified and scorched black. Every detail of the organ has been flawlessly preserved, revealing a distant former life and function. As cold and lifeless it may be now, it does not feel quite as stone to the touch. It is soft like chalk and leaves a residue of ash on your fingers.")
  32. end
  33. function dlg2(Item, Player)
  34. conversation = CreateConversation()
  35. AddConversationOption(conversation, "Inspect Orb", "dlg3")
  36. StartDialogConversation(conversation, 2, Item, Player, "As you continue to probe the heart with your curiosity, its seemingly sturdy form cracks and crumbles. Within a short moment, it falls away to dust in your grasp, leaving behind a pearl-sized metallic orb amidst the layer of black ash in your hand.")
  37. end
  38. function dlg3(Item, Player)
  39. conversation = CreateConversation()
  40. AddConversationOption(conversation, "Who are you?", "dlg4")
  41. StartDialogConversation(conversation, 2, Item, Player, "Your fingers touch the smooth, glossy surface of the metallic orb. Its once cool temperature suddenly becomes cold as ice, burning your fingers with the threat of frostbite. This sensation rushes through your arm and into your skull, bringing with it the distant echo of a desperate plea, ''Do not leave me to this tortured silence. Please, do not deny me vengeance!''")
  42. end
  43. function dlg4(Item, Player)
  44. conversation = CreateConversation()
  45. AddConversationOption(conversation, "What is the strength of the stone?", "dlg5")
  46. AddConversationOption(conversation, "What do you want me to avenge?", "dlg9")
  47. StartDialogConversation(conversation, 2, Item, Player, "''I am one among the dead and forgotten. This cannot be undone, but still I have need of you. Lend me your steel; let me guide it to vengeance! You will know great power in the end. I will show you the strength of the stone.''")
  48. end
  49. function dlg5(Item, Player)
  50. conversation = CreateConversation()
  51. AddConversationOption(conversation, "Who are your murderers?", "dlg6")
  52. AddConversationOption(conversation, "What do you want me to avenge?", "dlg9")
  53. StartDialogConversation(conversation, 2, Item, Player, "''I can show you. I will show you, but only in oblivion. I absorb the power. It sustains me but I cannot break free of it on my own. Kill my murderers and release their hold on me! That is the only way you will have this power.''")
  54. end
  55. function dlg6(Item, Player)
  56. conversation = CreateConversation()
  57. AddConversationOption(conversation, "What did they do to you?", "dlg7")
  58. AddConversationOption(conversation, "What did you do to earn this punishment?", "dlg8")
  59. StartDialogConversation(conversation, 2, Item, Player, "''The Netherot Chanters did this to me. They have a lab beneath the city where they are guarded by the Darkblades whom they serve. They must answer for what they have done to me. They must die! Please, lift this torturous spell. Let me know oblivion.''")
  60. end
  61. function dlg7(Item, Player)
  62. conversation = CreateConversation()
  63. AddConversationOption(conversation, "What did you do to earn this punishment?", "dlg8")
  64. StartDialogConversation(conversation, 2, Item, Player, "''I was a Darkblade once, but they found another use for me. They imprisoned me in my skeletal cage and bound my spirit to this stone. I still feel the pain of the ritual; the filthy sewer air still stings my naked heart. My own cries of agony still echo in this purgatory!''")
  65. end
  66. function dlg8(Item, Player)
  67. conversation = CreateConversation()
  68. AddConversationOption(conversation, "I will send you to oblivion, if that is your desire.", "dlg9")
  69. AddConversationOption(conversation, "I'd rather you dwell in your eternal misery.")
  70. StartDialogConversation(conversation, 2, Item, Player, "''I did nothing! I do not know why I was chosen for the pain, but it must end. Their deaths must break this spell. Kill them all. It is the only way. Do this and I will show you the strength of the stone.''")
  71. end
  72. function dlg9(Item, Player)
  73. conversation = CreateConversation()
  74. AddConversationOption(conversation, "Oh yes, they will suffer... and then they will die.")
  75. StartDialogConversation(conversation, 2, Item, Player, "''Yes... yes, my friend... my savior. Kill them. Kill the netherot chanters and release me!''")
  76. end