path_of_the_bard.lua 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330
  1. --[[
  2. Script Name : Quests/Hallmark/path_of_the_bard.lua
  3. Script Author : Dorbin
  4. Script Date : 2022.11.29 02:11:35
  5. Script Purpose :
  6. Zone : Hallmark
  7. Quest Giver: Councilor Vemerik
  8. Preceded by: Scout Training pt. II
  9. Followed by: None
  10. --]]
  11. require "SpawnScripts/Generic/DialogModule"
  12. dofile("SpawnScripts/Generic/ClassSkillCheck.lua")
  13. function Init(Quest)
  14. AddQuestStep(Quest, 1, "I need to subdue the mob in the Fermented Grape, a small tavern in South Qeynos. The tavern is located amongst the southern-most row of buildings.", 1, 100, "I need to save the other bard from an angry crowd.", 11)
  15. AddQuestStepCompleteAction(Quest, 1, "QuestComplete")
  16. end
  17. function Accepted(Quest, QuestGiver, Player)
  18. FaceTarget(QuestGiver, Player)
  19. Dialog.New(QuestGiver, Player)
  20. Dialog.AddDialog("Go rescue the poor minstrel from the angry crowd, of course. Just handle the situation appropriately and make sure the bard is okay. If you can handle that, then you'll have no problems with the fallout from a bad evening, even under the worst conditions.")
  21. Dialog.AddVoiceover("voiceover/english/counselor_vemerik/qey_north/counselor_vemerik034.mp3", 1060882099, 2285417556)
  22. PlayFlavor(QuestGiver, "", "", "nod", 0, 0, Player)
  23. Dialog.AddOption("Interesting. I suppose I can save your bard friend from the unruly crowd.")
  24. Dialog.Start()
  25. if GetQuestStep(Player,5880)==1 then
  26. SetStepComplete(Player,5880,1)
  27. end
  28. end
  29. function Declined(Quest, QuestGiver, Player)
  30. -- Add dialog here for when the quest is declined
  31. end
  32. function Deleted(Quest, QuestGiver, Player)
  33. -- Remove any quest specific items here when the quest is deleted
  34. end
  35. function QuestComplete(Quest, QuestGiver, Player)
  36. -- The following UpdateQuestStepDescription and UpdateTaskGroupDescription are not needed, parser adds them for completion in case stuff needs to be moved around
  37. UpdateQuestStepDescription(Quest, 1, "I've subdued the mob.")
  38. UpdateQuestTaskGroupDescription(Quest, 1, "I've saved the other bard from the angry crowd.")
  39. if GetClass(Player)== 31 then
  40. SetAdventureClass(Player,35)
  41. SetPlayerLevel(Player,10)
  42. SendMessage(Player, "Congratulations! You are a Bard.","yellow")
  43. SendPopUpMessage(Player, "Congratulations! You are a Bard.",250,250,200)
  44. ApplySpellVisual(Player, 324)
  45. PlaySound(Player, "sounds/test/endquest.wav", GetX(Player), GetY(Player), GetZ(Player), Player)
  46. -- SkillCheck(Quest,Player)
  47. local level = GetLevel(Player)*5
  48. if not HasSkill(Player, 1921433074) then -- Reconnaissance
  49. AddSkill(Player, 1921433074,1,level)
  50. SendMessage(Player, "You have learned the Reconnaissance skill")
  51. end
  52. if not HasSkill(Player, 1311635100) then -- Melodies/Bard
  53. AddSkill(Player, 1311635100,1,level)
  54. SendMessage(Player, "You have learned the Melodies skill")
  55. end
  56. if not HasSkill(Player, 1468243427) then -- Tracking
  57. AddSkill(Player, 1468243427,1,level)
  58. SendMessage(Player, "You have learned the Tracking skill")
  59. end
  60. if not HasSkill(Player, 2200201799) then -- Disarm Trap
  61. AddSkill(Player, 2200201799,1,level)
  62. SendMessage(Player, "You have learned the Disarm Trap skill")
  63. end
  64. if not HasSkill(Player, 3232294366) then -- Safe Fall
  65. AddSkill(Player, 3232294366,31,level)
  66. SendMessage(Player, "You have learned the Safe Fall skill")
  67. end
  68. if not HasSkill(Player, 1756482397) then -- Ranged
  69. AddSkill(Player, 1756482397,1,level)
  70. SendMessage(Player, "You have learned the Ranged skill")
  71. end
  72. if not HasSkill(Player, 3048574950) then -- Piercing
  73. AddSkill(Player, 3048574950,1,level)
  74. SendMessage(Player, "You have learned the Piercing skill")
  75. end
  76. if not HasSkill(Player, 418532101) then -- Slashing
  77. AddSkill(Player, 418532101,1,level)
  78. SendMessage(Player, "You have learned the Slashing skill")
  79. end
  80. if not HasSkill(Player, 1852383242) then -- Dual Wield
  81. AddSkill(Player, 1852383242,1,level)
  82. SendMessage(Player, "You have learned the Dual Wield skill")
  83. end
  84. if not HasSkill(Player, 2650425026) then -- Thrown Weapon
  85. AddSkill(Player, 2650425026,1,level)
  86. SendMessage(Player, "You have learned the Thrown Weapon skill")
  87. end
  88. if not HasSkill(Player, 2638198038) then -- Focus
  89. AddSkill(Player, 2638198038,1,level)
  90. SendMessage(Player, "You have learned the Focus skill")
  91. end
  92. --WEAPON SKILLS
  93. if not HasSkill(Player, 2897193374) then -- Light Armor
  94. AddSkill(Player, 2897193374,1,level)
  95. SendMessage(Player, "You are now more proficient with Light Armor")
  96. end
  97. if not HasSkill(Player, 4037812502) then -- Buckler
  98. AddSkill(Player, 4037812502,1,level)
  99. SendMessage(Player, "You are now more proficient with a Buckler")
  100. end
  101. if not HasSkill(Player, 3173504370) then -- Roundshield
  102. AddSkill(Player, 3173504370,1,level)
  103. SendMessage(Player, "You are now more proficient with a Roundshield")
  104. end
  105. if not HasSkill(Player, 1616998748) then -- Spear
  106. AddSkill(Player, 1616998748,1,level)
  107. SendMessage(Player, "You are now more proficient with a Spear")
  108. end
  109. if not HasSkill(Player, 887279616) then -- Dagger
  110. AddSkill(Player, 887279616,1,level)
  111. SendMessage(Player, "You are now more proficient with a Dagger")
  112. end
  113. if not HasSkill(Player, 1743366740) then -- Bow
  114. AddSkill(Player, 1743366740,1,level)
  115. SendMessage(Player, "You are now more proficient with a Bow")
  116. end
  117. if not HasSkill(Player, 2476073427) then -- Axe
  118. AddSkill(Player, 2476073427,1,level)
  119. SendMessage(Player, "You are now more proficient with an Axe")
  120. end
  121. if not HasSkill(Player, 770311065) then -- Mace
  122. AddSkill(Player, 770311065,1,level)
  123. SendMessage(Player, "You are now more proficient with a Mace")
  124. end
  125. if not HasSkill(Player, 641561514) then -- Rapier
  126. AddSkill(Player, 641561514,1,level)
  127. SendMessage(Player, "You are now more proficient with a Rapier")
  128. end
  129. if not HasSkill(Player, 1696217328) then -- Sword
  130. AddSkill(Player, 1696217328,1,level)
  131. SendMessage(Player, "You are now more proficient with a Sword")
  132. end
  133. if not HasSkill(Spawn, 613995491) then -- Disruption
  134. AddSkill(Spawn, 613995491,1,level)
  135. SendMessage(Spawn, "You have learned the Disruption skill")
  136. end
  137. if not HasSkill(Spawn, 366253016) then -- Ministration
  138. AddSkill(Spawn, 366253016,1,level)
  139. SendMessage(Spawn, "You have learned the Ministration skill")
  140. end
  141. if not HasSkill(Spawn, 3587918036) then -- Ordination
  142. AddSkill(Spawn, 3587918036,1,level)
  143. SendMessage(Spawn, "You have learned the Ordination skill")
  144. end
  145. if not HasSkill(Spawn, 882983852) then -- Subjugation
  146. AddSkill(Spawn, 882983852,1,level)
  147. SendMessage(Spawn, "You have learned the Subjugation skill")
  148. end
  149. --REMOVE SKILLS
  150. -- Remove Fighter for Scout
  151. if HasSkill(Player, 1408356869) then -- Martial/Fighter
  152. RemoveSkill(Player, 1408356869)
  153. end
  154. if HasSkill(Player, 1124719197) then -- Tactics/Warrior
  155. RemoveSkill(Player, 1124719197)
  156. end
  157. if HasSkill(Player, 433335062) then -- Berserk/Berserker
  158. RemoveSkill(Player, 433335062)
  159. end
  160. if HasSkill(Player, 1209716810) then -- Protection/Guardian
  161. RemoveSkill(Player, 1209716810)
  162. end
  163. if HasSkill(Player, 3856706740) then -- Brawl/Brawling
  164. RemoveSkill(Player, 3856706740)
  165. end
  166. if HasSkill(Player, 2011726342) then -- Tranquility/Monk
  167. RemoveSkill(Player, 2011726342)
  168. end
  169. if HasSkill(Player, 3067436248) then -- Physicality/Bruiser
  170. RemoveSkill(Player, 3067436248)
  171. end
  172. if HasSkill(Player, 3809066846) then -- Faith/Crusader
  173. RemoveSkill(Player, 3809066846)
  174. end
  175. if HasSkill(Player, 90523872) then -- Determined Faith/Paladin
  176. RemoveSkill(Player, 90523872)
  177. end
  178. if HasSkill(Player, 2741805322) then -- Determined Zeal/Shadowknight
  179. RemoveSkill(Player, 2741805322)
  180. end
  181. --Removed Advance Scout
  182. if HasSkill(Player, 296246391) then -- Ballads/Troubador
  183. RemoveSkill(Player, 296246391)
  184. end
  185. if HasSkill(Player, 340921594) then -- Dirges/Dirge
  186. RemoveSkill(Player, 340921594)
  187. end
  188. if HasSkill(Player, 1514256692) then -- Skulldugery/Rogue
  189. RemoveSkill(Player, 1514256692)
  190. end
  191. if HasSkill(Player, 2663054519) then -- Swashbuckling/Swashbuckler
  192. RemoveSkill(Player, 2663054519)
  193. end
  194. if HasSkill(Player, 1519965519) then -- Banditry/Brigand
  195. RemoveSkill(Player, 1519965519)
  196. end
  197. if HasSkill(Player, 3167106577) then -- Stalking/Predator
  198. RemoveSkill(Player, 3167106577)
  199. end
  200. if HasSkill(Player, 1400160844) then -- Archery/Ranger
  201. RemoveSkill(Player, 1400160844)
  202. end
  203. if HasSkill(Player, 2711101135) then -- Assassination/Assassin
  204. RemoveSkill(Player, 2711101135)
  205. end
  206. --Removed Priest for Scout
  207. if HasSkill(Player, 2463145248) then -- Inspirations/Priest
  208. RemoveSkill(Player, 2463145248)
  209. end
  210. if HasSkill(Player, 3341842907) then -- Theurgy/Cleric
  211. RemoveSkill(Player, 3341842907)
  212. end
  213. if HasSkill(Player, 2581053277) then -- Regimens/Templar
  214. RemoveSkill(Player, 2581053277)
  215. end
  216. if HasSkill(Player, 1829443087) then -- Inquisitions/Inquisitor
  217. RemoveSkill(Player, 1829443087)
  218. end
  219. if HasSkill(Player, 3282420779) then -- Archegenesis/Druid
  220. RemoveSkill(Player, 3282420779)
  221. end
  222. if HasSkill(Player, 1624274802) then -- Nature's Reckoning/Fury
  223. RemoveSkill(Player, 1624274802)
  224. end
  225. if HasSkill(Player, 1040683335) then -- Nature's Refuge/Warden
  226. RemoveSkill(Player, 1040683335)
  227. end
  228. if HasSkill(Player, 3343700951) then -- Talismans/Shaman
  229. RemoveSkill(Player, 3343700951)
  230. end
  231. if HasSkill(Player, 3467160477) then -- Fetichisms/Mystic
  232. RemoveSkill(Player, 3467160477)
  233. end
  234. if HasSkill(Player, 3191839982) then -- Vehemence/Defiler
  235. RemoveSkill(Player, 3191839982)
  236. end
  237. --Removed Mage for Scout
  238. if HasSkill(Player, 3820670534) then -- Evocations/Mage
  239. RemoveSkill(Player, 3820670534)
  240. end
  241. if HasSkill(Player, 287643040) then -- Enchantments/Enchanter
  242. RemoveSkill(Player, 287643040)
  243. end
  244. if HasSkill(Player, 2898101972) then -- Hallucinations/Illusionist
  245. RemoveSkill(Player, 2898101972)
  246. end
  247. if HasSkill(Player, 2950599749) then -- Protean/Coecerer
  248. RemoveSkill(Player, 2950599749)
  249. end
  250. if HasSkill(Player, 2533124061) then -- Sorcery/Sorcerer
  251. RemoveSkill(Player, 2533124061)
  252. end
  253. if HasSkill(Player, 2662430630) then -- Elemental Mastery/Wizard
  254. RemoveSkill(Player, 2662430630)
  255. end
  256. if HasSkill(Player, 193411854) then -- Noctivagance/Warlock
  257. RemoveSkill(Player, 193411854)
  258. end
  259. if HasSkill(Player, 2120065377) then -- Legerdemain/Summoner
  260. RemoveSkill(Player, 2120065377)
  261. end
  262. if HasSkill(Player, 2042842194) then -- Conjurations/Conjurer
  263. RemoveSkill(Player, 2042842194)
  264. end
  265. if HasSkill(Player, 289471519) then -- Sepulchers/Necromancer
  266. RemoveSkill(Player, 289471519)
  267. end
  268. --REMOVE WEAPON
  269. if HasSkill(Player, 2246237129) then -- Medium Armor
  270. RemoveSkill(Player, 2246237129)
  271. end
  272. if HasSkill(Player, 241174330) then -- Heavy Armor
  273. RemoveSkill(Player, 241174330)
  274. end
  275. if HasSkill(Player, 3177806075) then -- Fists
  276. RemoveSkill(Player, 3177806075)
  277. end
  278. if HasSkill(Player, 2292577688) then -- Great Sword
  279. RemoveSkill(Player, 2292577688)
  280. end
  281. if HasSkill(Player, 2954459351) then -- Great Axe
  282. RemoveSkill(Player, 2954459351)
  283. end
  284. if HasSkill(Player, 1653482350) then -- Great Spear
  285. RemoveSkill(Player, 1653482350)
  286. end
  287. if HasSkill(Player, 1616998748) then -- Spear
  288. RemoveSkill(Player, 1616998748)
  289. end
  290. if HasSkill(Player, 2608320658) then -- Kite Shield
  291. RemoveSkill(Player, 2608320658)
  292. end
  293. if HasSkill(Player, 570458645) then -- Tower Shield
  294. RemoveSkill(Player, 570458645)
  295. end
  296. if HasSkill(Player, 540022425) then -- Parry
  297. RemoveSkill(Player, 540022425)
  298. end
  299. if HasSkill(Player, 1553857724) then -- Investigation
  300. RemoveSkill(Player, 1553857724)
  301. end
  302. if HasSkill(Player, 3429135390) then -- Mystical Destruction
  303. RemoveSkill(Player, 3429135390)
  304. end
  305. end
  306. UpdateQuestDescription(Quest, "I managed to lay out the entire mob single-handedly. I've proven that even in the off-chance I give a bad performance, I can handle anything the crowd might throw at me.")
  307. GiveQuestReward(Quest, Player)
  308. end
  309. function Reload(Quest, QuestGiver, Player, Step)
  310. if Step == 1 then
  311. QuestComplete(Quest, QuestGiver, Player)
  312. end
  313. end