Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Setup functions for this job. Generally should not be modified.
- -------------------------------------------------------------------------------------------------------------------
- Enmity_Spells = S{"Foil","Flash","Blank Gaze","Geist Wall","Jettatura","Stun"}
- -- Initialization function for this job file.
- function get_sets()
- include('organizer-lib')
- mote_include_version = 2
- -- Load and initialize the include file.
- include('Mote-Include.lua')
- end
- -- Setup vars that are user-independent.
- function job_setup()
- -- Table of entries
- rune_timers = T{}
- -- entry = rune, index, expires
- if player.main_job_level >= 65 then
- max_runes = 3
- elseif player.main_job_level >= 35 then
- max_runes = 2
- elseif player.main_job_level >= 5 then
- max_runes = 1
- else
- max_runes = 0
- end
- state.Buff['Aftermath'] = buffactive['Aftermath: Lv.1'] or
- buffactive['Aftermath: Lv.2'] or
- buffactive['Aftermath: Lv.3'] or false
- no_swap_gear = S{"Warp Ring", "Dim. Ring (Dem)", "Dim. Ring (Holla)", "Dim. Ring (Mea)",
- "Trizek Ring", "Echad Ring", "Facility Ring", "Capacity Ring"}
- --include('Mote-TreasureHunter')
- --state.TreasureMode:set('Tag')
- end
- -------------------------------------------------------------------------------------------------------------------
- -- User setup functions for this job. Recommend that these be overridden in a sidecar file.
- -------------------------------------------------------------------------------------------------------------------
- function user_setup()
- state.OffenseMode:options('Normal', 'AccLow', 'AccHigh')
- state.RangedMode:options('Normal')
- state.HybridMode:options('Normal', 'PDT', 'Resist')
- state.WeaponskillMode:options('Normal', 'AccLow', 'AccHigh', 'Attack')
- state.CastingMode:options('Normal')
- state.IdleMode:options('Normal', 'Regen', 'Refresh', 'Dyna')
- state.RestingMode:options('Normal')
- state.PhysicalDefenseMode:options('PDT', 'Reraise')
- state.MagicalDefenseMode:options('MDT')
- update_combat_weapon()
- update_melee_groups()
- select_default_macro_book()
- send_command('lua l gearinfo')
- end
- function user_unload()
- send_command('lua u gearinfo')
- end
- function init_gear_sets()
- sets.enmity = {ammo="Aqreqaq Bomblet",
- head="Rabid Visor",
- body="Emet Harness +1",
- hands="Kurys Gloves",
- legs="Eri. Leg Guards +3",
- feet="Erilaz Greaves +3",
- neck={ name="Unmoving Collar +1", augments={'Path: A',}},
- waist="Goading Belt",
- left_ear="Cryptic Earring",
- right_ear={ name="Odnowa Earring +1", augments={'Path: A',}},
- left_ring="Gelatinous Ring +1",
- right_ring="Eihwaz Ring",
- back={ name="Ogma's Cape", augments={'HP+60','Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','Enmity+10','Phys. dmg. taken-10%',}}}
- sets.Battuta = {hands="Turms Mittens +1",feet="Futhark Boots +3 +1"}
- sets.cure = {ammo="Sapience Orb",
- head={ name="Nyame Helm", augments={'Path: B',}},
- body={ name="Nyame Mail", augments={'Path: A',}},
- hands="Erilaz Gauntlets +3",
- legs="Eri. Leg Guards +3",
- feet="Erilaz Greaves +3",
- neck="Sacro Gorget",
- waist="Sroda Belt",
- left_ear="Cryptic Earring",
- right_ear="Roundel Earring",
- left_ring="Eihwaz Ring",
- right_ring="Moonlight Ring",
- back={ name="Ogma's Cape", augments={'HP+60','Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','Enmity+10','Phys. dmg. taken-10%',}}}
- sets.sird = {ammo="Staunch Tathlum +1",
- head="Erilaz Galea +3",
- body={ name="Taeon Tabard", augments={'Pet: Accuracy+17 Pet: Rng. AccLow.+17','Spell interruption rate down -9%','Phalanx +3',}},
- hands="Regal Gauntlets",
- legs={ name="Carmine Cuisses +1", augments={'Accuracy+20','Attack+12','"Dual Wield"+6',}},
- neck="Moonlight Necklace",
- right_ring="Supershear Ring",
- back={ name="Ogma's Cape", augments={'HP+60','Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','Enmity+10','Spell interruption rate down-10%',}}}
- sets.TreasureHunter = {head="Volte Cap",
- body="Volte Jupon",
- feet="Volte Boots"}
- --------------------------------------
- -- Precast sets
- --------------------------------------
- -- Precast sets to enhance JAs
- sets.precast.JA['Vallation'] = set_combine(sets.enmity, {body="Runeist's coat +3", legs="Futhark trousers +3"})
- sets.precast.JA['Valiance'] = sets.precast.JA['Vallation']
- sets.precast.JA['Pflug'] = set_combine(sets.enmity, {feet="Runeist Bottes +3"})
- sets.precast.JA['Battuta'] = set_combine(sets.enmity, {head="Fu. Bandeau +3"})
- sets.precast.JA['Liement'] = set_combine(sets.enmity, {body="Futhark Coat +3"})
- sets.precast.JA['Lunge'] = {ammo={ name="Seeth. Bomblet +1", augments={'Path: A',}},
- head="Agwu's Cap",
- body={ name="Nyame Mail", augments={'Path: A',}},
- hands="Agwu's Gages",
- legs={ name="Nyame Flanchard", augments={'Path: B',}},
- feet={ name="Nyame Sollerets", augments={'Path: B',}},
- neck="Baetyl Pendant",
- waist="Orpheus's Sash",
- left_ear="Friomisi Earring",
- right_ear="Novio Earring",
- left_ring="Shiva Ring +1",
- right_ring="Shiva Ring +1",
- back={ name="Ogma's Cape", augments={'HP+60','Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','Enmity+10','Phys. dmg. taken-10%',}}}
- sets.precast.JA['Swipe'] = sets.precast.JA['Lunge']
- sets.precast.JA['Gambit'] = {hands="Runeist Mitons +2"}
- sets.precast.JA['Rayke'] = {feet="Futhark Boots +3"}
- sets.precast.JA['Elemental Sforzo'] = {body="Futhark Coat +3"}
- sets.precast.JA['Swordplay'] = {hands="Futhark Mitons +3"}
- sets.precast.JA['Embolden'] = {back={ name="Evasionist's Cape", augments={'Enmity+3','"Embolden"+15',}}}
- sets.precast.JA['Vivacious Pulse'] = set_combine(sets.enmity, {
- head="Erilaz Galea +3"})
- sets.precast.JA['One For All'] = set_combine(sets.enmity)
- sets.precast.JA['Provoke'] = sets.enmity
- -- Fast cast sets for spells
- sets.precast.FC = {
- ammo="Sapience Orb",
- head="Rune. Bandeau +3",
- body="Erilaz Surcoat +3",
- hands="Leyline Gloves",
- legs="Agwu's Slops",
- feet={ name="Carmine Greaves +1", augments={'HP+80','MP+80','Phys. dmg. taken -4',}},
- neck="Orunmila's Torque",
- waist="Oneiros Belt",
- left_ear="Loquac. Earring",
- right_ear="Etiolation Earring",
- left_ring="Kishar Ring",
- right_ring="Moonlight Ring",
- back={ name="Ogma's cape", augments={'HP+60','Eva.+20 /Mag. Eva.+20','HP+20','"Fast Cast"+10',}}}
- sets.precast.FC['Enhancing Magic'] = set_combine(sets.precast.FC, {legs="Futhark trousers +3"})
- sets.precast.FC['Utsusemi: Ichi'] = set_combine(sets.precast.FC, {neck='Magoraga beads', back="Mujin Mantle"})
- sets.precast.FC['Utsusemi: Ni'] = set_combine(sets.precast.FC['Utsusemi: Ichi'], {})
- -- Weaponskill sets
- sets.precast.WS['Resolution'] = {ammo={ name="Coiste Bodhar", augments={'Path: A',}},
- head={ name="Nyame Helm", augments={'Path: B',}},
- body={ name="Nyame Mail", augments={'Path: A',}},
- hands={ name="Nyame Gauntlets", augments={'Path: B',}},
- legs="Nyame Flanchard",
- feet={ name="Nyame Sollerets", augments={'Path: B',}},
- neck="Fotia Gorget",
- waist="Fotia Belt",
- left_ear="Sherida Earring",
- right_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +250',}},
- left_ring="Niqmaddu Ring",
- right_ring="Regal Ring",
- back={ name="Ogma's Cape", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Damage taken-5%',}}}
- sets.precast.WS['Resolution'].AccLow = {}
- sets.precast.WS['Dimidiation'] = {ammo="Knobkierrie",
- head={ name="Nyame Helm", augments={'Path: B',}},
- body={ name="Adhemar Jacket +1", augments={'DEX+12','AGI+12','Accuracy+20',}},
- hands={ name="Nyame Gauntlets", augments={'Path: B',}},
- legs={ name="Nyame Flanchard", augments={'Path: B',}},
- feet={ name="Nyame Sollerets", augments={'Path: B',}},
- neck="Fotia Gorget",
- waist={ name="Kentarch Belt +1", augments={'Path: A',}},
- left_ear="Sherida Earring",
- right_ear="Ishvara Earring",
- left_ring="Cornelia's Ring",
- right_ring="Epaminondas's Ring",
- back={ name="Ogma's Cape", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','Weapon skill damage +10%',}}}
- sets.precast.WS['Dimidiation'].AccLow = set_combine(sets.precast.WS['Dimidiation'],{})
- sets.precast.WS['Ground Strike'] = set_combine(sets.precast.WS['Dimidiation'], {})
- sets.precast.WS['Herculean Slash'] = set_combine(sets.precast['Lunge'])
- sets.precast.WS['Herculean Slash'].AccLow = set_combine(sets.precast.WS['Herculean Slash'].Normal, {})
- sets.precast.WS['Weapon Break'] = {ammo="Pemphredo Tathlum",
- head="Sakpata's Helm",
- body="Sakpata's Plate",
- hands={ name="Sakpata's Gauntlets", augments={'Path: A',}},
- legs="Sakpata's Cuisses",
- feet="Sakpata's Leggings",
- neck="Sanctity Necklace",
- waist="Eschan Stone",
- left_ear="Digni. Earring",
- right_ear={ name="Boii Earring +1", augments={'System: 1 ID: 1676 Val: 0','Accuracy+13','Mag. AccLow.+13','Crit.hit rate+4',}},
- left_ring={ name="Metamor. Ring +1", augments={'Path: A',}},
- right_ring="Stikini Ring +1",
- back={ name="Ogma's Cape", augments={'STR+20','Mag. AccLow+20 /Mag. Dmg.+20','Mag. AccLow.+10','Weapon skill damage +10%','Phys. dmg. taken-10%',}}}
- sets.precast.WS['Armor Break'] = set_combine(sets.precast.WS['Weapon Break'], {})
- --------------------------------------
- -- Midcast sets
- --------------------------------------
- sets.midcast.FastRecast = {}
- sets.midcast['Enhancing Magic'] = {head="Erilaz Galea +3",
- hands="Runeist Mitons +2",
- legs={ name="Carmine Cuisses +1", augments={'Accuracy+20','Attack+12','"Dual Wield"+6',}},
- neck="Incanter's Torque",
- left_ear="Andoaa Earring",
- right_ear="Mimir Earring",
- left_ring="Stikini Ring +1"}
- sets.midcast['Phalanx'] = set_combine(sets.midcast['Enhancing Magic'], {head={ name="Fu. Bandeau +3", augments={'Enhances "Battuta" effect',}},
- body={ name="Herculean Vest", augments={'Crit. hit damage +1%','Weapon skill damage +2%','Phalanx +4','Accuracy+11 Attack+11',}},
- hands={ name="Herculean Gloves", augments={'MND+9','Crit. hit damage +2%','Phalanx +4','Accuracy+16 Attack+16',}},
- legs={ name="Herculean Trousers", augments={'Pet: STR+8','CHR+3','Phalanx +5','Accuracy+18 Attack+18',}},
- feet={ name="Herculean Boots", augments={'INT+2','Weapon Skill Acc.+11','Phalanx +3','Mag. Acc.+7 "Mag.Atk.Bns."+7',}}})
- sets.midcast['Regen'] = {head="Runeist Bandeau +3", hands="Regal Gauntlets", legs="Futhark trousers +3"}
- sets.midcast['Stoneskin'] = set_combine(sets.midcast['Enhancing Magic'], sets.midcast['Foil'])
- sets.midcast['Flash'] = set_combine(sets.midcast['Foil'])
- sets.midcast['Stun'] = set_combine(sets.midcast['Foil'])
- sets.midcast['Poisonga'] = set_combine(sets.midcast['Foil'])
- sets.midcast['Foil'] = set_combine(sets.enmity, {ammo="Staunch Tathlum +1",
- head="Erilaz Galea +3",
- body={ name="Nyame Mail", augments={'Path: A',}},
- hands="Regal Gauntlets",
- neck="Moonlight Necklace",
- waist="Audumbla Sash",
- left_ear="Magnetic Earring",
- left_ring="Supershear Ring",
- back={ name="Ogma's Cape", augments={'HP+60','Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','Enmity+10','Spell interruption rate down-10%',}}})
- sets.midcast['Blank Gaze'] = set_combine(sets.midcast['Foil'], {})
- sets.midcast['Jettatura'] = set_combine(sets.midcast['Foil'], {})
- sets.midcast['Soporific'] = {ammo="Staunch Tathlum +1",
- head="Erilaz Galea +3",
- body="Nyame Mail",
- hands="Regal Gauntlets",
- legs="Carmine Cuisses +1",
- feet="Erilaz Greaves +3",
- neck="Moonlight Necklace",
- waist="Plat. Mog. Belt",
- left_ear="Magnetic Earring",
- right_ear="Odnowa Earring +1",
- left_ring="Defending Ring",
- right_ring="Gelatinous Ring +1",
- back={ name="Ogma's Cape", augments={'HP+60','Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','Enmity+10','Spell interruption rate down-10%',}}}
- sets.midcast['Sheep Song'] = set_combine(sets.midcast['Foil'])
- sets.midcast['Geist Wall'] = set_combine(sets.midcast['Soporific'])
- sets.midcast['Cocoon'] = set_combine(sets.midcast['Foil'], {})
- sets.midcast['Wild Carrot'] = set_combine(sets.cure)
- sets.midcast['Healing Breeze'] = set_combine(sets.cure)
- sets.midcast['Magic Fruit'] = set_combine(sets.cure)
- sets.midcast['Crusade'] = set_combine(sets.midcast['Regen'])
- --------------------------------------
- -- Idle/resting/defense/etc sets
- --------------------------------------
- sets.idle = {ammo="Yamarang",
- head={ name="Nyame Helm", augments={'Path: B',}},
- body="Erilaz Surcoat +3",
- hands="Turms Mittens +1",
- legs={ name="Carmine Cuisses +1", augments={'Accuracy+20','Attack+12','"Dual Wield"+6',}},
- feet="Erilaz Greaves +3",
- neck={ name="Futhark Torque +2", augments={'Path: A',}},
- waist="Plat. Mog. Belt",
- left_ear="Eabani Earring",
- right_ear="Erilaz Earring +1",
- left_ring={ name="Gelatinous Ring +1", augments={'Path: A',}},
- right_ring="Moonlight Ring",
- back={ name="Ogma's Cape", augments={'HP+60','Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','Enmity+10','Phys. dmg. taken-10%',}}}
- sets.idle.Refresh = set_combine(sets.idle, {ammo="Homiliary",
- body="Runeist Coat +3",
- hands="Nyame Gauntlets",
- neck="Sibyl Scarf",
- right_ring="Stikini Ring +1",})
- sets.idle.Regen = set_combine(sets.idle, {body={ name="Futhark Coat +3", augments={'Enhances "Elemental Sforzo" effect',}},
- hands="Regal Gauntlets",
- feet="Turms Leggings +1",
- neck="Bathy Choker +1"})
- sets.idle.Dyna= set_combine(sets.idle, {legs="Eri. Leg Guards +3",
- right_ear="Eabani Earring"})
- sets.defense.PDT = {}
- sets.defense.MDT = set_combine(sets.defense.PDT, {})
- --------------------------------------
- -- Engaged sets
- --------------------------------------
- sets.engaged = {ammo="Yamarang",
- head={ name="Adhemar Bonnet +1", augments={'DEX+12','AGI+12','Accuracy+20',}},
- body={ name="Adhemar Jacket +1", augments={'DEX+12','AGI+12','Accuracy+20',}},
- hands={ name="Adhemar Wrist. +1", augments={'DEX+12','AGI+12','Accuracy+20',}},
- legs={ name="Samnuha Tights", augments={'STR+10','DEX+10','"Dbl.Atk."+3','"Triple Atk."+3',}},
- feet={ name="Herculean Boots", augments={'Accuracy+27','"Triple Atk."+4','MND+8','Attack+15',}},
- neck="Anu Torque",
- waist="Windbuffet Belt +1",
- left_ear="Telos Earring",
- right_ear="Sherida Earring",
- left_ring="Niqmaddu Ring",
- right_ring="Epona's Ring",
- back={ name="Ogma's cape", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Damage taken-5%'}}}
- sets.engaged.AccLow = set_combine(sets.engaged, {
- hands={ name="Adhemar Wrist. +1", augments={'DEX+12','AGI+12','Accuracy+20',}},
- feet={name="Herculean Boots", augments={'Accuracy+27','"Triple Atk."+4','MND+8','Attack+15',}},
- legs="Rune. Trousers +3",
- neck="Lissome Necklace",
- waist="Kentarch Belt +1",
- lear="Telos Earring",
- rear="Digni. Earring",
- ring1="Ilabrat Ring",
- back={name="Ogma's cape", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Store TP"+10','Phys. dmg. taken-10%'}}})
- sets.engaged.AccHigh = set_combine(sets.engaged.AccLow,
- {head={name="Carmine Mask +1", augments={'Accuracy+20','Mag. AccLow.+12','"Fast Cast"+4',}},
- body="Runeist's Coat +3",
- ring2="Regal Ring",
- back={name="Ogma's cape", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Store TP"+10','Phys. dmg. taken-10%'}}})
- sets.engaged.PDT = {ammo="Staunch Tathlum +1",
- head={ name="Nyame Helm", augments={'Path: B',}},
- body="Erilaz Surcoat +3",
- hands="Turms Mittens +1",
- legs="Eri. Leg Guards +3",
- feet="Erilaz Greaves +3",
- neck="Futhark Torque +2",
- waist="Ioskeha Belt +1",
- left_ear="Telos Earring",
- right_ear="Erilaz Earring +1",
- left_ring="Chirich Ring +1",
- right_ring="Moonlight Ring",
- back={ name="Ogma's Cape", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Damage taken-5%',}}}
- sets.engaged.PDT.AccLow = {ammo="Yamarang",
- head={ name="Nyame Helm", augments={'Path: B',}},
- body={ name="Nyame Mail", augments={'Path: A',}},
- hands="Turms Mittens +1",
- legs="Eri. Leg Guards +3",
- feet="Erilaz Greaves +3",
- neck={ name="Futhark Torque +2", augments={'Path: A',}},
- waist="Ioskeha Belt +1",
- left_ear="Sherida Earring",
- right_ear="Erilaz Earring +1",
- left_ring="Niqmaddu Ring",
- right_ring="Chirich Ring +1",
- back={ name="Ogma's Cape", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Damage taken-5%',}}}
- sets.engaged.Epeolatry = {ammo={ name="Coiste Bodhar", augments={'Path: A',}},
- head={ name="Adhemar Bonnet +1", augments={'DEX+12','AGI+12','Accuracy+20',}},
- body={ name="Adhemar Jacket +1", augments={'DEX+12','AGI+12','Accuracy+20',}},
- hands="Turms Mittens +1",
- legs="Eri. Leg Guards +3",
- feet="Turms Leggings +1",
- neck="Lissome Necklace",
- waist="Ioskeha Belt +1",
- left_ear="Telos Earring",
- right_ear="Sherida Earring",
- left_ring="Niqmaddu Ring",
- right_ring="Epona's Ring",
- back={ name="Ogma's Cape", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Damage taken-5%',}}}
- sets.engaged.Epeolatry.AccLow = set_combine(sets.engaged.Epeolatry, {})
- sets.engaged.Epeolatry.AccHigh = set_combine(sets.engaged.Epeolatry.AccLow, {})
- sets.engaged.Epeolatry.PDT = {ammo="Staunch Tathlum +1",
- head={ name="Nyame Helm", augments={'Path: B',}},
- body="Erilaz Surcoat +3",
- hands="Turms Mittens +1",
- legs="Eri. Leg Guards +3",
- feet="Erilaz Greaves +3",
- neck="Futhark Torque +2",
- waist="Ioskeha Belt +1",
- left_ear="Telos Earring",
- right_ear="Erilaz Earring +1",
- left_ring="Chirich Ring +1",
- right_ring="Moonlight Ring",
- back={ name="Ogma's Cape", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Damage taken-5%',}}}
- sets.engaged.Epeolatry.AccLow.PDT = set_combine(sets.engaged.Epeolatry.PDT, {})
- sets.engaged.Epeolatry.Resist = set_combine(sets.engaged.Epeolatry.PDT, {head="Volte Cap",
- body="Runeist Coat +3",
- hands="Volte Bracers",
- legs="Rune. Trousers +3",
- feet="Erilaz Greaves +3",
- left_ear="Hearty Earring",
- back={ name="Ogma's Cape", augments={'HP+60','Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','Enmity+10','Phys. dmg. taken-10%',}}})
- -- Epeolatry Aftermath Lv.3 sets
- sets.engaged.Epeolatry.AM3 = {ammo={ name="Coiste Bodhar", augments={'Path: A',}},
- head={ name="Adhemar Bonnet +1", augments={'DEX+12','AGI+12','Accuracy+20',}},
- body="Nyame Mail",
- hands="Turms Mittens +1",
- legs="Volte Tights",
- feet="Volte Spats",
- neck="Lissome Necklace",
- waist={ name="Kentarch Belt +1", augments={'Path: A',}},
- left_ear="Dedition Earring",
- right_ear="Sherida Earring",
- left_ring="Niqmaddu Ring",
- right_ring="Epona's Ring",
- back={ name="Ogma's Cape", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Damage taken-5%',}}}
- sets.engaged.Epeolatry.AccLow.AM3 = set_combine(sets.engaged.Epeolatry.AM3, {})
- sets.engaged.Epeolatry.AccHigh.AM3 = set_combine(sets.engaged.Epeolatry.AccLow.AM3, {})
- sets.engaged.Epeolatry.PDT.AM3 = set_combine(sets.engaged.Epeolatry.PDT, {ammo="Yamarang",
- body={ name="Nyame Mail", augments={'Path: A',}},
- left_ear="Dedition Earring",
- back={ name="Ogma's Cape", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Store TP"+10','Phys. dmg. taken-10%',}}})
- sets.engaged.Epeolatry.AccLow.PDT.AM3 = set_combine(sets.engaged.Epeolatry.PDT.AM3, {})
- sets.engaged.Epeolatry.Resist.AM3 = set_combine(sets.engaged.Epeolatry.AM3, {head="Volte Cap",
- body="Runeist Coat +3",
- hands="Volte Bracers",
- legs="Rune. Trousers +3",
- feet="Erilaz Greaves +3",
- left_ear="Hearty Earring",
- back={ name="Ogma's Cape", augments={'HP+60','Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','Enmity+10','Phys. dmg. taken-10%',}}})
- sets.engaged.Lionheart = {ammo={ name="Coiste Bodhar", augments={'Path: A',}},
- head={ name="Adhemar Bonnet +1", augments={'DEX+12','AGI+12','Accuracy+20',}},
- body={ name="Adhemar Jacket +1", augments={'DEX+12','AGI+12','Accuracy+20',}},
- hands="Turms Mittens +1",
- legs="Eri. Leg Guards +3",
- feet="Turms Leggings +1",
- neck="Lissome Necklace",
- waist="Ioskeha Belt +1",
- left_ear="Telos Earring",
- right_ear="Sherida Earring",
- left_ring="Niqmaddu Ring",
- right_ring="Epona's Ring",
- back={ name="Ogma's Cape", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Damage taken-5%',}}}
- sets.engaged.Lionheart.AccLow = set_combine(sets.engaged.Lionheart, {})
- sets.engaged.Lionheart.Resist = set_combine(sets.engaged.Lionheart.Resist, {head="Volte Cap",
- body="Runeist Coat +3",
- hands="Volte Bracers",
- legs="Rune. Trousers +3",
- feet="Erilaz Greaves +3",
- left_ear="Hearty Earring",
- back={ name="Ogma's Cape", augments={'HP+60','Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','Enmity+10','Phys. dmg. taken-10%',}}})
- sets.engaged.Lionheart.PDT = {ammo="Staunch Tathlum +1",
- head={ name="Nyame Helm", augments={'Path: B',}},
- body="Erilaz Surcoat +3",
- hands="Turms Mittens +1",
- legs="Eri. Leg Guards +3",
- feet="Erilaz Greaves +3",
- neck="Futhark Torque +2",
- waist="Ioskeha Belt +1",
- left_ear="Telos Earring",
- right_ear="Erilaz Earring +1",
- left_ring="Chirich Ring +1",
- right_ring="Moonlight Ring",
- back={ name="Ogma's Cape", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Damage taken-5%',}}}
- sets.engaged.Lionheart.SubtleBlow = {}
- sets.engaged.Lionheart.AccLow.PDT = {ammo="Yamarang",
- head={ name="Nyame Helm", augments={'Path: B',}},
- body={ name="Nyame Mail", augments={'Path: A',}},
- hands="Turms Mittens +1",
- legs="Eri. Leg Guards +3",
- feet="Erilaz Greaves +3",
- neck={ name="Futhark Torque +2", augments={'Path: A',}},
- waist="Ioskeha Belt +1",
- left_ear="Sherida Earring",
- right_ear="Erilaz Earring +1",
- left_ring="Niqmaddu Ring",
- right_ring="Chirich Ring +1",
- back={ name="Ogma's Cape", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Damage taken-5%',}}}
- sets.engaged.Lycurgos = {ammo={ name="Coiste Bodhar", augments={'Path: A',}},
- head={ name="Adhemar Bonnet +1", augments={'DEX+12','AGI+12','Accuracy+20',}},
- body={ name="Adhemar Jacket +1", augments={'DEX+12','AGI+12','Accuracy+20',}},
- hands="Turms Mittens +1",
- legs="Eri. Leg Guards +3",
- feet="Turms Leggings +1",
- neck="Lissome Necklace",
- waist="Ioskeha Belt +1",
- left_ear="Telos Earring",
- right_ear="Sherida Earring",
- left_ring="Niqmaddu Ring",
- right_ring="Epona's Ring",
- back={ name="Ogma's Cape", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Damage taken-5%',}}}
- sets.engaged.Lycurgos.AccLow = set_combine(sets.engaged.Lycurgos, {})
- sets.engaged.Lycurgos.Resist = set_combine(sets.engaged.Lycurgos.Resist, {head="Volte Cap",
- body="Runeist Coat +3",
- hands="Volte Bracers",
- legs="Rune. Trousers +3",
- feet="Erilaz Greaves +3",
- left_ear="Hearty Earring",
- back={ name="Ogma's Cape", augments={'HP+60','Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','Enmity+10','Phys. dmg. taken-10%',}}})
- sets.engaged.Lycurgos.PDT = {ammo="Yamarang",
- head={ name="Nyame Helm", augments={'Path: B',}},
- body="Erilaz Surcoat +3",
- hands="Turms Mittens +1",
- legs="Eri. Leg Guards +3",
- feet="Erilaz Greaves +3",
- neck="Futhark Torque +2",
- waist="Ioskeha Belt +1",
- left_ear="Telos Earring",
- right_ear="Erilaz Earring +1",
- left_ring="Chirich Ring +1",
- right_ring="Moonlight Ring",
- back={ name="Ogma's Cape", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Damage taken-5%',}}}
- sets.engaged.Lycurgos.SubtleBlow = {}
- sets.engaged.Lycurgos.AccLow.PDT = {ammo="Yamarang",
- head={ name="Nyame Helm", augments={'Path: B',}},
- body={ name="Nyame Mail", augments={'Path: A',}},
- hands="Turms Mittens +1",
- legs="Eri. Leg Guards +3",
- feet="Erilaz Greaves +3",
- neck={ name="Futhark Torque +2", augments={'Path: A',}},
- waist="Ioskeha Belt +1",
- left_ear="Sherida Earring",
- right_ear="Erilaz Earring +1",
- left_ring="Niqmaddu Ring",
- right_ring="Chirich Ring +1",
- back={ name="Ogma's Cape", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Damage taken-5%',}}}
- sets.engaged.repulse = {back="Repulse Mantle"}
- end
- ------------------------------------------------------------------
- -- Action events
- ------------------------------------------------------------------
- -- Run after the default midcast() is done.
- -- eventArgs is the same one used in job_midcast, in case information needs to be persisted.
- function midcast(spell,act)
- if spell.action_type == 'Magic' then
- if spell.english == 'Phalanx' then
- equip({head="Fu. bandeau +3"})
- elseif Enmity_Spells:contains(spell.name) then
- equip(sets.enmity)
- send_command('@input /echo Enmity Set')
- else
- equip(sets.precast.FC)
- end
- end
- end
- function job_aftercast(spell)
- if not spell.interrupted then
- if spell.type == 'Rune' then
- update_timers(spell)
- elseif spell.name == "Lunge" or spell.name == "Gambit" or spell.name == 'Rayke' then
- reset_timers()
- elseif spell.name == "Swipe" then
- send_command(trim(1))
- end
- end
- end
- function status_change(new,old)
- if buffactive['Battuta'] then
- equip(sets.Battuta)
- end
- end
- function job_buff_change(buff, gain)
- if buff == "Aftermath: Lv.3" or buff == "Aftermath" then
- classes.CustomMeleeGroups:clear()
- if (buff == "Aftermath: Lv.3" and gain) or buffactive["Aftermath: Lv.3"] then
- if player.equipment.main == "Epeolatry" then
- classes.CustomMeleeGroups:append('AM3')
- if gain then
- send_command('timers create "Aftermath: Lv.3" 180 down;wait 120;input /echo Aftermath: Lv.3 [WEARING OFF IN 60 SEC.];wait 30;input /echo Aftermath: Lv.3 [WEARING OFF IN 30 SEC.];wait 20;input /echo Aftermath: Lv.3 [WEARING OFF IN 10 SEC.]')
- else
- send_command('timers delete "Aftermath: Lv.3"')
- add_to_chat(123,'AM3: [OFF]')
- end
- end
- end
- end
- if buff == "Aftermath: Lv.3" or buff == "Aftermath" then
- handle_equipping_gear(player.status)
- end
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Customization hooks for idle and melee sets, after they've been automatically constructed.
- -------------------------------------------------------------------------------------------------------------------
- -------------------------------------------------------------------------------------------------------------------
- -- General hooks for other events.
- -------------------------------------------------------------------------------------------------------------------
- -------------------------------------------------------------------------------------------------------------------
- -- User code that supplements self-commands.
- -------------------------------------------------------------------------------------------------------------------
- -------------------------------------------------------------------------------------------------------------------
- -- Utility functions specific to this job.
- -------------------------------------------------------------------------------------------------------------------
- -- Select default macro book on initial load or subjob change.
- function select_default_macro_book()
- -- Default macro set/book
- if player.sub_job == 'WAR' then
- set_macro_page(3, 20)
- elseif player.sub_job == 'NIN' then
- set_macro_page(1, 20)
- elseif player.sub_job == 'SAM' then
- set_macro_page(2, 20)
- else
- set_macro_page(5, 20)
- end
- end
- function update_combat_weapon()
- state.CombatWeapon:set(player.equipment.main)
- end
- function update_melee_groups()
- classes.CustomMeleeGroups:clear()
- if buffactive['Aftermath: Lv.3'] and player.equipment.main == "Epeolatry" then
- classes.CustomMeleeGroups:append('AM3')
- end
- if buffactive.Aftermath and player.equipment.main == "Bravura" and state.HybridMode.value == 'PDT' then
- classes.CustomMeleeGroups:append('AM')
- end
- end
- function get_rune_obi_element()
- weather_rune = buffactive[elements.rune_of[world.weather_element] or '']
- day_rune = buffactive[elements.rune_of[world.day_element] or '']
- local found_rune_element
- if weather_rune and day_rune then
- if weather_rune > day_rune then
- found_rune_element = world.weather_element
- else
- found_rune_element = world.day_element
- end
- elseif weather_rune then
- found_rune_element = world.weather_element
- elseif day_rune then
- found_rune_element = world.day_element
- end
- return found_rune_element
- end
- function get_obi(element)
- if element and elements.obi_of[element] then
- return (player.inventory[elements.obi_of[element]] or player.wardrobe[elements.obi_of[element]]) and elements.obi_of[element]
- end
- end
- ------------------------------------------------------------------
- -- Timer manipulation
- ------------------------------------------------------------------
- -- Add a new run to the custom timers, and update index values for existing timers.
- function update_timers(spell)
- local expires_time = os.time() + 300
- local entry_index = rune_count(spell.name) + 1
- local entry = {rune=spell.name, index=entry_index, expires=expires_time}
- rune_timers:append(entry)
- local cmd_queue = create_timer(entry).. ';wait 0.05;'
- cmd_queue = cmd_queue .. trim()
- add_to_chat(123,'cmd_queue='..cmd_queue)
- send_command(cmd_queue)
- end
- -- Get the command string to create a custom timer for the provided entry.
- function create_timer(entry)
- local timer_name = '"Rune: ' .. entry.rune .. '-' .. tostring(entry.index) .. '"'
- local duration = entry.expires - os.time()
- return 'timers c ' .. timer_name .. ' ' .. tostring(duration) .. ' down'
- end
- -- Get the command string to delete a custom timer for the provided entry.
- function delete_timer(entry)
- local timer_name = '"Rune: ' .. entry.rune .. '-' .. tostring(entry.index) .. '"'
- return 'timers d ' .. timer_name .. ''
- end
- -- Reset all timers
- function reset_timers()
- local cmd_queue = ''
- for index,entry in pairs(rune_timers) do
- cmd_queue = cmd_queue .. delete_timer(entry) .. ';wait 0.05;'
- end
- rune_timers:clear()
- send_command(cmd_queue)
- end
- -- Get a count of the number of runes of a given type
- function rune_count(rune)
- local count = 0
- local current_time = os.time()
- for _,entry in pairs(rune_timers) do
- if entry.rune == rune and entry.expires > current_time then
- count = count + 1
- end
- end
- return count
- end
- -- Remove the oldest rune(s) from the table, until we're below the max_runes limit.
- -- If given a value n, remove n runes from the table.
- function trim(n)
- local cmd_queue = ''
- local to_remove = n or (rune_timers:length() - max_runes)
- while to_remove > 0 and rune_timers:length() > 0 do
- local oldest
- for index,entry in pairs(rune_timers) do
- if oldest == nil or entry.expires < rune_timers[oldest].expires then
- oldest = index
- end
- end
- cmd_queue = cmd_queue .. prune(rune_timers[oldest].rune)
- to_remove = to_remove - 1
- end
- return cmd_queue
- end
- -- Drop the index of all runes of a given type.
- -- If the index drops to 0, it is removed from the table.
- function prune(rune)
- local cmd_queue = ''
- for index,entry in pairs(rune_timers) do
- if entry.rune == rune then
- cmd_queue = cmd_queue .. delete_timer(entry) .. ';wait 0.05;'
- entry.index = entry.index - 1
- end
- end
- for index,entry in pairs(rune_timers) do
- if entry.rune == rune then
- if entry.index == 0 then
- rune_timers[index] = nil
- else
- cmd_queue = cmd_queue .. create_timer(entry) .. ';wait 0.05;'
- end
- end
- end
- return cmd_queue
- end
- ------------------------------------------------------------------
- -- Reset events
- ------------------------------------------------------------------
- windower.raw_register_event('zone change',reset_timers)
- windower.raw_register_event('logout',reset_timers)
- windower.raw_register_event('status change',function(new, old)
- if gearswap.res.statuses[new].english == 'Dead' then
- reset_timers()
- end
- end)
- function gearinfo(cmdParams, eventArgs)
- if cmdParams[1] == 'gearinfo' then
- if type(cmdParams[4]) == 'string' then
- if cmdParams[4] == 'true' then
- moving = true
- elseif cmdParams[4] == 'false' then
- moving = false
- end
- end
- if not midaction() then
- job_update()
- end
- end
- end
- function check_moving()
- if state.DefenseMode.value == 'None' and state.Kiting.value == false then
- if state.Auto_Kite.value == false and moving then
- state.Auto_Kite:set(true)
- elseif state.Auto_Kite.value == true and moving == false then
- state.Auto_Kite:set(false)
- end
- end
- end
- function check_gear()
- if no_swap_gear:contains(player.equipment.left_ring) then
- disable("ring1")
- else
- enable("ring1")
- end
- if no_swap_gear:contains(player.equipment.right_ring) then
- disable("ring2")
- else
- enable("ring2")
- end
- end
- windower.register_event('zone change',
- function()
- if no_swap_gear:contains(player.equipment.left_ring) then
- enable("ring1")
- equip(sets.idle)
- end
- if no_swap_gear:contains(player.equipment.right_ring) then
- enable("ring2")
- equip(sets.idle)
- end
- end
- )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement