Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -------------------------------------------------------------------------------------------------------------------
- -- Initialization function that defines sets and variables to be used.
- -------------------------------------------------------------------------------------------------------------------
- -- IMPORTANT: Make sure to also get the Mote-Include.lua file (and its supplementary files) to go with this.
- -- Initialization function for this job file.
- function get_sets()
- -- Load and initialize the include file.
- include('Mote-Include.lua')
- init_include()
- -- UserGlobals may define additional sets to be added to the local ones.
- if define_global_sets then
- define_global_sets()
- end
- -- Optional: load a sidecar version of the init and unload functions.
- load_user_gear(player.main_job)
- init_gear_sets()
- -- Define sets and vars used by this job file.
- self_initialize()
- -- Default macro set/book
- set_macro_page(1, 16)
- -- Global default binds
- binds_on_load()
- -- Additional local binds
- windower.send_command('bind ^` input /ja "Hasso" <me>')
- windower.send_command('bind !` input /ja "Seigan" <me>')
- end
- -- Called when this job file is unloaded (eg: job change)
- function file_unload()
- binds_on_unload()
- windower.send_command('unbind ^`')
- windower.send_command('unbind !`')
- end
- -- Define sets and vars used by this job file.
- function self_initialize()
- -- Options: Override default values
- options.OffenseModes = {'Normal', 'Acc', 'Multi'}
- options.DefenseModes = {'Normal', 'PDT', 'Reraise'}
- options.WeaponskillModes = {'Normal', 'Acc', 'Att', 'Mod'}
- options.CastingModes = {'Normal'}
- options.IdleModes = {'Normal'}
- options.RestingModes = {'Normal'}
- options.PhysicalDefenseModes = {'PDT', 'Reraise'}
- options.MagicalDefenseModes = {'MDT'}
- state.Defense.PhysicalMode = 'PDT'
- --------------------------------------
- -- Start defining the sets
- --------------------------------------
- -- Precast Sets
- -- Precast sets to enhance JAs
- sets.precast.JA.Angon = {ammo="Angon",hands="Wyrm Finger Gauntlets +2"}
- sets.precast.JA.Jump = {ammo="Hagneia Stone",
- head="Otomi Helm",neck="Ganesha's Mala",ear1="Steelflash Earring",ear2="Bladeborn Earring",
- body="Lncr. Plackart +2",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
- back="Letalis Mantle",waist="Windbuffet Belt",legs="Cizin Breeches",feet="Karieyh Sollerets +1"}
- sets.precast.JA['Ancient Circle'] = {legs="Vishap Brais"}
- sets.precast.JA['High Jump'] = {ammo="Hagneia Stone",
- head="Otomi Helm",neck="Ganesha's Mala",ear1="Steelflash Earring",ear2="Bladeborn Earring",
- body="Lncr. Plackart +2",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
- back="Letalis Mantle",waist="Windbuffet Belt",legs="Cizin Breeches",feet="Karieyh Sollerets +1"}
- sets.precast.JA['Soul Jump'] = {ammo="Hagneia Stone",
- head="Otomi Helm",neck="Ganesha's Mala",ear1="Steelflash Earring",ear2="Bladeborn Earring",
- body="Lncr. Plackart +2",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
- back="Letalis Mantle",waist="Windbuffet Belt",legs="Cizin Breeches",feet="Karieyh Sollerets +1"}
- sets.precast.JA['Spirit Jump'] = {ammo="Hagneia Stone",
- head="Otomi Helm",neck="Ganesha's Mala",ear1="Steelflash Earring",ear2="Bladeborn Earring",
- body="Lncr. Plackart +2",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
- back="Letalis Mantle",waist="Windbuffet Belt",legs="Cizin Breeches",feet="Lncr. Schynbld. +2"}
- sets.precast.JA['Super Jump'] = {ammo="Hagneia Stone",
- head="Otomi Helm",neck="Ganesha's Mala",ear1="Steelflash Earring",ear2="Bladeborn Earring",
- body="Lncr. Plackart +2",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
- back="Letalis Mantle",waist="Windbuffet Belt",legs="Cizin Breeches",feet="Karieyh Sollerets +1"}
- sets.precast.JA['Spirit Link'] = {hands="Lnc. Vmbrc. +2"}
- sets.precast.JA['Call Wyvern'] = {body="Wyrm Mail +2"}
- sets.precast.JA['Deep Breathing'] = {hands="Wyrm Finger Gauntlets +2"}
- sets.precast.JA['Spirit Surge'] = {body="Wyrm Mail +2"}
- -- Healing Breath sets
- sets.HB = {ammo="Hagneia Stone",
- head="Vishap Armet",neck="Ganesha's Mala",ear1="Steelflash Earring",ear2="Bladeborn Earring",
- body="Cizin Mail",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
- back="Letalis Mantle",waist="Windbuffet Belt",legs="Cizin Breeches",feet="Karieyh Sollerets +1"}
- sets.HB.Pre = {head="Vishap Armet"}
- sets.HB.Mid = {ammo="Hagneia Stone",
- head="Wyrm Armet +2",neck="Lancer's Torque",ear1="Steelflash Earring",ear2="Bladeborn Earring",
- body="Cizin Mail",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
- back="Updraft Mantle",waist="Glassblower's Belt",legs="Vishap Brais",feet="Wyrm Greaves +2"}
- -- Waltz set (chr and vit)
- sets.precast.Waltz = {ammo="Sonia's Plectrum",
- head="Yaoyotl Helm",
- body="Mikinaak Breastplate",hands="Buremte Gloves",ring1="Spiral Ring",
- back="Letalis Mantle",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
- -- Don't need any special gear for Healing Waltz.
- sets.precast.Waltz['Healing Waltz'] = {}
- sets.midcast.Breath =
- set_combine(
- sets.midcast.FastRecast,
- { head="Vishap Armet" }
- )
- -- Weaponskill sets
- -- Default set for any weaponskill that isn't any more specifically defined
- sets.precast.WS = {ammo="Cheruski Needle",
- head="Otomi Helm",neck="Ganesha's Mala",ear1="Brutal Earring",ear2="Moonshade Earring",
- body="Mikiknaak Breastplate",hands="Lnc. Vmbrc. +2",ring1="Rajas Ring",ring2="Candent Ring",
- back="Atheling Mantle",waist="Windbuffet Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
- sets.precast.WS.Acc = set_combine(sets.precast.WS, {head="Yaoyotl Helm",back="Letalis Mantle"})
- -- Specific weaponskill sets. Uses the base set if an appropriate WSMod version isn't found.
- sets.precast.WS['Stardiver'] = set_combine(sets.precast.WS, {neck="Light Gorget",waist="Light Belt"})
- sets.precast.WS['Stardiver'].Acc = set_combine(sets.precast.WS.Acc, {neck="Light Gorget",waist="Light Belt"})
- sets.precast.WS['Stardiver'].Mod = set_combine(sets.precast.WS['Stardiver'], {neck="Light Gorget",waist="Light Belt"})
- sets.precast.WS['Drakesbane'] = set_combine(sets.precast.WS, {neck="Light Gorget"})
- sets.precast.WS['Drakesbane'].Acc = set_combine(sets.precast.WS.Acc, {neck="Light Gorget"})
- sets.precast.WS['Drakesbane'].Mod = set_combine(sets.precast.WS['Drakesbane'], {waist="Light Belt"})
- -- Midcast Sets
- sets.midcast.FastRecast = {
- head="Vishap Armet",
- body="Mikinaak Breastplate",hands="Cizin Mufflers",
- legs="Mikinaak Cuisses",feet="Karieyh Sollerets +1"}
- -- Sets to return to when not performing an action.
- -- Resting sets
- sets.resting = {head="Yaoyotl Helm",neck="Wiglen Gorget",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Ares' cuirass +1",hands="Cizin Mufflers",ring1="Sheltered Ring",ring2="Paguroidea Ring",
- back="Letalis Mantle",waist="Goading Belt",legs="Blood Cuisses",feet="Ejekamal Boots"}
- -- Idle sets (default idle set not needed since the other three are defined, but leaving for testing purposes)
- sets.idle.Town = {main="Upukirex", sub="Pole Grip",ammo="Thew Bomblet",
- head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Ares' cuirass +1",hands="Cizin Mufflers",ring1="Sheltered Ring",ring2="Paguroidea Ring",
- back="Atheling Mantle",waist="Goading Belt",legs="Blood Cuisses",feet="Ejekamal Boots"}
- sets.idle.Field = {
- head="Yaoyotl Helm",neck="Wiglen Gorget",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Ares' cuirass +1",hands="Cizin Mufflers",ring1="Sheltered Ring",ring2="Paguroidea Ring",
- back="Letalis Mantle",waist="Goading Belt",legs="Blood Cuisses",feet="Ejekamal Boots"}
- sets.idle.Weak = {
- head="Twilight Helm",neck="Wiglen Gorget",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Twilight Mail",hands="Buremte Gloves",ring1="Sheltered Ring",ring2="Paguroidea Ring",
- back="Letalis Mantle",waist="Goading Belt",legs="Miki. Cuisses",feet="Ejekamal Boots"}
- -- Defense sets
- sets.defense.PDT = {ammo="Hagneia Stone",
- head="Yaoyotl Helm",neck="Twilight Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Dark Ring",ring2="Dark Ring",
- back="Letalis Mantle",waist="Goading Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
- sets.defense.Reraise = {
- head="Twilight Helm",neck="Twilight Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Twilight Mail",hands="Buremte Gloves",ring1="Dark Ring",ring2="Paguroidea Ring",
- back="Letalis Mantle",waist="Goading Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
- sets.defense.MDT = {ammo="Demonry Stone",
- head="Yaoyotl Helm",neck="Twilight Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Sheltered Ring",ring2="Paguroidea Ring",
- back="Engulfer Cape",waist="Goading Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
- sets.Kiting = {legs="Blood Cuisses"}
- sets.Reraise = {head="Twilight Helm",body="Twilight Mail"}
- -- Engaged sets
- -- Variations for TP weapon and (optional) offense/defense modes. Code will fall back on previous
- -- sets if more refined versions aren't defined.
- -- If you create a set with both offense and defense modes, the offense mode should be first.
- -- EG: sets.engaged.Dagger.Accuracy.Evasion
- -- Normal melee group
- sets.engaged = {ammo="Hagneia Stone",
- head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Lncr. Plackart +2",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
- back="Atheling Mantle",waist="Goading Belt",legs="Cizin Breeches",feet="Karieyh Sollerets +1"}
- sets.engaged.Acc = {ammo="Hagneia Stone",
- head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="Mars's Ring",
- back="Letalis Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
- sets.engaged.Multi = {ammo="Hagneia Stone",
- head="Otomi Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
- back="Atheling Mantle",waist="Goading Belt",legs="Miki. Cuisses",feet="Ejekamal Boots"}
- sets.engaged.Acc.Multi = {ammo="Hagneia Stone",
- head="Otomi Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="Mars's Ring",
- back="Letalis Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Ejekamal Boots"}
- sets.engaged.PDT = {ammo="Hagneia Stone",
- head="Yaoyotl Helm",neck="Twilight Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Dark Ring",ring2="Dark Ring",
- back="Mollusca Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
- sets.engaged.Acc.PDT = {ammo="Hagneia Stone",
- head="Yaoyotl Helm",neck="Twilight Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Dark Ring",ring2="Dark Ring",
- back="Mollusca Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
- sets.engaged.Reraise = {ammo="Hagneia Stone",
- head="Twilight Helm",neck="Torero Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Twilight Mail",hands="Cizin Mufflers",ring1="Dark Ring",ring2="Dark Ring",
- back="Letalis Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
- sets.engaged.Acc.Reraise = {ammo="Hagneia Stone",
- head="Twilight Helm",neck="Torero Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Twilight Mail",hands="Cizin Mufflers",ring1="Dark Ring",ring2="Dark Ring",
- back="Letalis Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
- -- Melee sets for in Adoulin, which has an extra 2% Haste from Ionis.
- sets.engaged.Adoulin = {ammo="Hagneia Stone",
- head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Lncr. Plackart +2",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
- back="Takaha Mantle",waist="Goading Belt",legs="Cizin Breeches",feet="Karieyh Sollerets +1"}
- sets.engaged.Adoulin.Acc = {ammo="Hagneia Stone",
- head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="Mars's Ring",
- back="Takaha Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
- sets.engaged.Adoulin.Multi = {ammo="Hagneia Stone",
- head="Otomi Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="K'ayres Ring",
- back="Atheling Mantle",waist="Goading Belt",legs="Miki. Cuisses",feet="Ejekamal Boots"}
- sets.engaged.Adoulin.Acc.Multi = {ammo="Hagneia Stone",
- head="Otomi Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Rajas Ring",ring2="Mars's Ring",
- back="Letalis Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Ejekamal Boots"}
- sets.engaged.Adoulin.PDT = {ammo="Hagneia Stone",
- head="Yaoyotl Helm",neck="Twilight Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Dark Ring",ring2="Dark Ring",
- back="Mollusca Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
- sets.engaged.Adoulin.Acc.PDT = {ammo="Hagneia Stone",
- head="Yaoyotl Helm",neck="Twilight Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Mikinaak Breastplate",hands="Cizin Mufflers",ring1="Dark Ring",ring2="Dark Ring",
- back="Mollusca Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
- sets.engaged.Adoulin.Reraise = {ammo="Hagneia Stone",
- head="Twilight Helm",neck="Twilight Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Twilight Mail",hands="Cizin Mufflers",ring1="Dark Ring",ring2="Dark Ring",
- back="Letalis Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
- sets.engaged.Adoulin.Acc.Reraise = {ammo="Hagneia Stone",
- head="Twilight Helm",neck="Twilight Torque",ear1="Bladeborn Earring",ear2="Steelflash Earring",
- body="Twilight Mail",hands="Cizin Mufflers",ring1="Dark Ring",ring2="Dark Ring",
- back="Letalis Mantle",waist="Dynamic Belt",legs="Miki. Cuisses",feet="Karieyh Sollerets +1"}
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Job-specific hooks that are called to process player actions at specific points in time.
- -------------------------------------------------------------------------------------------------------------------
- -- Set eventArgs.handled to true if we don't want any automatic target handling to be done.
- -- Run after the default precast() is done.
- -- eventArgs is the same one used in job_precast, in case information needs to be persisted.
- -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
- function job_midcast(spell, action, spellMap, eventArgs)
- if spell.action_type == 'Magic' then
- equip(sets.midcast.FastRecast)
- if player.hpp < 51 then
- classes.CustomClass = "Breath" -- This would cause it to look for sets.midcast.Breath
- end
- end
- end
- function job_pet_midcast(spell,act)
- if spell.english:startswith('Healing Breath') or spell.english == 'Restoring Breath' then
- equip(sets.HB.Mid)
- end
- end
- -- Run after the default midcast() is done.
- -- eventArgs is the same one used in job_midcast, in case information needs to be persisted.
- function job_post_midcast(spell, action, spellMap, eventArgs)
- -- Effectively lock these items in place.
- if state.DefenseMode == 'Reraise' or
- (state.Defense.Active and state.Defense.Type == 'Physical' and state.Defense.PhysicalMode == 'Reraise') then
- equip(sets.Reraise)
- end
- end
- -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
- -------------------------------------------------------------------------------------------------------------------
- -- Customization hooks for idle and melee sets, after they've been automatically constructed.
- -------------------------------------------------------------------------------------------------------------------
- -------------------------------------------------------------------------------------------------------------------
- -- General hooks for other events.
- -------------------------------------------------------------------------------------------------------------------
- -- Called when a player gains or loses a buff.
- -- buff == buff gained or lost
- -- gain == true if the buff was gained, false if it was lost.
- -------------------------------------------------------------------------------------------------------------------
- -- User code that supplements self-commands.
- -------------------------------------------------------------------------------------------------------------------
- -- Called by the 'update' self-command, for common needs.
- -- Set eventArgs.handled to true if we don't want automatic equipping of gear.
- function job_update(cmdParams, eventArgs)
- classes.CustomMeleeGroups:clear()
- if areas.Adoulin:contains(world.area) and buffactive.ionis then
- classes.CustomMeleeGroups:append('Adoulin')
- end
- end
- -- Set eventArgs.handled to true if we don't want the automatic display to be run.
- function display_current_job_state(eventArgs)
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Utility functions specific to this job.
- -------------------------------------------------------------------------------------------------------------------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement