Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -------------------------------------------------------------------------------------------------------------------
- -- Setup functions for this job. Generally should not be modified.
- -------------------------------------------------------------------------------------------------------------------
- -- 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')
- send_command('wait 1;input /lockstyleset 3')
- end
- -- Setup vars that are user-independent. state.Buff vars initialized here will automatically be tracked.
- function job_setup()
- indi_timer = ''
- indi_duration = 269
- end
- -------------------------------------------------------------------------------------------------------------------
- -- User setup functions for this job. Recommend that these be overridden in a sidecar file.
- -------------------------------------------------------------------------------------------------------------------
- -- Setup vars that are user-dependent. Can override this function in a sidecar file.
- function user_setup()
- state.OffenseMode:options('None', 'Normal','Accuracy')
- state.CastingMode:options('Normal', 'Resistant')
- state.IdleMode:options('Normal', 'PDT')
- lowTierNukes = S{'Stone', 'Water', 'Aero', 'Fire', 'Blizzard', 'Thunder',
- 'Stone II', 'Water II', 'Aero II', 'Fire II', 'Blizzard II', 'Thunder II',
- 'Stone III', 'Water III', 'Aero III', 'Fire III', 'Blizzard III', 'Thunder III',
- 'Stonega', 'Waterga', 'Aeroga', 'Firaga', 'Blizzaga', 'Thundaga',
- 'Stonega II', 'Waterga II', 'Aeroga II', 'Firaga II', 'Blizzaga II', 'Thundaga II',
- 'Stonera', 'Thundara', 'Fira', 'Blizzara', 'Aerora', 'Watera'}
- highTierNukes = S{'Stone IV', 'Water IV', 'Aero IV', 'Fire IV', 'Blizzard IV', 'Thunder IV',
- 'Stone V', 'Water V', 'Aero V', 'Fire V', 'Blizzard V', 'Thunder V',
- 'Stonera II', 'Thundara II', 'Fira II', 'Blizzara II', 'Aerora II', 'Watera II'}
- gear.default.weaponskill_waist = "Fotia Belt"
- gear.default.obi_waist = "yamabuki-no-obi"
- gear.default.obi_back = "seshaw Cape"
- gear.default.obi_ring = "Acumen Ring"
- select_default_macro_book()
- end
- -- function indi_change(itable,gain)
- -- if not gain then
- -- send_command('gh indi')
- -- end
- -- end
- -- Define sets and vars used by this job file.
- function init_gear_sets()
- --------------------------------------
- -- Precast sets
- --------------------------------------
- -- Precast sets to enhance JAs
- sets.precast.JA['Bolster'] = {body="Bagua Tunic +1"}
- sets.precast.JA['Life cycle'] = {body="Geomancy Tunic", back="Nantosuelta's cape"}
- sets.precast.JA['Curative Recantation'] = {hands="Bagua Mitaines +1"}
- sets.precast.JA['Mending Halation'] = {legs="Bagua Pants +3"}
- sets.precast.JA['Radial Arcana'] = {feet="Bagua Sandals +1"}
- sets.precast.JA['Primal Zeal'] = {head="Bagua galero"}
- sets.precast.JA['Cardinal Chant'] = {head="Geomancy galero"}
- sets.precast.JA['Full Circle'] = {head="Azimuth hood +1"}
- -- Fast cast sets for spells
- sets.precast.FC = {
- main={ name="Malevolence", augments={'INT+10','Mag. Acc.+10','"Mag.Atk.Bns."+10','"Fast Cast"+5',}},
- sub="Ammurapi Shield",
- range="Dunna",
- head={ name="Merlinic Hood", augments={'Mag. Acc.+25 "Mag.Atk.Bns."+25','Magic burst dmg.+7%','INT+2','Mag. Acc.+11',}},
- body={ name="Merlinic Jubbah", augments={'"Mag.Atk.Bns."+27','Magic burst dmg.+9%','INT+9','Mag. Acc.+13',}},
- hands={ name="Amalric Gages", augments={'MP+60','Mag. Acc.+15','"Mag.Atk.Bns."+15',}},
- legs="Geomancy Pants",
- feet="Regal Pumps +1",
- neck="Baetyl Pendant",
- waist="Witful Belt",
- left_ear="Etiolation Earring",
- right_ear="Loquac. Earring",
- left_ring="Prolix Ring",
- right_ring="Weather. Ring",
- back={ name="Nantosuelta's Cape", augments={'HP+60','Mag. Acc+20 /Mag. Dmg.+20','Mag. Acc.+10','"Fast Cast"+10',}},}
- sets.precast.FC.Cure = set_combine(sets.precast.FC, {
- main="Tamaxchi",
- ammo="Impatiens",
- sub="Genmei Shield",
- head="Merlinic hood",
- neck="Incanter's Torque",
- ear2="Loquac. Earring",
- body="Merlinic Jubbah",
- hands="Otomi gloves",
- ring1="Prolix Ring",
- ring2="Weatherspoon ring",
- back="Pahtli Cape",
- waist="Witful Belt",
- legs="Amalric slops",
- feet="Regal Pumps +1"})
- sets.precast.FC['Enhancing Magic'] = set_combine(sets.precast.FC, {
- waist="Siegel Sash"})
- sets.precast.FC['Elemental Magic'] = set_combine(sets.precast.FC, {
- neck="Eddy Necklace",
- hands="Bagua Mitaines +1"})
- sets.precast.FC.Impact = set_combine(sets.precast.FC['Elemental Magic'], {head=empty,body="Twilight Cloak"})
- -- Weaponskill sets
- -- Default set for any weaponskill that isn't any more specifically defined
- sets.precast.WS = {
- head="Merlinic hood",
- neck="asperity necklace",
- ear1="Bladeborn Earring",
- ear2="Steelflash Earring",
- body="Ischemia chasuble",
- hands="Amalric gages",
- ring1="Rajas Ring",
- ring2="K'ayres Ring",
- back="Refraction Cape",
- waist="cetl belt",
- legs="Bagua Pants +3",
- feet="Bagua Sandals +1"}
- -- Specific weaponskill sets. Uses the base set if an appropriate WSMod version isn't found.
- sets.precast.WS['Hexa Strike'] = {
- main={ name="Nehushtan", augments={'Accuracy+11','"Dbl.Atk."+2',}},
- sub={ name="Genmei Shield", augments={'"Cure" potency +3%','"Resist Paralyze"+6','"Cure" spellcasting time -5%',}},
- range="Dunna",
- head="Merlinic hood",
- body="Ischemia Chasu.",
- hands={ name="Otomi Gloves", augments={'Haste+2','"Snapshot"+2','MND+8',}},
- legs={ name="Bagua Pants +3", augments={'Enhances "Mending Halation" effect',}},
- feet={ name="Bagua Sandals +1", augments={'Enhances "Radial Arcana" effect',}},
- neck="Light Gorget",
- waist="Light Belt",
- ear1={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}},
- ear2="Brutal Earring",
- ring1="Levia. Ring",
- ring2="Levia. Ring",
- back="Refraction Cape",
- }
- sets.precast.WS['Realmrazer'] = {
- main={ name="Nehushtan", augments={'Accuracy+11','"Dbl.Atk."+2',}},
- sub={ name="Genmei Shield", augments={'"Cure" potency +3%','"Resist Paralyze"+6','"Cure" spellcasting time -5%',}},
- range="Dunna",
- head={ name="Befouled Crown", augments={'MP+30','Mag. Acc.+20','MND+7',}},
- body="Vanir Cotehardie",
- hands={ name="Otomi Gloves", augments={'Haste+2','"Snapshot"+2','MND+8',}},
- legs={ name="Bagua Pants +3", augments={'Enhances "Mending Halation" effect',}},
- feet={ name="Artsieq Boots", augments={'MP+30','Mag. Acc.+20','MND+7',}},
- neck="Light Gorget",
- waist="Light Belt",
- ear1={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}},
- ear2="Brutal Earring",
- ring1="Levia. Ring",
- ring2="Levia. Ring",
- back="Refraction Cape",
- }
- sets.precast.WS['Flash Nova'] = {head={ name="Hagondes Hat", augments={'Phys. dmg. taken -3%','"Mag.Atk.Bns."+22',}},
- body={ name="Merlinic Jubbah", augments={'Phys. dmg. taken -3%','"Mag.Atk.Bns."+16',}},
- hands={ name="Merlinic Hood +1", augments={'Phys. dmg. taken -4%','Magic dmg. taken -2%','"Mag.Atk.Bns."+27',}},
- legs={ name="Merlinic Shalwar", augments={'Phys. dmg. taken -3%','Magic dmg. taken -2%','"Mag.Atk.Bns."+22',}},
- feet="Umbani Boots",
- neck="Eddy Necklace",
- waist=gear.ElementalObi,
- ear1="Barkarole Earring",
- ear2=gear.ElementalRing,
- ring1="Weatherspoon Ring",
- ring2="Sangoma Ring",
- back=gear.ElementalCape,}
- sets.precast.WS['Black Halo'] = {head={ name="Hagondes Hat", augments={'Phys. dmg. taken -3%','"Mag.Atk.Bns."+22',}},
- body={ name="Merlinic Jubbah", augments={'Phys. dmg. taken -3%','"Mag.Atk.Bns."+16',}},
- hands={ name="Merlinic Hood", augments={'Phys. dmg. taken -4%','Magic dmg. taken -2%','"Mag.Atk.Bns."+27',}},
- legs={ name="Merlinic Shalwar", augments={'Phys. dmg. taken -3%','Magic dmg. taken -2%','"Mag.Atk.Bns."+22',}},
- feet="Umbani Boots",
- neck="Eddy Necklace",
- waist=gear.ElementalObi,
- ear1="Barkarole Earring",
- ear2=gear.ElementalRing,
- ring1="Weatherspoon Ring",
- ring2="Sangoma Ring",
- back=gear.ElementalCape,}
- sets.precast.WS['Exudation'] = {
- main={ name="Nehushtan", augments={'Accuracy+11','"Dbl.Atk."+2',}},
- sub={ name="Genmei Shield", augments={'"Cure" potency +3%','"Resist Paralyze"+6','"Cure" spellcasting time -5%',}},
- range="Dunna",head="Geo. Galero +1",body="Vanir Cotehardie",
- hands={ name="Otomi Gloves", augments={'Haste+2','"Snapshot"+2','MND+8',}},legs={ name="Bagua Pants +3", augments={'Enhances "Mending Halation" effect',}},feet={ name="Bagua Sandals +1", augments={'Enhances "Radial Arcana" effect',}},
- neck="Asperity Necklace",waist="Cetl Belt",ear1={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}},
- ear2="Brutal Earring",ring1="Levia. Ring",ring2="Levia. Ring",back="Refraction Cape",}
- sets.precast.WS['Starlight'] = {ear2="Moonshade Earring"}
- sets.precast.WS['Moonlight'] = {ear2="Moonshade Earring"}
- --------------------------------------
- -- Midcast sets
- --------------------------------------
- -- Base fast recast for spells
- sets.midcast.FastRecast = {main="Grioavolr",neck="Baetyl Pendant",
- head="Merlinic hood",ear2="Loquacious Earring",
- body="Merlinic Jubbah",hands="Otomi Gloves",ring1="Prolix Ring",ring2="Weatherspoon ring",
- back="Lifestream Cape",waist="Witful Belt",legs="Geomancy Pants",feet="Regal Pumps +1"}
- sets.midcast.Phalanx = {
- main={ name="Kirin's Pole", augments={'DMG:+24','"Resist Sleep"+5','Enha.mag. skill +11',}},
- sub="Fulcio Grip",range="Dunna",head="Umuthi Hat",hands="Ayao's Gages",
- legs="Portent Pants",feet="Umbani Boots",neck="Incanter's Torque",
- waist="Cascade Belt",ear1="Andoaa Earring",ear2="Magnetic Earring",
- ring1="Water Ring",ring2="Vocane Ring",back="Merciful Cape",}
- sets.midcast.Refresh = set_combine(sets.midcast['Enhancing Magic'], {
- back="Lifestream cape"})
- sets.midcast.Aquaveil = set_combine(sets.midcast['Enhancing Magic'], {
- waist="Witful belt"})
- sets.midcast.Geomancy = {main="Idris",sub="Genmei Shield",range="Dunna",
- head="Azimuth hood +1",neck="Incanter's Torque",ear1="Gifted Earring",ear2="Magnetic Earring",
- body="Bagua Tunic +1",hands="Geomancy mitaines +1",back="Lifestream cape",
- waist="Austerity belt",legs="Bagua Pants +3",feet="Medium's Sabots"}
- sets.midcast.Geomancy.Indi = set_combine(sets.midcast.Geomancy,{legs="Bagua Pants +3",feet="Azimuth gaiters +1"})
- sets.midcast.Cure = {
- main="Tamaxchi",
- sub="Genmei Shield",
- head="Merlinic hood",
- neck="Incanter's Torque",
- ear1="Mendicant's earring",
- ear2="Roundel earring",
- body="Vrikodara Jupon",
- hands="Bokwus Gloves",
- ring1="Sirona's Ring",
- ring2="Ephedra Ring",
- back="Pahtli Cape",
- waist="Luminary sash",
- legs="Psycloth lappas",
- feet="Vanya clogs"}
- sets.midcast.Stoneskin = set_combine(sets.midcast['Enhancing Magic'], {
- main={ name="Kirin's Pole", augments={'DMG:+24','"Resist Sleep"+5','Enha.mag. skill +11',}},
- sub="Fulcio Grip",
- range="Dunna",
- head="Umuthi Hat",
- hands="Ayao's Gages",
- legs="Portent Pants",
- feet="Umbani Boots",
- neck="Stone Gorget",
- waist="Cascade Belt",
- ear1="Andoaa Earring",
- ear2="Earthcry Earring",
- ring2="Water Ring",
- back="Merciful Cape",
- })
- sets.midcast.Curaga = sets.midcast.Cure
- sets.midcast.Protectra = {ring1="Sheltered Ring"}
- sets.midcast.Shellra = {ring1="Sheltered Ring"}
- -- Custom Spell Classes
- sets.midcast['Enfeebling Magic'] = {
- main="Grioavolr",
- sub="Niobid Strap",
- range="Dunna",
- neck="Incanter's Torque",
- ear1="Dignitary's earring",
- ear2="Barkarole earring",
- head="Befouled Crown",
- body="Vanya robe",
- hands="Lurid Mitts",
- ring1="Sangoma Ring",
- ring2="Weatherspoon ring",
- back="Lifestream Cape",
- waist="Luminary Sash",
- legs="Psycloth lappas",
- feet="Medium's sabots"}
- sets.midcast.ElementalEnfeeble = sets.midcast['Enfeebling Magic']
- sets.midcast['Dark Magic'] = {main="Grioavolr",sub="Caecus grip",ammo="Aureole",
- head="Bagua galero",neck="Incanter's Torque",ear1="Dark earring",ear2="Hirudinea earring",
- body="Geomancy Tunic",hands="Helios gloves",ring1="Excelsis ring",ring2="Weatherspoon ring",
- back="Refraction cape",waist="Fucho-no-obi",legs="Azimuth tights",feet="Artsieq boots"}
- sets.midcast.Drain = {main="Grioavolr",sub="Caecus grip",ammo="Aureole",
- head="Bagua galero",neck="Incanter's Torque",ear1="Dark earring",ear2="Hirudinea earring",
- body="Geomancy Tunic",hands="Helios gloves",ring1="Excelsis ring",ring2="Weatherspoon ring",
- back="Refraction cape",waist="Fucho-no-obi",legs="Azimuth tights",feet="Artsieq boots"}
- sets.midcast.Aspir = sets.midcast.Drain
- sets.midcast.Stun = {
- main="Idris",
- sub="Ammurapi Shield",
- range="Dunna",
- head={ name="Merlinic Hood", augments={'Mag. Acc.+25 "Mag.Atk.Bns."+25','Magic burst dmg.+7%','INT+2','Mag. Acc.+11',}},
- body={ name="Merlinic Jubbah", augments={'"Mag.Atk.Bns."+27','Magic burst dmg.+9%','INT+9','Mag. Acc.+13',}},
- hands={ name="Amalric Gages", augments={'MP+60','Mag. Acc.+15','"Mag.Atk.Bns."+15',}},
- legs="Geomancy Pants",
- feet={ name="Merlinic Crackows", augments={'Mag. Acc.+21 "Mag.Atk.Bns."+21','Magic burst dmg.+7%','INT+5','Mag. Acc.+13',}},
- neck="Erra Pendant",
- waist="Witful Belt",
- left_ear="Regal Earring",
- right_ear="Digni. Earring",
- left_ring="Kishar Ring",
- right_ring="Weather. Ring",
- back={ name="Nantosuelta's Cape", augments={'HP+60','Mag. Acc+20 /Mag. Dmg.+20','Mag. Acc.+10','"Fast Cast"+10',}},
- }
- sets.midcast.Bolster = {body="Bagua Tunic +1"}
- sets.midcast['Life Cycle'] = {body="Geo. Tunic"}
- sets.midcast['Mending Halation'] = {legs="Bagua Pants +3"}
- sets.midcast['Radial Arcana'] = {feet="Bagua Sandals +1"}
- sets.midcast.Bolster.Pet = {body="Bagua Tunic +1"}
- sets.midcast['Life Cycle'].Pet = {body="Geo. Tunic"}
- sets.midcast['Mending Halation'].Pet = {legs="Bagua Pants +3"}
- sets.midcast.Bolster.Pet.Indi = {body="Bagua Tunic +1"}
- sets.midcast['Life Cycle'].Pet.Indi = {body="Geo. Tunic"}
- sets.midcast['Mending Halation'].Pet.Indi = {legs="Bagua Pants +3"}
- -- Elemental Magic sets
- sets.midcast['Elemental Magic'] = {
- main="Grioavolr",
- sub="Niobid Strap",
- ammo="Pemphredo Tathlum",
- neck="Sanctity Necklace",
- ear1="Barkarole earring",
- ear2="Friomisi Earring",
- head="Merlinic hood",
- body="Merlinic Jubbah",
- hands="Amalric gages",
- ring1="Weatherspoon ring",
- ring2="Acumen Ring",
- back="Toro Cape",
- waist="Refoccilation Stone",
- legs="Merlinic Shalwar",
- feet="Merlinic Crackows"}
- sets.midcast['Elemental Magic'].Resistant = {main="Grioavolr",sub="Niobid Strap",ammo="Ghastly Tathlum +1",
- head="Merlinic hood",neck="Eddy Necklace",ear1="Barkarole Earring",ear2="Crematio Earring",
- body="Merlinic Jubbah",hands="Amalric gages",ring1="Acumen Ring",ring2="Weatherspoon Ring",
- back="Toro cape",waist="Refoccilation stone",legs="Merlinic Shalwar",feet="Merlinic crackows"}
- sets.midcast['Elemental Magic'].highTierNukes = set_combine(sets.midcast['Elemental Magic'],
- {head="Merlinic hood",hands="Amalric gages",feet="Merlinic crackows"})
- sets.midcast.Impact = {main="Grioavolr",sub="Niobid Strap",range="Dunna",
- head=empty,body="Twilight Cloak",hands="Amalric gages",legs="Merlinic Shalwar",
- feet="Merlinic Crackows",neck="Sanctity Necklace",waist="Luminary Sash",ear1="Barkarole Earring",
- ear2="Dignitary's earring",ring1="Weatherspoon Ring",ring2="Sangoma Ring",back="Lifestream Cape",}
- --------------------------------------
- -- Idle/resting/defense/etc sets
- --------------------------------------
- -- Resting sets
- sets.resting = {}
- -- Idle sets
- sets.idle = {main="Idris",sub="Genmei Shield",range="Dunna",
- head="Befouled crown",neck="Loricate Torque +1",ear1="Etiolation earring",ear2="Lugalbanda earring",
- body="Jhakri Robe +2",hands="Bagua Mitaines +1",ring1="Dark Ring",ring2="Defending Ring",
- back="Moonbeam cape",waist="Fucho-no-obi",legs="Assiduity pants +1",feet="Geomancy Sandals +3"}
- sets.idle.PDT = {main="Idris",sub="Genmei Shield",range="Dunna",
- head="Hagondes hat +1",neck="Loricate Torque +1",ear1="Etiolation earring",ear2="Lugalbanda earring",
- body="Jhakri Robe +2",hands="Geo. mitaines +1",ring1="Dark Ring",ring2="Defending Ring",
- back="Cheviot cape",waist="Fucho-no-obi",legs="Merlinic Shalwar",feet="Hagondes sabots +1"}
- -- .Pet sets are for when Luopan is present.
- sets.idle.Pet = {
- main="Idris",
- sub="Genmei Shield",
- range="Dunna",
- head="Azimuth Hood +1",
- body="Telchine Chas.",
- hands="Telchine gloves",
- legs="Telchine braconi",
- feet="Bagua Sandals +1",
- neck="Loricate Torque +1",
- waist="Isa Belt",
- ear1="Handler's Earring +1",
- ear2="Handler's Earring",
- ring1="Dark Ring",
- ring2="Defending Ring",
- back="Nantosuelta's cape"}
- sets.idle.PDT.Pet = {main="Idris",sub="Genmei Shield",range="Dunna",
- head="Azimuth Hood +1",
- neck="Loricate Torque +1",ear1="Handler's earring +1",ear2="Handler's earring",
- body="Telchine chasuble",hands="Telchine gloves",ring1="Dark Ring",ring2="Defending Ring",
- back="Nantosuelta's cape",waist="Isa belt",
- legs="Telchine braconi",
- feet="Bagua Sandals +1"}
- -- .Indi sets are for when an Indi-spell is active.
- sets.idle.Indi = set_combine(sets.idle, {})
- sets.idle.Pet.Indi = set_combine(sets.idle.Pet, {})
- sets.idle.PDT.Indi = set_combine(sets.idle.PDT, {})
- sets.idle.PDT.Pet.Indi = set_combine(sets.idle.PDT.Pet, {})
- sets.idle.Town = {main="Idris",sub="Genmei Shield",range="Dunna",
- head="Befouled crown",neck="Loricate Torque +1",ear1="Etiolation earring",ear2="Ethereal earring",
- body="Jhakri Robe +2",hands="Bagua Mitaines +1",ring1="Dark Ring",ring2="Defending Ring",
- back="Cheviot Cape",waist="Fucho-no-obi",legs="Assiduity pants +1",feet="Geomancy Sandals +3"}
- sets.idle.Weak = {main="Idris",sub="Genmei Shield",range="Dunna",
- head="Befouled crown",neck="Loricate Torque +1",ear1="Etiolation earring",ear2="Ethereal earring",
- body="Jhakri Robe +2",hands="Bagua Mitaines +1",ring1="Dark Ring",ring2="Defending Ring",
- back="Cheviot Cape",waist="Fucho-no-obi",legs="Assiduity pants +1",feet="Geomancy Sandals +3"}
- -- Defense sets
- sets.defense.PDT = {main="Idris",sub="Genmei Shield",range="Dunna",
- head="Hagondes hat +1",neck="Loricate Torque +1",ear1="Etiolation earring",ear2="Etiolation earring",
- body="Jhakri Robe +2",hands="Geo. mitaines +1",ring1="Dark Ring",ring2="Defending Ring",
- back="Cheviot Cape",waist="Fucho-no-obi",legs="Merlinic Shalwar",feet="Hagondes sabots +1"}
- sets.defense.MDT = {main="Idris",sub="Genmei Shield",range="Dunna",
- head="Hagondes hat +1",neck="Loricate Torque +1",ear1="Etiolation earring",ear2="Etiolation earring",
- body="Jhakri Robe +2",hands="Geo. mitaines +1",ring1="Dark Ring",ring2="Defending Ring",
- back="Cheviot Cape",waist="Fucho-no-obi",legs="Merlinic Shalwar",feet="Hagondes sabots +1"}
- sets.Kiting = {feet="Geomancy Sandals +3"}
- sets.latent_refresh = {waist="Fucho-no-obi"}
- sets.magic_burst = {ammo="Ghastly Tathlum +1",
- head="Merlinic hood",neck="Mizu. Kubikazari",ear1="Barkarole Earring",ear2="Friomisi earring",
- body="Merlinic Jubbah",hands="Amalric gages",ring1="Mujin band",ring2="Locus Ring",
- back="Seshaw cape",waist="Hachirin-no-Obi",legs="Merlinic Shalwar",feet="Amalric Nails"}
- --------------------------------------
- -- 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 = {
- main={ name="Idris", augments={'Accuracy+11','"Dbl.Atk."+2',}},
- sub={ name="Genmei Shield", augments={'"Cure" potency +3%','"Resist Paralyze"+6','"Cure" spellcasting time -5%',}},
- range="Dunna",
- head={ name="Hagondes Hat +1", augments={'Phys. dmg. taken -3%','Magic dmg. taken -4%','Enmity-4',}},
- body={ name="Merlinic Jubbah", augments={'Phys. dmg. taken -3%','"Mag.Atk.Bns."+16',}},
- hands={ name="Otomi Gloves", augments={'Haste+2','"Snapshot"+2','MND+8',}},
- legs={ name="Merlinic Shalwar", augments={'Phys. dmg. taken -3%','Magic dmg. taken -2%','"Mag.Atk.Bns."+22',}},
- feet={ name="Hag. Sabots +1", augments={'Phys. dmg. taken -1%','"Mag.Atk.Bns."+11',}},
- neck="Asperity Necklace",
- waist="Cetl Belt",
- ear1="Steelflash Earring",
- ear2="Bladeborn Earring",
- ring1="K'ayres Ring",
- ring2="Rajas Ring",
- back="Shadow Mantle",
- }
- sets.engaged.Accuracy = {
- main={ name="Idris", augments={'Accuracy+11','"Dbl.Atk."+2',}},
- sub={ name="Genmei Shield", augments={'"Cure" potency +3%','"Resist Paralyze"+6','"Cure" spellcasting time -5%',}},
- range="Dunna",
- head={ name="Hagondes Hat +1", augments={'Phys. dmg. taken -3%','Magic dmg. taken -4%','Enmity-4',}},
- body="Ischemia Chasu.",
- hands="Espial Bracers",
- legs={ name="Merlinic Shalwar", augments={'Phys. dmg. taken -3%','Magic dmg. taken -2%','"Mag.Atk.Bns."+22',}},
- feet={ name="Hag. Sabots +1", augments={'Phys. dmg. taken -1%','"Mag.Atk.Bns."+11',}},
- neck="Iqabi Necklace",
- waist="Olseni Belt",
- ear1="Steelflash Earring",
- ear2="Zennaroi Earring",
- ring1="Beeline Ring",
- ring2="Rajas Ring",
- back="Kayapa Cape",
- }
- --------------------------------------
- -- Custom buff sets
- --------------------------------------
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Job-specific hooks for standard casting events.
- -------------------------------------------------------------------------------------------------------------------
- -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
- function job_precast(spell, action, spellMap, eventArgs)
- if spellMap == 'Cure' or spellMap == 'Curaga' then
- gear.default.obi_waist = "yamabuki-no-obi"
- elseif spell.skill == 'Elemental Magic' then
- gear.default.obi_waist = "yamabuki-no-obi"
- if state.CastingMode.value == 'Proc' then
- classes.CustomClass = 'Proc'
- end
- end
- end
- function sub_job_change()
- send_command('wait 7;input /lockstyleset 3')
- end
- function job_midcast(spell, action, spellMap, eventArgs)
- if spell.action_type == 'Magic' then
- -- Default base equipment layer of fast recast.
- equip(sets.midcast.FastRecast)
- end
- end
- -- Custom spell mapping.
- function job_get_spell_map(spell, default_spell_map)
- if spell.skill == 'Elemental Magic' and default_spell_map ~= 'ElementalEnfeeble' then
- if lowTierNukes:contains(spell.english) then
- return 'lowTierNukes'
- else
- return 'highTierNukes'
- end
- end
- end
- -- Run after the general midcast() is done.
- function job_post_midcast(spell, action, spellMap, eventArgs)
- end
- function job_aftercast(spell, action, spellMap, eventArgs)
- if not spell.interrupted then
- if spell.english:startswith('Indi') then
- if not classes.CustomIdleGroups:contains('Indi') then
- classes.CustomIdleGroups:append('Indi')
- end
- send_command('@timers d "'..indi_timer..'"')
- indi_timer = spell.english
- send_command('@timers c "'..indi_timer..'" '..indi_duration..' down spells/00136.png')
- elseif spell.english == 'Sleep' or spell.english == 'Sleepga' then
- send_command('@timers c "'..spell.english..' ['..spell.target.name..']" 60 down spells/00220.png')
- elseif spell.english == 'Sleep II' or spell.english == 'Sleepga II' then
- send_command('@timers c "'..spell.english..' ['..spell.target.name..']" 90 down spells/00220.png')
- end
- elseif not player.indi then
- classes.CustomIdleGroups:clear()
- end
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Job-specific hooks for non-casting 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.
- function job_buff_change(buff, gain)
- if player.indi and not classes.CustomIdleGroups:contains('Indi')then
- classes.CustomIdleGroups:append('Indi')
- handle_equipping_gear(player.status)
- elseif classes.CustomIdleGroups:contains('Indi') and not player.indi then
- classes.CustomIdleGroups:clear()
- handle_equipping_gear(player.status)
- end
- end
- function job_state_change(stateField, newValue, oldValue)
- if stateField == 'Offense Mode' then
- if newValue == 'Accuracy' then
- disable('main','sub','range')
- else
- enable('main','sub','range')
- end
- end
- end
- -------------------------------------------------------------------------------------------------------------------
- -- User code that supplements standard library decisions.
- -------------------------------------------------------------------------------------------------------------------
- function job_get_spell_map(spell, default_spell_map)
- if spell.action_type == 'Magic' then
- if spell.skill == 'Enfeebling Magic' then
- if spell.type == 'WhiteMagic' then
- return 'MndEnfeebles'
- else
- return 'IntEnfeebles'
- end
- elseif spell.skill == 'Geomancy' then
- if spell.english:startswith('Indi') then
- return 'Indi'
- end
- end
- end
- end
- function customize_idle_set(idleSet)
- if player.mpp < 51 then
- idleSet = set_combine(idleSet, sets.latent_refresh)
- end
- return idleSet
- end
- -- Called by the 'update' self-command.
- function job_update(cmdParams, eventArgs)
- classes.CustomIdleGroups:clear()
- if player.indi then
- classes.CustomIdleGroups:append('Indi')
- end
- end
- -- Function to display the current relevant user state when doing an update.
- function display_current_job_state(eventArgs)
- display_current_caster_state()
- eventArgs.handled = true
- end
- function open_coffer()
- CofferType = "Velkk Coffer"
- NCoffer = player.inventory[CofferType].count
- bag = windower.ffxi.get_bag_info(0).count
- max = windower.ffxi.get_bag_info(0).max
- spots = max-bag
- if spots > 0 then
- add_to_chat(204, '*-*-*-*-*-*-*-*-* [ '..NCoffer..'x '..CofferType..' to open - Inventory('..bag..'/'..max..') ] *-*-*-*-*-*-*-*-*')
- local nextcommand = ""
- for i=1, spots do
- nextcommand = nextcommand .. 'input /item "'..CofferType..'" <me>; wait 2;'
- end
- nextcommand = nextcommand .. 'input //gs c "open"'
- send_command(nextcommand)
- else
- add_to_chat(204, '*-*-*-*-*-*-*-*-* [ Inventory('..bag..'/'..max..') ] *-*-*-*-*-*-*-*-*')
- end
- end
- function self_command(command)
- if command == 'open' then
- open_coffer()
- end
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Utility functions specific to this job.
- -------------------------------------------------------------------------------------------------------------------
- -- Select default macro book on initial load or subjob change.
- function select_default_macro_book()
- set_macro_page(1, 4)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement