Guest User

Untitled

a guest
Jan 19th, 2017
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.62 KB | None | 0 0
  1. event handler: gmcp.Char.Skills.Groups
  2.  
  3.  
  4. function skillflex_detection()
  5. local skills = {"Astrology","Healing","Tarot","Hunting","Tracking","Cosmic","Harmonics","Rituals","Aeonics","Knighthood","Athletics","Blademaster","Bonecrusher","Axelord","Pureblade","Cavalier","CosmicEnchants"}
  6.  
  7. skillsActivated = {}
  8.  
  9. -- disable skill folders, will enable relevant folders later
  10. for i=1,#skills do
  11. disableAlias(skills[i])
  12. end
  13. --turn off stuff
  14. mm.config.set("usehealing", "none", true)
  15. mm.config.set("succor", "off", true)
  16. mm.config.set("hook", "off")
  17. mm.defs.defup("aggressive", "off", "hunt")
  18. mm.defs.defup("poisonist", "off", "combat")
  19. mm.defs.defup("poisonist", "off", "quick")
  20. mm.defs.defup("lightning", "off", "combat")
  21. mm.defs.defup("lightning", "off", "quick")
  22. mm.defs.keepup("adrenaline", "off", "hunt")
  23. mm.defs.keepup("adrenaline", "off", "combat")
  24. mm.defs.keepup("adrenaline", "off", "quick")
  25.  
  26. --set defenses for each skillset, will be raised in basic/quick/combat
  27. defgroups = {}
  28. defgroups.Cosmic = {"cloak", "soulguard", "nimbus", "timeslip", "waterwalk"}
  29. defgroups.Rituals = {"populus", "rubeus", "fortuna", "draconis", "acquisitio"}
  30. defgroups.Aeonics = {"insight", "futureglimpse", "timelessbody", "mindclock", "switchfate"}
  31. defgroups.Healing = {"aurasense"}
  32. --defgroups.HighMagic = {}
  33. defgroups.Knighthood = {}
  34. defgroups.Athletics = {"adrenaline", "resistance", "consciousness", "flex", "weathering", "breathing", "vitality", "constitution"}
  35. --defgroups.LowMagic = {}
  36. defgroups.CosmicEnchants = {"waterwalk", "nimbus", }
  37. defgroups.ElementalEnchants = {"waterbreathing", "levitate"}
  38. defgroups.Hunting = {}
  39. defgroups.Tracking = {}
  40. defgroups.Cavalier = {}
  41.  
  42. --turn off defenses
  43. for k,v in pairs(defgroups) do
  44. for i=1,#v do
  45. mm.defs.defup(v[i], "off", "basic")
  46. mm.defs.defup(v[i], "off", "combat")
  47. mm.defs.defup(v[i], "off", "hunt")
  48. end
  49. end
  50.  
  51. --time to start enabling stuff
  52. --loop through all enabled skills and see if stuff needs enabling
  53. for k,v in pairs(gmcp.Char.Skills.Groups) do
  54. if defgroups[v.name] then
  55. --echo(v.name)
  56. --turn on the defences for that skillset
  57. for i=1,#defgroups[v.name] do
  58. mm.defs.defup(defgroups[v.name][i], "on", "basic")
  59. mm.defs.defup(defgroups[v.name][i], "on", "combat")
  60. mm.defs.defup(defgroups[v.name][i], "on", "hunt")
  61. end
  62. end
  63. --skill specific stuff
  64. if v.name == "Healing" then
  65. mm.config.set("usehealing", "none", true)
  66. mm.config.set("succor", "on", true)
  67. end
  68. if v.name == "Rituals" then
  69. mm.defs.defup("acquisitio", "off", "basic")
  70. mm.defs.defup("acquisitio", "off", "combat")
  71. end
  72. if v.name == "Aeonics" then
  73. mm.defs.defup("switchfate", "off", "basic")
  74. mm.defs.defup("switchfate", "off", "hunt")
  75. end
  76. if v.name == "Knighthood" then
  77. --echo("enable enchants")
  78. for j=1,#defgroups.CosmicEnchants do
  79. mm.defs.defup(defgroups.CosmicEnchants[j], "on", "combat")
  80. mm.defs.defup(defgroups.CosmicEnchants[j], "on", "hunt")
  81. end
  82. for j=1,#defgroups.ElementalEnchants do
  83. mm.defs.defup(defgroups.ElementalEnchants[j], "on", "combat")
  84. mm.defs.defup(defgroups.ElementalEnchants[j], "on", "hunt")
  85. end
  86. enableAlias("CosmicEnchants")
  87. enableAlias("ElementalEnchants")
  88. mm.defs.defup("aggressive", "on", "hunt")
  89. mm.defs.defup("lightning", "on", "quick")
  90. mm.defs.defup("lightning", "on", "combat")
  91. end
  92. if v.name == "Cosmic" then
  93. --echo("enable enchants")
  94. for j=1,#defgroups.ElementalEnchants do
  95. mm.defs.defup(defgroups.ElementalEnchants[j], "on", "combat")
  96. mm.defs.defup(defgroups.ElementalEnchants[j], "on", "hunt")
  97. end
  98. enableAlias("ElementalEnchants")
  99. end
  100. if v.name == "Tracking" then
  101. mm.defs.defup("acquisitio", "on", "hunt")
  102. end
  103. if v.name == "Cavalier" then
  104. mm.config.set("hook", "on")
  105. end
  106. for i=1,#skills do
  107. --turn on the alias folder
  108. if v.name == skills[i] then
  109. enableAlias(v.name)
  110. skillsActivated[v.name] = true
  111. end
  112. end
  113. end
  114.  
  115. --set some variables for other scripts
  116. if skillsActivated["Cosmic"] == true then
  117. flexclass = "Institute"
  118. tertiarylist = {"Astrology", "Healing", "Tarot"}
  119. for i=1,#tertiarylist do
  120. if skillsActivated[tertiarylist[i]] then
  121. tertiary = tertiarylist[i]
  122. end
  123. end
  124. elseif skillsActivated["Knighthood"] == true then
  125. flexclass = "Sentinel"
  126. tertiarylist = { {"Tracking", "Hunting"}, {"Aeonics", "Rituals"} }
  127. for i=1,#tertiarylist do
  128. if skillsActivated[tertiarylist[i][1]] then
  129. tertiary = tertiarylist[i]
  130. end
  131. end
  132. local primarylist = {"Cavalier", "Blademaster", "Axelord"}
  133. for i=1,#primarylist do
  134. if skillsActivated[primarylist[i]] then
  135. primary = primarylist[i]
  136. end
  137. end
  138. end
  139. end
Add Comment
Please, Sign In to add comment