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 to go with this.
- -- Initialization function for this job file.
- function get_sets()
- -- Load and initialize the include file.
- mote_include_version = 2
- include('Mote-Include.lua')
- include('organizer-lib')
- end
- -- Setup vars that are user-independent.
- function job_setup()
- state.Buff.Sentinel = buffactive.sentinel or false
- state.Buff.Cover = buffactive.cover or false
- state.Buff.Doomed = buffactive.doomed or false
- end
- -- Setup vars that are user-dependent. Can override this function in a sidecar file.
- function user_setup()
- -- Options: Override default values
- state.OffenseMode:options('Normal', 'PDT', 'MDT')
- state.RangedMode:options('Normal')
- state.HybridMode:options('Normal')
- state.WeaponskillMode:options('Normal')
- state.CastingMode:options('Normal')
- state.IdleMode:options('Normal', 'PDT', 'MDT')
- state.RestingMode:options('Normal')
- state.PhysicalDefenseMode:options('PDT')
- state.MagicalDefenseMode:options('MDT')
- end
- -- Define sets and vars used by this job file.
- function init_gear_sets()
- --------------------------------------
- -- Precast sets
- --------------------------------------
- sets.precast.JA = {
- }
- -- Precast sets to enhance JAs
- sets.precast.JA['Invincible'] = set_combine(sets.precast.JA, { })
- sets.precast.JA['Holy Circle'] = set_combine(sets.precast.JA, { })
- sets.precast.JA['Shield Bash'] = set_combine(sets.precast.JA, {hands="Valor Gauntlets", ear1="Knightly Earring",})
- sets.precast.JA['Sentinel'] = set_combine(sets.precast.JA, {feet="Valor Leggings",})
- sets.precast.JA['Rampart'] = set_combine(sets.precast.JA, { })
- sets.precast.JA['Fealty'] = set_combine(sets.precast.JA, { })
- sets.precast.JA['Divine Emblem'] = set_combine(sets.precast.JA, { })
- sets.precast.JA['Cover'] = set_combine(sets.precast.JA, { })
- -- add mnd for Chivalry
- sets.precast.JA['Chivalry'] = {
- }
- -- Waltz set (chr and vit)
- sets.precast.Waltz = {}
- -- Don't need any special gear for Healing Waltz.
- sets.precast.Waltz['Healing Waltz'] = {}
- sets.precast.Step = {}
- sets.precast.Flourish1 = {}
- -- Fast cast sets for spells
- sets.precast.FC = {
- }
- sets.precast.FC.Utsusemi = set_combine(sets.precast.FC, {})
- sets.precast.FC['Enhancing Magic'] = set_combine(sets.precast.FC, {neck="Enhancing Torque"})
- sets.precast.FC.Cure = set_combine(sets.precast.FC, {})
- -- Weaponskill sets
- -- Default set for any weaponskill that isn't any more specifically defined
- sets.precast.WS = {
- }
- --------------------------------------
- -- Midcast sets
- --------------------------------------
- sets.midcast.FastRecast = {
- }
- sets.midcast['Reprisal'] = {
- } -- use +HP Gear/Haste gear for this. Not enmity. Stack Haste, and where you can't get haste, stack HP
- sets.midcast.Enmity = {}
- sets.midcast.Flash = set_combine(sets.midcast.Enmity, {
- })
- sets.midcast.Stun = sets.midcast.Flash
- sets.midcast.Cure = {
- }
- sets.midcast['Enhancing Magic'] = set_combine(sets.midcast.FastRecast,{neck="Enhancing Torque", legs="Gallant Breeches",})
- sets.midcast.Protect = {}
- sets.midcast.Shell = {}
- --------------------------------------
- -- Idle/resting/defense/etc sets
- --------------------------------------
- sets.resting = {body="Ares' Cuirass"}
- -- Idle sets
- sets.idle = {
- head="Crimson Mask",
- neck="Parade Gorget",
- ear1="Coral Earring",
- ear2="Coral Earring",
- body="Ares' Cuirass",
- hands="Heavy Gauntlets",
- ring2="Merman's Ring",
- ring1="Jelly Ring",
- back="Lamia Mantle +1",
- waist="Resolute Belt",
- legs="Blood Cuisses",
- feet="Askar Gambieras",}
- sets.idle.Town = {
- head="Crimson Mask",
- neck="Parade Gorget",
- ear1="Coral Earring",
- ear2="Coral Earring",
- body="Ares' Cuirass",
- hands="Heavy Gauntlets",
- ring2="Merman's Ring",
- ring1="Jelly Ring",
- back="Lamia Mantle +1",
- waist="Resolute Belt",
- legs="Blood Cuisses",
- feet="Askar Gambieras",}
- sets.idle.Weak = {
- head="Crimson Mask",
- neck="Parade Gorget",
- ear1="Coral Earring",
- ear2="Coral Earring",
- body="Ares' Cuirass",
- hands="Heavy Gauntlets",
- ring2="Merman's Ring",
- ring1="Jelly Ring",
- back="Lamia Mantle +1",
- waist="Resolute Belt",
- legs="Blood Cuisses",
- feet="Askar Gambieras",}
- sets.idle.Weak.Reraise = set_combine(sets.idle.Weak, sets.Reraise)
- sets.defense.PDT = {
- head="Darksteel Cap +1",
- neck="Shield Torque",
- ear1="Hades Earring +1",
- ear2="Buckler Earring",
- body="Ares' Cuirass",
- hands="Heavy Gauntlets",
- ring2="Jelly Ring",
- ring1="Hercules' Ring",
- back="Lamia Mantle +1",
- waist="Trance Belt",
- legs="Darksteel Subligar +1",
- feet="Askar Gambieras"}
- sets.defense.MDT = {
- head="Coral Visor +1",
- neck="Orochi Nodowa",
- ear1="Merman's Earring",
- ear2="Merman's Earring",
- body="Coral Scale Mail +1",
- hands="Coral Finger Gauntlets +1",
- ring1="Merman's Ring",
- ring2="Merman's Ring",
- back="Lamia Mantle +1",
- waist="Resolute Belt",
- legs="Coral Cuisses +1",
- feet="Askar Gambieras"}
- --------------------------------------
- -- Engaged sets
- --------------------------------------
- sets.engaged = {}
- sets.engaged.PDT = {
- head="Darksteel Cap +1",
- neck="Shield Torque",
- ear1="Hades Earring +1",
- ear2="Buckler Earring",
- body="Ares' Cuirass",
- hands="Heavy Gauntlets",
- ring1="Jelly Ring",
- ring2="Hercules' Ring",
- back="Lamia Mantle +1",
- waist="Trance Belt",
- legs="Darksteel Subligar +1",
- feet="Askar Gambieras"}
- sets.engaged.MDT = {
- head="Coral Visor +1",
- neck="Orochi Nodowa",
- ear1="Coral Earring"
- ,ear2="Coral Earring",
- body="Coral Scale Mail +1",
- hands="Coral Finger Gauntlets +1",
- ring1="Merman's Ring",
- ring2="Merman's Ring",
- back="Lamia Mantle +1",
- waist="Resolute Belt",
- legs="Coral Cuisses +1",
- feet="Askar Gambieras"}
- --------------------------------------
- -- Custom buff sets
- --------------------------------------
- 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 gear equipping to be done.
- -- Set eventArgs.useMidcastGear to true if we want midcast gear equipped on precast.
- function job_precast(spell, action, spellMap, eventArgs)
- -- Don't gearswap for weaponskills when Defense is on.
- if state.Buff[spell.english] ~= nil then
- state.Buff[spell.english] = true
- end
- end
- -- Run after the default precast() is done.
- -- eventArgs is the same one used in job_precast, in case information needs to be persisted.
- function job_post_precast(spell, action, spellMap, eventArgs)
- end
- -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
- function job_midcast(spell, action, spellMap, eventArgs)
- 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)
- end
- -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
- function job_aftercast(spell, action, spellMap, eventArgs)
- if state.Buff[spell.english] ~= nil then
- state.Buff[spell.english] = not spell.interrupted or buffactive[spell.english]
- end
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Customization hooks for idle and melee sets, after they've been automatically constructed.
- -------------------------------------------------------------------------------------------------------------------
- -- Modify the default idle set after it was constructed.
- function customize_idle_set(idleSet)
- if player.mpp < 51 then
- idleSet = set_combine(idleSet, sets.latent_refresh)
- end
- return idleSet
- end
- -- Modify the default melee set after it was constructed.
- function customize_melee_set(meleeSet)
- if state.Buff.Doomed then
- meleeSet = set_combine(meleeSet, sets.Buff.Doomed)
- end
- return meleeSet
- end
- -------------------------------------------------------------------------------------------------------------------
- -- General hooks for change events.
- -------------------------------------------------------------------------------------------------------------------
- -- Called when the player's status changes.
- function job_state_change(field, new_value, old_value)
- if field == 'HybridDefenseMode' then
- classes.CustomDefenseGroups:clear()
- classes.CustomDefenseGroups:append(new_value)
- end
- end
- -- 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.
- function job_buff_change(buff, gain)
- if state.Buff[buff] ~= nil then
- state.Buff[buff] = gain
- end
- end
- -- 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)
- update_defense_mode()
- end
- -------------------------------------------------------------------------------------------------------------------
- -- User code that supplements self-commands.
- -------------------------------------------------------------------------------------------------------------------
- -- Set eventArgs.handled to true if we don't want the automatic display to be run.
- function display_current_job_state(eventArgs)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement