Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- *** Credit goes to Flippant for helping me with Gearswap *** --
- -- ** I Use Motenten's Macro Book Function ** --
- function get_sets()
- include('poshack.lua')
- AccIndex = 1
- AccArray = {"LowACC","MidACC","HighACC"} -- 3 Levels Of Accuracy Sets For Magic. Default ACC Set Is LowACC. Add More ACC Sets If Needed Then Create Your New ACC Below --
- IdleIndex = 1
- IdleArray = {"Refresh","Movement","MP"} -- Default Idle Set Is Refresh --
- Armor = 'None'
- StunIndex = 0
- Obi = 'ON' -- Turn Default Obi ON or OFF Here --
- LowNuke = 'OFF' -- Set Default Low Tier Nuke ON or OFF Here --
- MB = 'OFF' -- Set Default MB ON or OFF Here --
- Main = 'OFF' -- Set Default Main Weapon ON or OFF Here --
- Elemental_Staff = 'OFF' -- Set Default Precast Elemental Staff ON or OFF Here --
- target_distance = 5 -- Set Default Distance Here --
- select_default_macro_book() -- Change Default Macro Book At The End --
- Low_Tier_Spells = S{
- 'Fire','Aero','Water','Blizzard','Stone','Thunder','Fire II','Aero II','Water II',
- 'Blizzard II','Stone II','Thunder II'}
- Non_Obi_Spells = S{
- 'Burn','Choke','Drown','Frost','Rasp','Shock','Impact','Anemohelix','Cryohelix',
- 'Geohelix','Hydrohelix','Ionohelix','Luminohelix','Noctohelix','Pyrohelix'}
- Cure_Spells = {"Cure","Cure II","Cure III","Cure IV"} -- Cure Degradation --
- Curaga_Spells = {"Curaga","Curaga II"} -- Curaga Degradation --
- sc_map = {SC1 = "Stun", SC2 = "ThunderVI", SC3 = "BlizzardVI"} -- 3 Additional Binds. Can Change Whatever JA/WS/Spells You Like Here. Remember Not To Use Spaces. --
- sets.Idle = {}
- -- Idle Sets --
- sets.Idle.Refresh = {
- main="Bolelabunga",
- sub="Genmei Shield",
- ammo="Pemphredo Tathlum",
- head="Hagondes Hat +1",
- body="Jhakri Robe +1",
- hands="Hagondes Cuffs +1",
- legs="Assiduity Pants +1",
- feet="Herald's Gaiters",
- neck="Loricate Torque +1",
- waist="Fucho-no-obi",
- left_ear="Moonshade Earring",
- right_ear="Ethereal Earring",
- left_ring="Woltaris Ring",
- right_ring="Defending Ring",
- back="Repulse Mantle"}
- sets.Idle.MP = {
- main="Bolelabunga",
- sub="Genmei Shield",
- ammo="Pemphredo Tathlum",
- head="Hagondes Hat +1",
- body="Jhakri Robe +1",
- hands="Hagondes Cuffs +1",
- legs="Assiduity Pants +1",
- feet="Herald's Gaiters",
- neck="Loricate Torque +1",
- waist="Fucho-no-obi",
- left_ear="Moonshade Earring",
- right_ear="Ethereal Earring",
- left_ring="Woltaris Ring",
- right_ring="Defending Ring",
- back="Repulse Mantle"}
- sets.Idle.Movement = set_combine(sets.Idle.Refresh,{
- legs="Artsieq Hose",
- feet="Herald's Gaiters"})
- sets.Resting = set_combine(sets.Idle.Movement,{})
- -- PDT Set --
- sets.PDT = set_combine(sets.Idle.Movement,{})
- -- Sublimation Set --
- sets.Sublimation = {}
- sets.Precast = {}
- -- Fastcast Set (empty = To Fix Club/Staff Issue) --
- sets.Precast.FastCast = {
- ammo="Sapience Orb",
- head="Nahtirah Hat",
- neck="Voltsurge Torque",
- ear1="Loquac. Earring",
- ear2="Enchanter Earring +1",
- body="Anhur Robe",
- hands="Hagondes Cuffs +1",
- ring1="Prolix Ring",
- ring2="Defending Ring",
- back="Swith Cape +1",
- waist="Witful Belt",
- legs="Psycloth Lappas",
- feet="Regal Pumps +1"}
- -- Elemental Staves --
- sets.Precast.Lightning = {main='Apamajas I'}
- sets.Precast.Water = {main='Haoma I'}
- sets.Precast.Fire = {main='Atar I'}
- sets.Precast.Ice = {main='Vourukasha I'}
- sets.Precast.Wind = {main='Vayuvata I'}
- sets.Precast.Earth = {main='Vishrava I'}
- sets.Precast.Light = {main='Arka I'}
- sets.Precast.Dark = {main='Xsaeta I'}
- -- Precast Stoneskin
- sets.Precast.Stoneskin = set_combine(sets.Precast.FastCast,{head="Umuthi Hat",waist="Siegel Sash"})
- -- Precast Enhancing Magic
- sets.Precast['Enhancing Magic'] = set_combine(sets.Precast.FastCast,{waist="Siegel Sash"})
- -- Precast Elemental Magic
- sets.Precast['Elemental Magic'] = set_combine(sets.Precast.FastCast,{})
- -- Precast Cure Set --
- sets.Precast.Cure = set_combine(sets.Precast.FastCast, {
- body="Heka's Kalasiris",
- back="Pahtli Cape"})
- -- Midcast Base Set --
- sets.Midcast = {}
- -- Haste Set --
- sets.Midcast.Haste = {}
- -- Cure Set --
- sets.Midcast.Cure = {
- head={ name="Vanya Hood", augments={'Healing magic skill +20','System: 2 ID: 123 Val: 6','Magic dmg. taken -3',}},
- body="Heka's Kalasiris",
- hands="Telchine Gloves",
- legs="Assid. Pants +1",
- feet={ name="Vanya Clogs", augments={'Healing magic skill +20','System: 2 ID: 123 Val: 6','Magic dmg. taken -3',}},
- neck="Nodens Gorget",
- waist="Bishop's Sash",
- left_ear="Loquac. Earring",
- right_ear="Novia Earring",
- left_ring="Sirona's Ring",
- right_ring="Haoma's Ring",
- back="Tempered Cape +1"}
- -- Curaga Set --
- sets.Midcast.Curaga = {
- head={ name="Vanya Hood", augments={'Healing magic skill +20','System: 2 ID: 123 Val: 6','Magic dmg. taken -3',}},
- body="Heka's Kalasiris",
- hands="Telchine Gloves",
- legs="Assid. Pants +1",
- feet={ name="Vanya Clogs", augments={'Healing magic skill +20','System: 2 ID: 123 Val: 6','Magic dmg. taken -3',}},
- neck="Nodens Gorget",
- waist="Bishop's Sash",
- left_ear="Loquac. Earring",
- right_ear="Novia Earring",
- left_ring="Sirona's Ring",
- right_ring="Haoma's Ring",
- back="Tempered Cape +1"}
- -- Enhancing Magic Set --
- sets.Midcast['Enhancing Magic'] = {
- head="Umuthi Hat",
- body="Telchine Chas.",
- hands="Telchine Gloves",
- legs="Telchine Braconi",
- feet="Telchine Pigaches",
- neck="Colossus's Torque",
- waist="Olympus Sash"}
- -- Stoneskin Set --
- sets.Midcast.Stoneskin = set_combine(sets.Midcast['Enhancing Magic'],{
- neck="Nodens Gorget",
- ear2="Earthcry Earring"})
- -- Cursna Set --
- sets.Midcast.Cursna = set_combine(sets.Midcast.Haste,{})
- -- Stun Sets --
- sets.Midcast.Stun = {}
- sets.Midcast.Stun.MidACC = set_combine(sets.Midcast.Stun,{})
- sets.Midcast.Stun.HighACC = set_combine(sets.Midcast.Stun.MidACC,{})
- -- Dark Magic Sets --
- sets.Midcast['Dark Magic'] = {
- main={ name="Grioavolr", augments={'Mag. crit. hit dmg. +7%','INT+14','Mag. Acc.+21','"Mag.Atk.Bns."+27','Magic Damage +4',}},
- sub="Mephitis Grip",
- ammo="Pemphredo Tathlum",
- head="Merlinic Hood",
- body="Merlinic Jubbah",
- hands="Amalric Gages",
- legs="Azimuth Tights +1",
- feet="Merlinic Crackows",
- neck="Sanctity Necklace",
- waist="Luminary Sash",
- left_ear="Barkarole Earring",
- right_ear="Digni. Earring",
- left_ring="Sangoma Ring",
- right_ring="Evanescence Ring",
- back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','"Mag.Atk.Bns."+10',}}}
- sets.Midcast['Dark Magic'].MidACC = set_combine(sets.Midcast['Dark Magic'],{})
- sets.Midcast['Dark Magic'].HighACC = set_combine(sets.Midcast['Dark Magic'].MidACC,{})
- -- Aspir Set --
- sets.Midcast.Aspir = {
- waist="Fucho-no-obi",
- feet="Merlinic Crackows"}
- -- Drain Set --
- sets.Midcast.Drain = {
- waist="Fucho-no-obi",
- feet="Merlinic Crackows"}
- -- Low Tier Set --
- sets.LowNuke = {
- main="Lathi",
- sub="Mephitis Grip",
- ammo="Pemphredo Tathlum",
- head="Merlinic Hood",
- body="Merlinic Jubbah",
- hands="Amalric Gages",
- legs="Merlinic Shalwar",
- feet="Merlinic Crackows",
- neck="Sanctity Necklace",
- waist="Refoccilation Stone",
- left_ear="Friomisi Earring",
- right_ear="Barkarole Earring",
- left_ring="Shiva Ring",
- right_ring="Acumen Ring",
- back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','"Mag.Atk.Bns."+10',}}}
- -- MB Set --
- sets.MB = {
- main="Lathi",
- sub="Mephitis Grip",
- ammo="Pemphredo Tathlum",
- head="Merlinic Hood",
- body="Spaekona's Coat +1",
- hands="Amalric Gages",
- legs="Merlinic Shalwar",
- feet="Jhakri Pigaches +1",
- neck="Mizukage-no-Kubikazari",
- waist="Refoccilation Stone",
- left_ear="Friomisi Earring",
- right_ear="Barkarole Earring",
- left_ring="Locus Ring",
- right_ring="Mujin Band",
- back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','"Mag.Atk.Bns."+10',}}}
- -- Elemental Sets --
- sets.Midcast['Elemental Magic'] = {
- main="Lathi",
- sub="Mephitis Grip",
- ammo="Pemphredo Tathlum",
- head="Merlinic Hood",
- body="Spaekona's Coat +1",
- hands="Amalric Gages",
- legs="Merlinic Shalwar",
- feet="Merlinic Crackows",
- neck="Sanctity Necklace",
- waist="Refoccilation Stone",
- left_ear="Friomisi Earring",
- right_ear="Barkarole Earring",
- left_ring="Shiva Ring",
- right_ring="Acumen Ring",
- back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','"Mag.Atk.Bns."+10',}}}
- sets.Midcast['Elemental Magic'].MidACC = set_combine(sets.Midcast['Elemental Magic'],{})
- sets.Midcast['Elemental Magic'].HighACC = set_combine(sets.Midcast['Elemental Magic'].MidACC,{})
- -- Enfeebling Sets --
- sets.Midcast['Enfeebling Magic'] = {
- main={ name="Grioavolr", augments={'Mag. crit. hit dmg. +7%','INT+14','Mag. Acc.+21','"Mag.Atk.Bns."+27','Magic Damage +4',}},
- sub="Mephitis Grip",
- ammo="Pemphredo Tathlum",
- head="Merlinic Hood",
- body="Vanya Robe",
- hands="Jhakri Cuff +1",
- legs={ name="Psycloth Lappas", augments={'MP+80','Mag. Acc.+15','"Fast Cast"+7',}},
- feet="Merlinic Crackows",
- neck="Voltsurge Torque",
- waist="Luminary Sash",
- left_ear="Barkarole Earring",
- right_ear="Digni. Earring",
- left_ring="Sangoma Ring",
- right_ring="Vertigo Ring",
- back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','"Mag.Atk.Bns."+10',}}}
- sets.Midcast['Enfeebling Magic'].MidACC = set_combine(sets.Midcast['Enfeebling Magic'],{})
- sets.Midcast['Enfeebling Magic'].HighACC = set_combine(sets.Midcast['Enfeebling Magic'].MidACC,{})
- -- Impact Set --
- sets.Midcast.Impact = {
- body="Twilight Cloak"}
- -- Meteor Set --
- sets.Midcast.Meteor = {}
- -- Elemental Obi/Twilight Cape --
- sets.Obi = {}
- sets.Obi.Lightning = {waist='Hachirin-no-Obi'}
- sets.Obi.Water = {waist='Hachirin-no-Obi'}
- sets.Obi.Fire = {waist='Hachirin-no-Obi'}
- sets.Obi.Ice = {waist='Hachirin-no-Obi'}
- sets.Obi.Wind = {waist='Hachirin-no-Obi'}
- sets.Obi.Earth = {waist='Hachirin-no-Obi'}
- sets.Obi.Light = {waist='Hachirin-no-Obi'}
- sets.Obi.Dark = {waist='Hachirin-no-Obi'}
- sets.JA = {}
- -- JA Sets --
- sets.JA.Manafont = {body="Arch. Coat +1"}
- sets.JA['Mana Wall'] = {
- feet="Wicce Sabots +1",
- back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','"Mag.Atk.Bns."+10',}}}
- -- Melee Set --
- sets.Melee = set_combine(sets.Midcast.Haste,{
- head={ name="Hagondes Hat +1", augments={'Phys. dmg. taken -4%','Magic burst mdg.+6%',}},
- body={ name="Hagondes Coat +1", augments={'Phys. dmg. taken -4%','Magic dmg. taken -4%',}},
- hands={ name="Hagondes Cuffs +1", augments={'Phys. dmg. taken -4%','"Fast Cast"+5',}},
- legs="Assid. Pants +1",
- feet={ name="Merlinic Crackows", augments={'Mag. Acc.+25 "Mag.Atk.Bns."+25','Mag. Acc.+14','"Mag.Atk.Bns."+6',}},
- neck="Loricate Torque +1",
- waist="Witful Belt",
- left_ear={ name="Moonshade Earring", augments={'Mag. Acc.+4','Latent effect: "Refresh"+1',}},
- right_ear="Ethereal Earring",
- left_ring="Woltaris Ring",
- right_ring="Defending Ring",
- back="Repulse Mantle"})
- -- Lock Main Weapon --
- sets.MainWeapon = {
- main={ name="Grioavolr", augments={'Magic burst mdg.+6%','MP+47','Mag. Acc.+11','"Mag.Atk.Bns."+27',}},
- sub="Mephitis Grip"}
- -- WS Base Set --
- sets.WS = {}
- sets.WS.Shattersoul = {}
- sets.WS.Myrkr = {}
- sets.WS.Vidohunir = {}
- sets.WS["Gate of Tartarus"] = {}
- sets.WS["Aeolian Edge"] = {
- ammo="Pemphredo Tathlum",
- head="Merlinic Hood",
- body="Merlinic Jubbah",
- hands="Amalric Gages",
- legs="Merlinic Shalwar",
- feet="Merlinic Crackows",
- neck="Sanctity Necklace",
- waist="Refoccilation Stone",
- left_ear="Friomisi Earring",
- right_ear="Barkarole Earring",
- left_ring="Shiva Ring",
- right_ring="Acumen Ring",
- back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','"Mag.Atk.Bns."+10',}}}
- -- Idle Reive Set --
- sets.Reive = {neck="Arciela's Grace +1"}
- end
- function pretarget(spell,action)
- if spell.action_type == 'Magic' and buffactive.silence then -- Auto Use Echo Drops If You Are Silenced --
- cancel_spell()
- send_command('input /item "Echo Drops" <me>')
- elseif spell.type == 'WeaponSkill' and player.status == 'Engaged' then
- if not spell.english == 'Myrkr' and spell.target.distance > target_distance then -- Cancel WS If You Are Out Of Range --
- cancel_spell()
- add_to_chat(123, spell.name..' Canceled: [Out of Range]')
- return
- end
- elseif spell.english:ifind("Cure") and player.mp<actualCost(spell.mp_cost) then
- degrade_spell(spell,Cure_Spells)
- elseif spell.english:ifind("Curaga") and player.mp<actualCost(spell.mp_cost) then
- degrade_spell(spell,Curaga_Spells)
- elseif spell.english == "Meteor" and not buffactive['Elemental Seal'] then -- Auto Elemental Seal When You Use Meteor --
- cancel_spell()
- send_command('input /ja "Elemental Seal" <me>;wait 1.5;input /ma "Meteor" <t>')
- elseif buffactive['Light Arts'] or buffactive['Addendum: White'] then
- if spell.english == "Light Arts" and not buffactive['Addendum: White'] then
- cancel_spell()
- send_command('input /ja Addendum: White <me>')
- elseif spell.english == "Manifestation" then
- cancel_spell()
- send_command('input /ja Accession <me>')
- elseif spell.english == "Alacrity" then
- cancel_spell()
- send_command('input /ja Celerity <me>')
- elseif spell.english == "Parsimony" then
- cancel_spell()
- send_command('input /ja Penury <me>')
- end
- elseif buffactive['Dark Arts'] or buffactive['Addendum: Black'] then
- if spell.english == "Dark Arts" and not buffactive['Addendum: Black'] then
- cancel_spell()
- send_command('input /ja Addendum: Black <me>')
- elseif spell.english == "Accession" then
- cancel_spell()
- send_command('input /ja Manifestation <me>')
- elseif spell.english == "Celerity" then
- cancel_spell()
- send_command('input /ja Alacrity <me>')
- elseif spell.english == "Penury" then
- cancel_spell()
- send_command('input /ja Parsimony <me>')
- end
- end
- end
- function precast(spell,action)
- if spell.action_type == 'Magic' then
- if buffactive.silence or spell.target.distance > 16+target_distance then -- Cancel Magic or Ninjutsu If You Are Silenced or Out of Range --
- cancel_spell()
- add_to_chat(123, spell.name..' Canceled: [Silenced or Out of Casting Range]')
- return
- else
- if spell.english:startswith('Cur') and spell.english ~= "Cursna" then
- equip(sets.Precast.Cure)
- elseif spell.english == "Stoneskin" then
- equip(sets.Precast[spell.english])
- elseif spell.english == "Impact" then
- equip(set_combine(sets.Precast.FastCast,{body="Twilight Cloak"}))
- elseif spell.english == 'Utsusemi: Ni' then
- if buffactive['Copy Image (3)'] then
- cancel_spell()
- add_to_chat(123, spell.name .. ' Canceled: [3 Images]')
- return
- else
- equip(sets.Precast.FastCast)
- end
- elseif sets.Precast[spell.skill] then
- equip(sets.Precast[spell.skill])
- else
- equip(sets.Precast.FastCast)
- end
- end
- elseif spell.type == "WeaponSkill" then
- if player.status ~= 'Engaged' then -- Cancel WS If You Are Not Engaged. Can Delete It If You Don't Need It --
- cancel_spell()
- add_to_chat(123,'Unable To Use WeaponSkill: [Disengaged]')
- return
- else
- if sets.WS[spell.english] then
- equip(sets.WS[spell.english])
- end
- end
- elseif spell.type == "JobAbility" then
- if sets.JA[spell.english] then
- equip(sets.JA[spell.english])
- end
- elseif spell.english == 'Spectral Jig' and buffactive.Sneak then
- cast_delay(0.2)
- send_command('cancel Sneak')
- end
- if sets.Precast[spell.element] and Elemental_Staff == 'ON' then
- equip(sets.Precast[spell.element])
- end
- if StunIndex == 1 then
- equip(sets.Midcast.Stun)
- end
- if Main == 'ON' then
- equip(sets.MainWeapon)
- end
- end
- function midcast(spell,action)
- equipSet = {}
- if spell.action_type == 'Magic' then
- equipSet = sets.Midcast
- if spell.english:startswith('Cur') and spell.english ~= "Cursna" then
- if spell.english:startswith('Cure') then
- equipSet = equipSet.Cure
- elseif spell.english:startswith('Cura') then
- equipSet = equipSet.Curaga
- end
- if world.day_element == spell.element or world.weather_element == spell.element then
- equipSet = set_combine(equipSet,{back="Twilight Cape",waist="Hachirin-no-Obi"})
- end
- elseif spell.english:startswith('Banish') then
- equipSet = set_combine(equipSet.Haste,{ring1="Fenian Ring"})
- elseif spell.english == "Stoneskin" then
- if buffactive.Stoneskin then
- send_command('@wait 1;cancel stoneskin')
- end
- equipSet = equipSet.Stoneskin
- elseif spell.english == "Sneak" then
- if spell.target.name == player.name and buffactive['Sneak'] then
- send_command('cancel sneak')
- end
- equipSet = equipSet.Haste
- elseif Low_Tier_Spells:contains(spell.english) and LowNuke == 'ON' then
- equipSet = set_combine(equipSet,sets.LowNuke)
- elseif spell.skill == 'Elemental Magic' and MB == 'ON' then
- equipSet = set_combine(equipSet,sets.MB)
- elseif spell.english:startswith('Utsusemi') then
- if spell.english == 'Utsusemi: Ichi' and (buffactive['Copy Image'] or buffactive['Copy Image (2)'] or buffactive['Copy Image (3)']) then
- send_command('@wait 1.7;cancel Copy Image*')
- end
- equipSet = equipSet.Haste
- elseif spell.english == 'Monomi: Ichi' then
- if buffactive['Sneak'] then
- send_command('@wait 1.7;cancel sneak')
- end
- equipSet = equipSet.Haste
- elseif spell.english:startswith('Aspir') then
- equipSet = equipSet.Aspir
- elseif spell.english == "Drain" then
- equipSet = equipSet.Drain
- else
- if equipSet[spell.english] then
- equipSet = equipSet[spell.english]
- end
- if equipSet[spell.skill] then
- equipSet = equipSet[spell.skill]
- end
- if equipSet[AccArray[AccIndex]] then
- equipSet = equipSet[AccArray[AccIndex]]
- end
- if equipSet[spell.type] then
- equipSet = equipSet[spell.type]
- end
- if (spell.skill == 'Elemental Magic' or spell.english:startswith('Cur') or spell.english:startswith('Bio') or spell.english:startswith('Dia') or spell.english:startswith('Aspir') or spell.english == 'Drain') and not Non_Obi_Spells:contains(spell.english) and (world.day_element == spell.element or world.weather_element == spell.element) and sets.Obi[spell.element] and Obi == 'ON' and spell.english ~= "Cursna" then -- Use Obi Toggle To Equip Normal Waist Gear --
- equipSet = set_combine(equipSet,sets.Obi[spell.element])
- end
- end
- elseif equipSet[spell.english] then
- equipSet = equipSet[spell.english]
- end
- equip(equipSet)
- if StunIndex == 1 then
- equip(sets.Midcast.Stun)
- end
- if Main == 'ON' then
- equip(sets.MainWeapon)
- end
- end
- function aftercast(spell,action)
- if not spell.interrupted then
- if spell.english == 'Mana Wall' and player.equipment.feet == "Wicce Sabots +1" then
- disable('feet')
- disable('back')
- elseif spell.english == "Sleep II" or spell.english == "Sleepga II" then -- Sleep II & Sleepga II Countdown --
- send_command('wait 60;input /echo Sleep Effect: [WEARING OFF IN 30 SEC.];wait 15;input /echo Sleep Effect: [WEARING OFF IN 15 SEC.];wait 10;input /echo Sleep Effect: [WEARING OFF IN 5 SEC.]')
- elseif spell.english == "Sleep" or spell.english == "Sleepga" then -- Sleep & Sleepga Countdown --
- send_command('wait 30;input /echo Sleep Effect: [WEARING OFF IN 30 SEC.];wait 15;input /echo Sleep Effect: [WEARING OFF IN 15 SEC.];wait 10;input /echo Sleep Effect: [WEARING OFF IN 5 SEC.]')
- elseif spell.english == "Banish II" then -- Banish II Countdown --
- send_command('wait 20;input /echo Banish Effect: [WEARING OFF IN 10 SEC.]')
- end
- end
- status_change(player.status)
- end
- function status_change(new,old)
- if Armor == 'PDT' then
- equip(sets.PDT)
- elseif buffactive["Sublimation: Activated"] then
- equip(sets.Sublimation)
- elseif new == 'Engaged' then
- equip(sets.Melee)
- elseif new == 'Idle' then
- equipSet = sets.Idle
- if equipSet[IdleArray[IdleIndex]] then
- equipSet = equipSet[IdleArray[IdleIndex]]
- end
- if buffactive['Reive Mark'] then -- Equip Arciela's Grace +1 During Reive --
- equipSet = set_combine(equipSet,sets.Reive)
- end
- equip(equipSet)
- elseif new == 'Resting' then
- equip(sets.Resting)
- end
- if StunIndex == 1 then
- equip(sets.Midcast.Stun)
- end
- if Main == 'ON' then
- equip(sets.MainWeapon)
- end
- end
- function buff_change(buff,gain)
- buff = string.lower(buff)
- if buff == "mana wall" and not gain then
- enable('feet')
- enable('back')
- elseif buff == "aftermath: lv.3" then -- AM3 Timer/Countdown --
- if gain then
- send_command('timers create "Aftermath: Lv.3" 180 down;wait 150;input /echo Aftermath: Lv.3 [WEARING OFF IN 30 SEC.];wait 15;input /echo Aftermath: Lv.3 [WEARING OFF IN 15 SEC.];wait 5;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
- elseif buff == 'weakness' then -- Weakness Timer --
- if gain then
- send_command('timers create "Weakness" 300 up')
- else
- send_command('timers delete "Weakness"')
- end
- end
- if not midaction() then
- status_change(player.status)
- end
- end
- -- In Game: //gs c (command), Macro: /console gs c (command), Bind: gs c (command) --
- function self_command(command)
- if command == 'C1' then -- Magic Accuracy Toggle --
- AccIndex = (AccIndex % #AccArray) + 1
- add_to_chat(158,'Magic Accuracy Level: ' .. AccArray[AccIndex])
- status_change(player.status)
- elseif command == 'C5' then -- Auto Update Gear Toggle --
- status_change(player.status)
- add_to_chat(158,'Auto Update Gear')
- elseif command == 'C2' then -- Stun Toggle --
- if StunIndex == 1 then
- StunIndex = 0
- add_to_chat(123,'Stun Set: [Unlocked]')
- else
- StunIndex = 1
- add_to_chat(158,'Stun Set: [Locked]')
- end
- status_change(player.status)
- elseif command == 'C3' then -- Obi Toggle --
- if Obi == 'ON' then
- Obi = 'OFF'
- add_to_chat(123,'Obi: [OFF]')
- else
- Obi = 'ON'
- add_to_chat(158,'Obi: [ON]')
- end
- status_change(player.status)
- elseif command == 'C7' then -- PDT Toggle --
- if Armor == 'PDT' then
- Armor = 'None'
- add_to_chat(123,'PDT Set: [Unlocked]')
- else
- Armor = 'PDT'
- add_to_chat(158,'PDT Set: [Locked]')
- end
- status_change(player.status)
- elseif command == 'C15' then -- LowNuke Toggle --
- if LowNuke == 'ON' then
- LowNuke = 'OFF'
- add_to_chat(123,'Low Nuke: [OFF]')
- else
- LowNuke = 'ON'
- add_to_chat(158,'Low Nuke: [ON]')
- end
- status_change(player.status)
- elseif command == 'C9' then -- MB Toggle --
- if MB == 'ON' then
- MB = 'OFF'
- add_to_chat(123,'MB: [OFF]')
- else
- MB = 'ON'
- add_to_chat(158,'MB: [ON]')
- end
- status_change(player.status)
- elseif command == 'C17' then -- Main Weapon Toggle --
- if Main == 'ON' then
- Main = 'OFF'
- add_to_chat(123,'Main Weapon: [Unlocked]')
- else
- Main = 'ON'
- add_to_chat(158,'Main Weapon: [Locked]')
- end
- status_change(player.status)
- elseif command == 'C8' then -- Distance Toggle --
- if player.target.distance then
- target_distance = math.floor(player.target.distance*10)/10
- add_to_chat(158,'Distance: '..target_distance)
- else
- add_to_chat(123,'No Target Selected')
- end
- elseif command == 'C6' then -- Idle Toggle --
- IdleIndex = (IdleIndex % #IdleArray) + 1
- add_to_chat(158,'Idle Set: '..IdleArray[IdleIndex])
- status_change(player.status)
- elseif command:match('^SC%d$') then
- send_command('//' .. sc_map[command])
- end
- end
- function actualCost(originalCost)
- if buffactive["Penury"] then
- return originalCost*.5
- elseif buffactive["Light Arts"] then
- return originalCost*.9
- else
- return originalCost
- end
- end
- function degrade_spell(spell,degrade_array)
- spell_index = table.find(degrade_array,spell.name)
- if spell_index > 1 then
- new_spell = degrade_array[spell_index - 1]
- change_spell(new_spell,spell.target.raw)
- add_to_chat(8,spell.name..' Canceled: ['..player.mp..'/'..player.max_mp..'MP::'..player.mpp..'%] Casting '..new_spell..' instead.')
- end
- end
- function change_spell(spell_name,target)
- cancel_spell()
- send_command('//'..spell_name..' '..target)
- end
- function sub_job_change(newSubjob, oldSubjob)
- select_default_macro_book()
- end
- function set_macro_page(set,book)
- if not tonumber(set) then
- add_to_chat(123,'Error setting macro page: Set is not a valid number ('..tostring(set)..').')
- return
- end
- if set < 1 or set > 10 then
- add_to_chat(123,'Error setting macro page: Macro set ('..tostring(set)..') must be between 1 and 10.')
- return
- end
- if book then
- if not tonumber(book) then
- add_to_chat(123,'Error setting macro page: book is not a valid number ('..tostring(book)..').')
- return
- end
- if book < 1 or book > 20 then
- add_to_chat(123,'Error setting macro page: Macro book ('..tostring(book)..') must be between 1 and 20.')
- return
- end
- send_command('@input /macro book '..tostring(book)..';wait .1;input /macro set '..tostring(set))
- else
- send_command('@input /macro set '..tostring(set))
- end
- end
- function select_default_macro_book()
- -- Default macro set/book
- if player.sub_job == 'WHM' then
- set_macro_page(1, 6)
- elseif player.sub_job == 'RDM' then
- set_macro_page(1, 6)
- elseif player.sub_job == 'SCH' then
- set_macro_page(1, 6)
- elseif player.sub_job == 'DNC' then
- set_macro_page(1, 6)
- elseif player.sub_job == 'NIN' then
- set_macro_page(1, 6)
- else
- set_macro_page(1, 6)
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement