9
3

path_of_the_druid.lua 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286
  1. --[[
  2. Script Name : Quests/Hallmark/path_of_the_druid.lua
  3. Script Author : Dorbin
  4. Script Date : 2022.11.19 05:11:31
  5. Script Purpose :
  6. Zone : Hallmark
  7. Quest Giver:
  8. Preceded by: None
  9. Followed by:
  10. --]]
  11. require "SpawnScripts/Generic/DialogModule"
  12. function Init(Quest)
  13. AddQuestStep(Quest, 1, "I must complete the trial Aldalad has set forth for me.", 1, 100, "I must complete Aldalad's trial in the elddar grove in order to become a druid.", 11)
  14. AddQuestStepCompleteAction(Quest, 1, "QuestComplete")
  15. end
  16. function Accepted(Quest, QuestGiver, Player)
  17. FaceTarget(QuestGiver, Player)
  18. Dialog.New(QuestGiver, Player)
  19. Dialog.AddDialog("There will be no need to return to me when you have completed this trial, but go forth and put what you have learned into practice. You will know when you have earned the right to call yourself a druid. I will send you to where you need to go.")
  20. Dialog.AddVoiceover("voiceover/english/hierophant_aldalad/qey_north/hierophant_aldalad030.mp3", 110213528, 850594761)
  21. PlayFlavor(QuestGiver, "", "", "agree", 0, 0, Player)
  22. Dialog.AddOption("I am ready.","DruidPort" )
  23. Dialog.Start()
  24. if GetQuestStep(Player,5879)==1 then
  25. SetStepComplete(Player,5879,1)
  26. end
  27. end
  28. function Declined(Quest, QuestGiver, Player)
  29. -- Add dialog here for when the quest is declined
  30. end
  31. function Deleted(Quest, QuestGiver, Player)
  32. -- Remove any quest specific items here when the quest is deleted
  33. end
  34. function QuestComplete(Quest, QuestGiver, Player)
  35. -- The following UpdateQuestStepDescription and UpdateTaskGroupDescription are not needed, parser adds them for completion in case stuff needs to be moved around
  36. UpdateQuestStepDescription(Quest, 1, "I've completed the trial.")
  37. UpdateQuestTaskGroupDescription(Quest, 1, "I've completed Aldalad's trial by defeating the fire elemental and become a druid.")
  38. if GetClass(Player)== 11 then
  39. SetAdventureClass(Player,15)
  40. SetPlayerLevel(Player,10)
  41. SendMessage(Player, "Congratulations! You are a Druid.","yellow")
  42. SendPopUpMessage(Player, "Congratulations! You are a Druid.",250,250,200)
  43. ApplySpellVisual(Player, 324)
  44. PlaySound(Player, "sounds/test/endquest.wav", GetX(Player), GetY(Player), GetZ(Player), Player)
  45. local level = GetLevel(Player)*5
  46. --WEAPON SKILLS
  47. if not HasSkill(Player, 2463145248) then -- Inspirations
  48. AddSkill(Player, 2463145248,1,level)
  49. SendMessage(Player, "You have learned the Inspirations skill")
  50. end
  51. if not HasSkill(Player, 3282420779) then -- Archegenesis/Druid
  52. AddSkill(Player, 3282420779,1,level)
  53. SendMessage(Player, "You have learned the Archegenesis skill")
  54. end
  55. if not HasSkill(Player, 3341842907) then -- Theurgy/Druid
  56. AddSkill(Player, 3341842907,1,level)
  57. SendMessage(Player, "You have learned the Theurgy skill")
  58. end
  59. if not HasSkill(Player, 3421494576) then -- Crushing
  60. AddSkill(Player, 3421494576,1,level)
  61. SendMessage(Player, "You have learned the Crushing skill")
  62. end
  63. if not HasSkill(Player, 418532101) then -- Slashing
  64. AddSkill(Player, 418532101,1,level)
  65. SendMessage(Player, "You have learned the Slashing skill")
  66. end
  67. --CASTING SKILLS
  68. if not HasSkill(Player, 613995491) then -- Disruption
  69. AddSkill(Player, 613995491,1,level)
  70. SendMessage(Player, "You have learned the Disruption skill")
  71. end
  72. if not HasSkill(Player, 366253016) then -- Ministration
  73. AddSkill(Player, 366253016,1,level)
  74. SendMessage(Player, "You have learned the Ministration skill")
  75. end
  76. if not HasSkill(Player, 3587918036) then -- Ordination
  77. AddSkill(Player, 3587918036,1,level)
  78. SendMessage(Player, "You have learned the Ordination skill")
  79. end
  80. if not HasSkill(Player, 882983852) then -- Subjugation
  81. AddSkill(Player, 882983852,1,level)
  82. SendMessage(Player, "You have learned the Subjugation skill")
  83. end
  84. if not HasSkill(Player, 2638198038) then -- Focus
  85. AddSkill(Player, 2638198038,1,level)
  86. SendMessage(Player, "You have learned the Focus skill")
  87. end
  88. --WEAPON SKILLS
  89. if not HasSkill(Player, 4037812502) then -- Buckler
  90. AddSkill(Player, 4037812502,1,level)
  91. SendMessage(Player, "You are now more proficient with a Buckler")
  92. end
  93. if not HasSkill(Player, 770311065) then -- Mace
  94. AddSkill(Player, 770311065,1,level)
  95. SendMessage(Player, "You are now more proficient with a Mace")
  96. end
  97. if not HasSkill(Player, 1696217328) then -- Sword
  98. AddSkill(Player, 1696217328,1,level)
  99. SendMessage(Player, "You are now more proficient with a Sword")
  100. end
  101. if not HasSkill(Player, 554333641) then -- Hammer
  102. AddSkill(Player, 554333641,1,level)
  103. SendMessage(Player, "You are now more proficient with a Hammer")
  104. end
  105. if not HasSkill(Player, 1653482350) then -- Great Hammer
  106. AddSkill(Player, 1653482350,1,level)
  107. SendMessage(Player, "You are now more proficient with a Great Hammer")
  108. end
  109. if not HasSkill(Player, 3180399725) then -- Staff(2h)
  110. AddSkill(Player, 3180399725,1,level)
  111. SendMessage(Player, "You are now more proficient with a Staff")
  112. end
  113. --REMOVE SKILLS
  114. -- Remove Fighter
  115. if HasSkill(Player, 1408356869) then -- Martial/Fighter
  116. RemoveSkill(Player, 1408356869)
  117. end
  118. if HasSkill(Player, 1124719197) then -- Tactics/Warrior
  119. RemoveSkill(Player, 1124719197)
  120. end
  121. if HasSkill(Player, 433335062) then -- Berserk/Berserker
  122. RemoveSkill(Player, 433335062)
  123. end
  124. if HasSkill(Player, 1209716810) then -- Protection/Guardian
  125. RemoveSkill(Player, 1209716810)
  126. end
  127. if HasSkill(Player, 3856706740) then -- Brawl/Brawling
  128. RemoveSkill(Player, 3856706740)
  129. end
  130. if HasSkill(Player, 2011726342) then -- Tranquility/Monk
  131. RemoveSkill(Player, 2011726342)
  132. end
  133. if HasSkill(Player, 3067436248) then -- Physicality/Bruiser
  134. RemoveSkill(Player, 3067436248)
  135. end
  136. if HasSkill(Player, 3809066846) then -- Faith/Crusader
  137. RemoveSkill(Player, 3809066846)
  138. end
  139. if HasSkill(Player, 90523872) then -- Determined Faith/Paladin
  140. RemoveSkill(Player, 90523872)
  141. end
  142. if HasSkill(Player, 2741805322) then -- Determined Zeal/Shadowknight
  143. RemoveSkill(Player, 2741805322)
  144. end
  145. --Remove Scout
  146. if HasSkill(Player, 1921433074) then -- Reconnaissance/Scout
  147. RemoveSkill(Player, 1921433074)
  148. end
  149. if HasSkill(Player, 1311635100) then -- Melodies/Bard
  150. RemoveSkill(Player, 1311635100)
  151. end
  152. if HasSkill(Player, 296246391) then -- Ballads/Troubador
  153. RemoveSkill(Player, 296246391)
  154. end
  155. if HasSkill(Player, 340921594) then -- Dirges/Dirge
  156. RemoveSkill(Player, 340921594)
  157. end
  158. if HasSkill(Player, 1514256692) then -- Skulldugery/Rogue
  159. RemoveSkill(Player, 1514256692)
  160. end
  161. if HasSkill(Player, 3167106577) then -- Stalking/Predator
  162. RemoveSkill(Player, 3167106577)
  163. end
  164. if HasSkill(Player, 2663054519) then -- Swashbuckling/Swashbuckler
  165. RemoveSkill(Player, 2663054519)
  166. end
  167. if HasSkill(Player, 1519965519) then -- Banditry/Brigand
  168. RemoveSkill(Player, 1519965519)
  169. end
  170. if HasSkill(Player, 1400160844) then -- Archery/Ranger
  171. RemoveSkill(Player, 1400160844)
  172. end
  173. if HasSkill(Player, 2711101135) then -- Assassination/Assassin
  174. RemoveSkill(Player, 2711101135)
  175. end
  176. --Remove Priest
  177. if HasSkill(Player, 3341842907) then -- Theurgy/Cleric
  178. RemoveSkill(Player, 3341842907)
  179. end
  180. if HasSkill(Player, 2581053277) then -- Regimens/Templar
  181. RemoveSkill(Player, 2581053277)
  182. end
  183. if HasSkill(Player, 1829443087) then -- Inquisitions/Inquisitor
  184. RemoveSkill(Player, 1829443087)
  185. end
  186. if HasSkill(Player, 3343700951) then -- Talismans/Shaman
  187. RemoveSkill(Player, 3343700951)
  188. end
  189. if HasSkill(Player, 1624274802) then -- Nature's Reckoning/Fury
  190. RemoveSkill(Player, 1624274802)
  191. end
  192. if HasSkill(Player, 1040683335) then -- Nature's Refuge/Warden
  193. RemoveSkill(Player, 1040683335)
  194. end
  195. if HasSkill(Player, 3467160477) then -- Fetichisms/Mystic
  196. RemoveSkill(Player, 3467160477)
  197. end
  198. if HasSkill(Player, 3191839982) then -- Vehemence/Defiler
  199. RemoveSkill(Player, 3191839982)
  200. end
  201. --Remove Mage
  202. if HasSkill(Player, 3820670534) then -- Evocations/Mage
  203. RemoveSkill(Player, 3820670534)
  204. end
  205. if HasSkill(Player, 287643040) then -- Enchantments/Enchanter
  206. RemoveSkill(Player, 287643040)
  207. end
  208. if HasSkill(Player, 2898101972) then -- Hallucinations/Illusionist
  209. RemoveSkill(Player, 2898101972)
  210. end
  211. if HasSkill(Player, 2950599749) then -- Protean/Coecerer
  212. RemoveSkill(Player, 2950599749)
  213. end
  214. if HasSkill(Player, 2533124061) then -- Sorcery/Sorcerer
  215. RemoveSkill(Player, 2533124061)
  216. end
  217. if HasSkill(Player, 2662430630) then -- Elemental Mastery/Wizard
  218. RemoveSkill(Player, 2662430630)
  219. end
  220. if HasSkill(Player, 193411854) then -- Noctivagance/Warlock
  221. RemoveSkill(Player, 193411854)
  222. end
  223. if HasSkill(Player, 2120065377) then -- Legerdemain/Summoner
  224. RemoveSkill(Player, 2120065377)
  225. end
  226. if HasSkill(Player, 2042842194) then -- Conjurations/Conjurer
  227. RemoveSkill(Player, 2042842194)
  228. end
  229. if HasSkill(Player, 289471519) then -- Sepulchers/Necromancer
  230. RemoveSkill(Player, 289471519)
  231. end
  232. --REMOVE WEAPON
  233. if HasSkill(Player, 2246237129) then -- Medium Armor
  234. RemoveSkill(Player, 2246237129)
  235. end
  236. if HasSkill(Player, 241174330) then -- Heavy Armor
  237. RemoveSkill(Player, 241174330)
  238. end
  239. if HasSkill(Player, 3177806075) then -- Fists
  240. RemoveSkill(Player, 3177806075)
  241. end
  242. if HasSkill(Player, 2292577688) then -- Great Sword
  243. RemoveSkill(Player, 2292577688)
  244. end
  245. if HasSkill(Player, 2954459351) then -- Great Axe
  246. RemoveSkill(Player, 2954459351)
  247. end
  248. if HasSkill(Player, 1653482350) then -- Great Spear
  249. RemoveSkill(Player, 1653482350)
  250. end
  251. if HasSkill(Player, 3173504370) then -- Round Shield
  252. RemoveSkill(Player, 3173504370)
  253. end
  254. if HasSkill(Player, 2608320658) then -- Kite Shield
  255. RemoveSkill(Player, 2608320658)
  256. end
  257. if HasSkill(Player, 570458645) then -- Tower Shield
  258. RemoveSkill(Player, 570458645)
  259. end
  260. if HasSkill(Player, 545043066) then -- Symbol
  261. RemoveSkill(Player, 545043066)
  262. end
  263. end
  264. UpdateQuestDescription(Quest, "I have completed the trial Aldalad set before me, and am finally ready to journey forth as a druid - a defender of the forests and animals, of those who cannot adequately do so for themselves.")
  265. GiveQuestReward(Quest, Player)
  266. end
  267. function Reload(Quest, QuestGiver, Player, Step)
  268. if Step == 1 then
  269. QuestComplete(Quest, QuestGiver, Player)
  270. end
  271. end