a_sandy_bone_shard.lua 4.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. --[[
  2. Script Name : Quests/IsleofRefuge/a_sandy_bone_shard.lua
  3. Script Author : Dorbin
  4. Script Date : 2022.09.16 04:09:01
  5. Script Purpose : CLASSIC version of this quest. Has item dialog associated with each step.
  6. Zone : IsleofRefuge
  7. Quest Giver: a sandy bone shard
  8. Preceded by: None
  9. Followed by:
  10. --]]
  11. function Init(Quest)
  12. AddQuestStepKill(Quest, 1, "I should try to see if other crabs have more missing pieces to the token.", 5, 80, "I need to find the other pieces to the shattered token.", 1085, 3250065,3250092,3250068,3250091)
  13. AddQuestStepCompleteAction(Quest, 1, "Step1Complete")
  14. end
  15. function Accepted(Quest, QuestGiver, Player)
  16. end
  17. function Declined(Quest, QuestGiver, Player)
  18. -- Add dialog here for when the quest is declined
  19. end
  20. function Deleted(Quest, QuestGiver, Player)
  21. -- Remove any quest specific items here when the quest is deleted
  22. end
  23. function Step1Complete(Quest, QuestGiver, Player)
  24. UpdateQuestStepDescription(Quest, 1, "I have found the remaining pieces.")
  25. UpdateQuestTaskGroupDescription(Quest, 1, "I have found the remaining pieces.")
  26. AddQuestStep(Quest,2," I should examine the shard again.",1, 100,"I have found the remaining pieces. I should examine the shard again.", 1085)
  27. AddQuestStepCompleteAction(Quest, 2, "Step2Complete")
  28. end
  29. function Step2Complete(Quest, QuestGiver, Player)
  30. UpdateQuestStepDescription(Quest, 2, "I have examined the pieces.")
  31. UpdateQuestTaskGroupDescription(Quest, 2, "I have examined the pieces.")
  32. AddQuestStepKill(Quest, 3, "I should find some fish to make glue from.", 6, 80, "The easiest and nearest source of glue is probably the skin off the fish that can be found in the waters near the docks. I should collect a few.", 2540, 3250101,3250056,3250157,3250158,3250159, 3250162,3250160)
  33. AddQuestStepCompleteAction(Quest, 3, "Step3Complete")
  34. end
  35. function Step3Complete(Quest, QuestGiver, Player)
  36. UpdateQuestStepDescription(Quest, 3, "I have found some fish and made the glue I need.")
  37. UpdateQuestTaskGroupDescription(Quest, 3, "I have found some fish and made the glue I need.")
  38. AddQuestStep(Quest,4," I should examine the shard again",1, 100,"I have found some fish and made the glue I need. I should examine the shard again.", 1085)
  39. AddQuestStepCompleteAction(Quest, 4, "Step4Complete")
  40. end
  41. function Step4Complete(Quest, QuestGiver, Player)
  42. UpdateQuestStepDescription(Quest, 4, "I have glued the pieces of the token back together using the sticky gelatin from the fish skins I collected.")
  43. UpdateQuestTaskGroupDescription(Quest, 4, "I have glued the pieces of the token back together using the sticky gelatin from the fish skins I collected.")
  44. AddQuestStepKillByRace(Quest, 5, "I should find a replacement cord on the goblins found on the island.", 1, 60, "The pieces of the token are now glued back together I just need a leather cord to wear it. The goblins on the island must have a suitable one somewhere.", 1113, 300)
  45. AddQuestStepCompleteAction(Quest, 5, "Step5Complete")
  46. end
  47. function Step5Complete(Quest, QuestGiver, Player)
  48. UpdateQuestStepDescription(Quest, 5, "I have found a replacement cord")
  49. UpdateQuestTaskGroupDescription(Quest, 5, "I have found a leather cord for the token.")
  50. AddQuestStep(Quest,6," I should examine the shard again",1, 100,"I have found a leather cord for the token. I should examine the shard again.", 1085)
  51. AddQuestStepCompleteAction(Quest, 6, "QuestComplete")
  52. end
  53. function QuestComplete(Quest, QuestGiver, Player)
  54. -- The following UpdateQuestStepDescription and UpdateTaskGroupDescription are not needed, parser adds them for completion in case stuff needs to be moved around
  55. UpdateQuestStepDescription(Quest, 6, "I have replaced the cord and fashioned a scrimshaw token.")
  56. UpdateQuestTaskGroupDescription(Quest, 6, "I have replaced the cord and fashioned a scrimshaw token.")
  57. UpdateQuestDescription(Quest, "I have found all the pieces I needed and put the Scrimshaw Token back together.")
  58. GiveQuestReward(Quest, Player)
  59. end
  60. function Reload(Quest, QuestGiver, Player, Step)
  61. if Step == 1 then
  62. Step1Complete(Quest, QuestGiver, Player)
  63. elseif Step == 2 then
  64. Step2Complete(Quest, QuestGiver, Player)
  65. elseif Step == 3 then
  66. Step3Complete(Quest, QuestGiver, Player)
  67. elseif Step == 4 then
  68. Step4Complete(Quest, QuestGiver, Player)
  69. elseif Step == 5 then
  70. Step5Complete(Quest, QuestGiver, Player)
  71. elseif Step == 6 then
  72. QuestComplete(Quest, QuestGiver, Player)
  73. end
  74. end