Advertisement
Guest User

Key-DRG-attempt

a guest
Jan 15th, 2014
142
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 18.33 KB | None | 0 0
  1. -------------------------------------------------------------------------------------------------------------------
  2. -- Initialization function that defines sets and variables to be used.
  3. -------------------------------------------------------------------------------------------------------------------
  4.  
  5. -- Last Modified: 1/8/2014 8:32:21 AM
  6.  
  7. -- IMPORTANT: Make sure to also get the Mote-Include.lua file to go with this.
  8.  
  9. function get_sets()
  10. -- Load and initialize the include file that this depends on.
  11. include('Mote-Include.lua')
  12. init_include()
  13.  
  14. -- Options: Override default values
  15. options.OffenseModes = {'Normal', 'Acc', 'Multi'}
  16. options.DefenseModes = {'Normal', 'PDT', 'Reraise'}
  17. options.WeaponskillModes = {'Normal', 'Acc', 'Att', 'Mod'}
  18. options.CastingModes = {'Normal'}
  19. options.IdleModes = {'Normal'}
  20. options.RestingModes = {'Normal'}
  21. options.PhysicalDefenseModes = {'PDT', 'Reraise'}
  22. options.MagicalDefenseModes = {'MDT'}
  23.  
  24. state.Defense.PhysicalMode = 'PDT'
  25.  
  26.  
  27. --------------------------------------
  28. -- Start defining the sets
  29. --------------------------------------
  30.  
  31. -- Precast Sets
  32. -- Precast sets to enhance JAs
  33. sets.precast.JA.Angon = {ammo="Angon",hands="Wyrm Finger Gauntlets +2"}
  34. sets.precast.JA.Jump = {ammo="Hagneia Stone",
  35. head="Otomi Helm",neck="Ganesha's Mala",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  36. body="Lncr. Plackart +2",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
  37. back="Letalis Mantle",waist="Windbuffet Belt",legs="Cizin Breeches",feet="Karieyh Sollerets +1"}
  38. sets.precast.JA['Ancient Circle'] = {legs="Vishap Brais"}
  39. sets.precast.JA['High Jump'] = {ammo="Hagneia Stone",
  40. head="Otomi Helm",neck="Ganesha's Mala",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  41. body="Lncr. Plackart +2",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
  42. back="Letalis Mantle",waist="Windbuffet Belt",legs="Cizin Breeches",feet="Karieyh Sollerets +1"}
  43. sets.precast.JA['Soul Jump'] = {ammo="Hagneia Stone",
  44. head="Otomi Helm",neck="Ganesha's Mala",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  45. body="Lncr. Plackart +2",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
  46. back="Letalis Mantle",waist="Windbuffet Belt",legs="Cizin Breeches",feet="Karieyh Sollerets +1"}
  47. sets.precast.JA['Spirit Jump'] = {ammo="Hagneia Stone",
  48. head="Otomi Helm",neck="Ganesha's Mala",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  49. body="Lncr. Plackart +2",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
  50. back="Letalis Mantle",waist="Windbuffet Belt",legs="Cizin Breeches",feet="Lncr. Schynbld. +2"}
  51. sets.precast.JA['Super Jump'] = {ammo="Hagneia Stone",
  52. head="Otomi Helm",neck="Ganesha's Mala",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  53. body="Lncr. Plackart +2",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
  54. back="Letalis Mantle",waist="Windbuffet Belt",legs="Cizin Breeches",feet="Karieyh Sollerets +1"}
  55. sets.precast.JA['Spirit Link'] = {hands="Lnc. Vmbrc. +2"}
  56. sets.precast.JA['Call Wyvern'] = {body="Wyrm Mail +2"}
  57. sets.precast.JA['Deep Breathing'] = {hands="Wyrm Finger Gauntlets +2"}
  58. sets.precast.JA['Spirit Surge'] = {body="Wyrm Mail +2"}
  59.  
  60. sets.HB = {ammo="Hagneia Stone",
  61. head="Vishap Armet",neck="Ganesha's Mala",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  62. body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
  63. back="Letalis Mantle",waist="Windbuffet Belt",legs="Cizin Breeches",feet="Karieyh Sollerets +1"}
  64. sets.HB.Pre = { head = "Vishap Armet" }
  65. sets.HB.Mid = {ammo="Hagneia Stone",
  66. head="Wyrm Armet +2",neck="Lancer's Torque",ear1="Brutal Earring",ear2="Lancer's Earring",
  67. body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
  68. back="Updraft Mantle",waist="Glassblower's Belt",legs="Vishap Brais",feet="Wyrm Greaves +2"}
  69.  
  70.  
  71. -- Waltz set (chr and vit)
  72. sets.precast.Waltz = {ammo="Sonia's Plectrum",
  73. head="Yaoyotl Helm",
  74. body="Mikinaak Breastplate",hands="Buremte Gloves",ring1="Spiral Ring",
  75. back="Letalis Mantle",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
  76.  
  77. -- Don't need any special gear for Healing Waltz.
  78. sets.precast.Waltz['Healing Waltz'] = {}
  79.  
  80.  
  81. -- Weaponskill sets
  82. -- Default set for any weaponskill that isn't any more specifically defined
  83. sets.precast.WS = {ammo="Cheruski Needle",
  84. head="Otomi Helm",neck="Ganesha's Mala",ear1="Brutal Earring",ear2="Moonshade Earring",
  85. body="Mikiknaak Breastplate",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="Candent Ring",
  86. back="Atheling Mantle",waist="Windbuffet Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
  87. sets.precast.WS.Acc = set_combine(sets.precast.WS, {head="Yaoyotl Helm",back="Letalis Mantle"})
  88.  
  89. -- Specific weaponskill sets. Uses the base set if an appropriate WSMod version isn't found.
  90. sets.precast.WS['Stardiver'] = set_combine(sets.precast.WS, {neck="Light Gorget"})
  91. sets.precast.WS['Stardiver'].Acc = set_combine(sets.precast.WS.Acc, {neck="Light Gorget"})
  92. sets.precast.WS['Stardiver'].Mod = set_combine(sets.precast.WS['Stardiver'], {waist="Light Belt"})
  93.  
  94. sets.precast.WS['Drakesbane'] = set_combine(sets.precast.WS, {neck="Light Gorget"})
  95. sets.precast.WS['Drakesbane'].Acc = set_combine(sets.precast.WS.Acc, {neck="Light Gorget"})
  96. sets.precast.WS['Drakesbane'].Mod = set_combine(sets.precast.WS['Drakesbane'], {waist="Light Belt"})
  97.  
  98.  
  99. -- Midcast Sets
  100. sets.midcast.FastRecast = {
  101. head="Yaoyotl Helm",
  102. body="Mikinaak Breastplate",hands="Cizin Mufflers",
  103. legs="Mikinaak Cuisses",feet="Karieyh Sollerets +1"}
  104.  
  105.  
  106.  
  107. -- Sets to return to when not performing an action.
  108.  
  109. -- Resting sets
  110. sets.resting = {neck="Wiglen Gorget",ring1="Sheltered Ring",ring2="Paguroidea Ring"}
  111.  
  112.  
  113. -- Idle sets (default idle set not needed since the other three are defined, but leaving for testing purposes)
  114. sets.idle.Town = {main="Upukirex", sub="Pole Grip",ammo="Thew Bomblet",
  115. head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  116. body="Ares' cuirass +1",hands="Cizin Mufflers",ring1="Sheltered Ring",ring2="Paguroidea Ring",
  117. back="Atheling Mantle",waist="Goading Belt",legs="Blood Cuisses",feet="Ejekamal Boots"}
  118.  
  119. sets.idle.Field = {
  120. head="Yaoyotl Helm",neck="Wiglen Gorget",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  121. body="Ares' cuirass +1",hands="Cizin Mufflers",ring1="Sheltered Ring",ring2="Paguroidea Ring",
  122. back="Letalis Mantle",waist="Goading Belt",legs="Miki. Cuisses",feet="Ejekamal Boots"}
  123.  
  124. sets.idle.Weak = {
  125. head="Twilight Helm",neck="Wiglen Gorget",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  126. body="Twilight Mail",hands="Buremte Gloves",ring1="Sheltered Ring",ring2="Paguroidea Ring",
  127. back="Letalis Mantle",waist="Goading Belt",legs="Miki. Cuisses",feet="Ejekamal Boots"}
  128.  
  129. -- Defense sets
  130. sets.defense.PDT = {ammo="Hagneia Stone",
  131. head="Yaoyotl Helm",neck="Twilight Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  132. body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Dark Ring",ring2="Dark Ring",
  133. back="Letalis Mantle",waist="Goading Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
  134.  
  135. sets.defense.Reraise = {
  136. head="Twilight Helm",neck="Twilight Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  137. body="Twilight Mail",hands="Buremte Gloves",ring1="Dark Ring",ring2="Paguroidea Ring",
  138. back="Letalis Mantle",waist="Goading Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
  139.  
  140. sets.defense.MDT = {ammo="Demonry Stone",
  141. head="Yaoyotl Helm",neck="Twilight Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  142. body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Sheltered Ring",ring2="Paguroidea Ring",
  143. back="Engulfer Cape",waist="Goading Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
  144.  
  145. sets.Kiting = {legs="Blood Cuisses"}
  146.  
  147. sets.Reraise = {head="Twilight Helm",body="Twilight Mail"}
  148.  
  149. -- Engaged sets
  150.  
  151. -- Variations for TP weapon and (optional) offense/defense modes. Code will fall back on previous
  152. -- sets if more refined versions aren't defined.
  153. -- If you create a set with both offense and defense modes, the offense mode should be first.
  154. -- EG: sets.engaged.Dagger.Accuracy.Evasion
  155.  
  156. -- Normal melee group
  157. -- Delay 450 GK, 25 Save TP => 65 Store TP for a 5-hit (25 Store TP in gear)
  158. sets.engaged = {ammo="Hagneia Stone",
  159. head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  160. body="Lncr. Plackart +2",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
  161. back="Atheling Mantle",waist="Goading Belt",legs="Cizin Breeches",feet="Karieyh Sollerets +1"}
  162. sets.engaged.Acc = {ammo="Hagneia Stone",
  163. head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  164. body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="Mars's Ring",
  165. back="Letalis Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
  166. sets.engaged.Multi = {ammo="Hagneia Stone",
  167. head="Otomi Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  168. body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
  169. back="Atheling Mantle",waist="Goading Belt",legs="Miki. Cuisses",feet="Ejekamal Boots"}
  170. sets.engaged.Acc.Multi = {ammo="Hagneia Stone",
  171. head="Otomi Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  172. body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="Mars's Ring",
  173. back="Letalis Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Ejekamal Boots"}
  174. sets.engaged.PDT = {ammo="Hagneia Stone",
  175. head="Yaoyotl Helm",neck="Twilight Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  176. body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Dark Ring",ring2="Dark Ring",
  177. back="Mollusca Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
  178. sets.engaged.Acc.PDT = {ammo="Hagneia Stone",
  179. head="Yaoyotl Helm",neck="Twilight Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  180. body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Dark Ring",ring2="Dark Ring",
  181. back="Mollusca Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
  182. sets.engaged.Reraise = {ammo="Hagneia Stone",
  183. head="Twilight Helm",neck="Torero Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  184. body="Twilight Mail",hands="Cizin Mufflers",ring1="Dark Ring",ring2="K'ayres Ring",
  185. back="Letalis Mantle",waist="Goading Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
  186. sets.engaged.Acc.Reraise = {ammo="Hagneia Stone",
  187. head="Twilight Helm",neck="Torero Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  188. body="Twilight Mail",hands="Cizin Mufflers",ring1="Dark Ring",ring2="K'ayres Ring",
  189. back="Letalis Mantle",waist="Goading Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
  190.  
  191. -- Melee sets for in Adoulin, which has an extra 10 Save TP for weaponskills.
  192. -- Delay 450 GK, 35 Save TP => 89 Store TP for a 4-hit (49 Store TP in gear), 2 Store TP for a 5-hit
  193. sets.engaged.Adoulin = {ammo="Hagneia Stone",
  194. head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  195. body="Lncr. Plackart +2",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
  196. back="Takaha Mantle",waist="Goading Belt",legs="Cizin Breeches",feet="Karieyh Sollerets +1"}
  197. sets.engaged.Adoulin.Acc = {ammo="Hagneia Stone",
  198. head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  199. body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="Mars's Ring",
  200. back="Takaha Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
  201. sets.engaged.Adoulin.Multi = {ammo="Hagneia Stone",
  202. head="Otomi Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  203. body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
  204. back="Atheling Mantle",waist="Goading Belt",legs="Miki. Cuisses",feet="Ejekamal Boots"}
  205. sets.engaged.Adoulin.Acc.Multi = {ammo="Hagneia Stone",
  206. head="Otomi Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  207. body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="Mars's Ring",
  208. back="Letalis Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Ejekamal Boots"}
  209. sets.engaged.Adoulin.PDT = {ammo="Hagneia Stone",
  210. head="Yaoyotl Helm",neck="Twilight Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  211. body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Dark Ring",ring2="Dark Ring",
  212. back="Mollusca Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
  213. sets.engaged.Adoulin.Acc.PDT = {ammo="Hagneia Stone",
  214. head="Yaoyotl Helm",neck="Twilight Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  215. body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Dark Ring",ring2="Dark Ring",
  216. back="Mollusca Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
  217. sets.engaged.Adoulin.Reraise = {ammo="Hagneia Stone",
  218. head="Twilight Helm",neck="Twilight Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  219. body="Twilight Mail",hands="Cizin Mufflers",ring1="Dark Ring",ring2="K'ayres Ring",
  220. back="Letalis Mantle",waist="Goading Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
  221. sets.engaged.Adoulin.Acc.Reraise = {ammo="Hagneia Stone",
  222. head="Twilight Helm",neck="Twilight Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  223. body="Twilight Mail",hands="Cizin Mufflers",ring1="Dark Ring",ring2="K'ayres Ring",
  224. back="Letalis Mantle",waist="Goading Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
  225.  
  226.  
  227.  
  228. set_macro_page(1, 16)
  229. binds_on_load()
  230.  
  231. windower.send_command('bind ^` input /ja "Hasso" <me>')
  232. windower.send_command('bind !` input /ja "Seigan" <me>')
  233.  
  234. windower.send_command('bind ^- gs c toggle target')
  235. windower.send_command('bind ^= gs c cycle targetmode')
  236. end
  237.  
  238. -- Called when this job file is unloaded (eg: job change)
  239. function file_unload()
  240. --binds_on_unload()
  241. windower.send_command('unbind ^`')
  242. windower.send_command('unbind !`')
  243. end
  244.  
  245. -------------------------------------------------------------------------------------------------------------------
  246. -- Job-specific hooks that are called to process player actions at specific points in time.
  247. -------------------------------------------------------------------------------------------------------------------
  248.  
  249. -- Set eventArgs.handled to true if we don't want any automatic target handling to be done.
  250. function job_pretarget(spell, action, spellMap, eventArgs)
  251. if spell.type:lower() == 'weaponskill' then
  252. -- Change any GK weaponskills to polearm weaponskill if we're using a polearm.
  253. if player.equipment.main=='Quint Spear' or player.equipment.main=='Quint Spear' then
  254. if spell.english:startswith("Tachi:") then
  255. send_command('input /ws "Penta Thrust" '..spell.target.raw)
  256. eventArgs.cancel = true
  257. end
  258. end
  259. end
  260. end
  261.  
  262. -- Run after the default precast() is done.
  263. -- eventArgs is the same one used in job_precast, in case information needs to be persisted.
  264.  
  265.  
  266. -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
  267. function job_midcast(spell, action, spellMap, eventArgs)
  268. if spell.action_type == 'Magic' then
  269. equip(sets.midcast.FastRecast)
  270. end
  271. end
  272.  
  273. -- Run after the default midcast() is done.
  274. -- eventArgs is the same one used in job_midcast, in case information needs to be persisted.
  275. function job_post_midcast(spell, action, spellMap, eventArgs)
  276. -- Effectively lock these items in place.
  277. if state.DefenseMode == 'Reraise' or
  278. (state.Defense.Active and state.Defense.Type == 'Physical' and state.Defense.PhysicalMode == 'Reraise') then
  279. equip(sets.Reraise)
  280. end
  281. end
  282.  
  283. -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
  284. function job_aftercast(spell, action, spellMap, eventArgs)
  285. if not spell.interrupted then
  286. if state.Buff[spell.english] ~= nil then
  287. state.Buff[spell.english] = true
  288. end
  289. end
  290. end
  291.  
  292.  
  293. -------------------------------------------------------------------------------------------------------------------
  294. -- Customization hooks for idle and melee sets, after they've been automatically constructed.
  295. -------------------------------------------------------------------------------------------------------------------
  296.  
  297. -------------------------------------------------------------------------------------------------------------------
  298. -- General hooks for other events.
  299. -------------------------------------------------------------------------------------------------------------------
  300.  
  301. -- Called when a player gains or loses a buff.
  302. -- buff == buff gained or lost
  303. -- gain == true if the buff was gained, false if it was lost.
  304. function job_buff_change(buff, gain)
  305. if state.Buff[buff] ~= nil then
  306. state.Buff[buff] = gain
  307. end
  308. end
  309.  
  310.  
  311. -------------------------------------------------------------------------------------------------------------------
  312. -- User code that supplements self-commands.
  313. -------------------------------------------------------------------------------------------------------------------
  314.  
  315. -- Called by the 'update' self-command, for common needs.
  316. -- Set eventArgs.handled to true if we don't want automatic equipping of gear.
  317. function job_update(cmdParams, eventArgs)
  318. classes.CustomMeleeGroups:clear()
  319. if areas.Adoulin:contains(world.area) and buffactive.ionis then
  320. classes.CustomMeleeGroups:append('Adoulin')
  321. end
  322. end
  323.  
  324. -- Set eventArgs.handled to true if we don't want the automatic display to be run.
  325. function display_current_job_state(eventArgs)
  326.  
  327. end
  328.  
  329. -------------------------------------------------------------------------------------------------------------------
  330. -- Utility functions specific to this job.
  331. -------------------------------------------------------------------------------------------------------------------
  332. function midcast(spell, action)
  333. if spell.type:find('Magic') then -- Should handle white/black/blue magic as an example
  334. if player.hpp < 51 then
  335. equip(sets.HB.Pre)
  336. end
  337. end
  338. end
  339.  
  340. function pet_midcast(spell, action)
  341. if spell.english:find('Healing Breath') then
  342. equip(sets.HB.Mid)
  343. end
  344. end
  345.  
  346. function pet_aftercast(spell, action)
  347. equip(sets[player.status])
  348. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement