Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- include('organizer-lib.lua')
- function get_sets()
- AccIndex = 1
- AccArray = {"NormalACC","LowACC","MidACC","HighACC"} -- 4 Levels Of Accuracy Sets For TP/WS/Hybrid. Default ACC Set Is NormalACC. The First TP Set Of Your Main Weapon Is NormalACC. Add More ACC Sets If Needed Then Create Your New ACC Below --
- IdleIndex = 1
- IdleArray = {"Movement","Regen","Refresh"} -- Default Idle Set Is Movement --
- Armor = 'None'
- CapacityMantle = 'None'
- RRMode = 'None'
- WarpRing= 'None'
- target_distance = 6 -- Set Default Distance Here --
- Cure_Spells = {"Cure","Cure II","Cure III","Cure IV"} -- Cure Degradation --
- Curaga_Spells = {"Curaga","Curaga II"} -- Curaga Degradation --
- select_default_macro_book() -- Change Default Macro Book At The End --
- sc_map = {SC1="ChantduCygne", SC2="Expiacion"} -- 2 Additional Binds. Can Change Whatever JA/WS/Spells You Like Here. Remember Not To Use Spaces. --
- send_command('bind End input /ma "Sudden Lunge" <t>')
- send_command('bind PageDown input /ma "Whirl of Rage" <t>')
- send_command('bind PageUp input /ma "Subduction" <t>')
- function file_unload()
- send_command('unbind End')
- send_command('unbind PageDown')
- send_command('unbind PageUp')
- end
- PhysicalBlueMagic = S{
- 'Asuran Claws','Bludgeon','Body Slam','Feather Storm','Mandibular Bite',
- 'Queasyshroom','Power Attack','Ram Charge','Screwdriver','Sickle Slash',
- 'Smite of Rage','Spinal Cleave','Spiral Spin','Terror Touch'}
- PhysicalBlueMagic_STR = S{
- 'Battle Dance','Bloodrake','Death Scissors','Dimensional Death','Empty Thrash',
- 'Heavy Strike','Quadrastrike','Uppercut','Sinker Drill','Tourbillion','Vertical Cleave',
- 'Whirl of Rage','Thrashing Assault'}
- PhysicalBlueMagic_DEX = S{
- 'Amorphic Spikes','Barbed Crescent','Claw Cyclone','Disseverment','Foot Kick',
- 'Frenetic Rip','Goblin Rush','Hysteric Barrage','Paralyzing Triad','Seedspray',
- 'Vanity Dive'}
- PhysicalBlueMagic_VIT = S{
- 'Cannonball','Delta Thrust','Glutinous Dart','Grand Slam','Quad. Continuum',
- 'Sprout Smack'}
- PhysicalBlueMagic_AGI = S{
- 'Benthic Typhoon','Helldive','Hydro Shot','Jet Stream','Pinecone Bomb',
- 'Wild Oats'}
- MagicalBlueMagic = S{
- 'Acrid Stream','Dark Orb','Diffusion Ray','Droning Whirlwind','Embalming Earth','Evryone. Grudge',
- 'Firespit','Foul Waters','Gates of Hades','Leafstorm','Magic Hammer',
- 'Regurgitation','Rending Deluge','Retinal Glare','Subduction','Tem. Upheaval','Thermal Pulse','Water Bomb'}
- BlueMagic_Accuracy = S{
- '1000 Needles','Absolute Terror','Atra. Libations','Auroral Drape','Awful Eye',
- 'Blistering Roar','Blood Drain','Blood Saber','Chaotic Eye',
- 'Cimicine Discharge','Cold Wave','Cursed Sphere','Digest','Corrosive Ooze','Demoralizing Roar',
- 'Enervation','Feather Tickle','Filamented Hold','Frightful Roar',
- 'Geist Wall','Hecatomb Wave','Infrasonics','Jettatura','Light of Penance','Lowing',
- 'Mind Blast','Mortal Ray','MP Drainkiss','Osmosis','Reaving Wind','Sandspin',
- 'Sandspray','Soporific','Sound Blast','Stinking Gas','Sub-zero Smash',
- 'Sweeping Gouge','Triumphant Roar','Venom Shell','Voracious Trunk','Yawn'}
- BlueMagic_Breath = S{
- 'Bad Breath','Flying Hip Press','Final Sting','Frost Breath','Heat Breath',
- 'Magnetite Cloud','Poison Breath','Radiant Breath','Self Destruct','Thunder Breath',
- 'Wind Breath'}
- BlueMagic_Buff = S{
- 'Animating Wail','Barrier Tusk','Battery Charge','Carcharian Verve','Cocoon','Diamondhide','Erratic Flutter','Metallic Body','Magic Barrier',
- "Occultation",'Orcish Counterstance','Nat. Meditation','Plasma Charge',
- 'Pyric Bulwark','Reactor Cool','Winds of Promy.'}
- BlueMagic_Diffusion = S{
- 'Amplification','Cocoon','Exuviation','Feather Barrier','Harden Shell','Memento Mori',
- 'Metallic Body','Plasma Charge','Reactor Cool','Refueling','Saline Coat','Warm-Up',
- 'Zephyr Mantle'}
- BlueMagic_Healing = S{
- 'Healing Breeze','Magic Fruit','Plenilune Embrace','Pollen','White Wind',
- 'Wild Carrot'}
- BlueMagic_Stun = S{
- 'Blitzstrahl','Frypan','Head Butt','Tail slap','Temporal Shift',
- 'Thunderbolt','Whirl of Rage'}
- BlueMagic_Unbridled = S{
- 'Absolute Terror','Bilgestorm','Blistering Roar','Bloodrake','Carcharian Verve',
- 'Droning Whirlwind','Gates of Hades','Harden Shell','Pyric Bulwark','Thunderbolt',
- 'Tourbillion'}
- -- Misc items for Organizer addon --
- sets.Misc = {
- main="Buramenk'ah",
- sub="Eminent Scimitar",
- head="Uk'uxkaj Cap"}
- -- Idle/Town Sets --
- sets.Idle = {}
- sets.Idle.Regen = {main="Bolelabunga",
- sub="Genbu's Shield",
- ammo="Iron Gobbet",
- neck="Twilight Torque",
- ear1="Moonshade Earring",
- ear2="Magnetic Earring",
- body="Respite Cloak",
- hands="Serpentes Cuffs",
- ring1="Rajas Ring",
- ring2="Epona's Ring",
- back="Cornflower Cape",
- waist="Flume Belt",
- legs="Blood Cuisses",
- back="Kumbira Cape",
- feet="Serpentes Sabots"}
- sets.PDT = {main="Claidheamh Soluis",
- sub="Eminent Scimitar",
- ammo="Ginsen",
- head="Iuitl Headgear +1",
- neck="Twilight Torque",
- ear1="Heartseeker Earring",
- ear2="Dudgeon Earring",
- body="Iuitl Vest",
- hands="Iuitl Wristbands", {arti help me}
- ring1="Dark Ring",
- ring2="Patricius Ring",
- back="Mollusca Mantle",
- waist="Flume Belt",
- legs="Iuitl Tights +1",
- feet="Iuitl Gaiters +1"}
- sets.Idle.Movement = set_combine(sets.Idle.Regen,{})
- sets.Idle.Refresh = set_combine(sets.Idle.Regen,{})
- sets.Resting = set_combine(sets.Idle.Regen)
- -- Tizona (AM3 Down) TP Sets --
- sets.TP = {main="Claidheamh Soluis",
- sub="Eminent Scimitar",
- ammo="Ginsen",
- head="Uk'uxkaj Cap",
- neck="Asperity Necklace",
- ear1="Heartseeker Earring",
- ear2="Dudgeon Earring",
- body="Thaumas Coat",
- hands="Taeon Gloves",
- ring1="Epona's Ring",
- ring2="Rajas Ring",
- back="Atheling Mantle",
- waist="Windbuffet Belt",
- legs="Taeon Tights",
- feet={ name="Taeon Boots", augments={'"Dual Wield"+3'}}}
- -- WS Base Set --
- sets.WS = {}
- -- WS Sets --
- sets.WS["Chant du Cygne"] = {
- ammo="Ginsen",
- head="Uk'uxkaj Cap",
- neck="Asperity Necklace",
- ear1="Steelflash Earring",
- ear2="Bladeborn Earring",
- body="Agony Jerkin",
- hands="Assimilator's Bazubands +1",
- ring1="Epona's Ring",
- ring2="Rajas Ring",
- back="Atheling Mantle",
- waist="Wanion Belt",
- legs="Manibozho Brais",
- ammo="Cheruski Needle",
- feet={ name="Taeon Boots", augments={'Dual Wield +3'}}}
- sets.WS.Requiescat = {
- ammo="Ginsen",
- head="Whirlpool Mask",
- neck="Asperity Necklace",
- ear1="Steelflash Earring",
- ear2="Bladeborn Earring",
- body="Agony Jerkin",
- hands="Taeon Gloves",
- ring1="Epona's Ring",
- ring2="Leviathan Ring",
- back="Atheling Mantle",
- waist="Shadow Belt",
- legs="Quiahuiz Trousers",
- feet="Hashishin Basmak +1"}
- sets.WS.Expiacion = {
- ammo="Ginsen",
- head="Uk'uxkaj Cap",
- neck="Asperity Necklace",
- ear1="Steelflash Earring",
- ear2="Bladeborn Earring",
- body="Agony Jerkin",
- hands="Taeon Gloves",
- ring1="Epona's Ring",
- ring2="Rajas Ring",
- back="Atheling Mantle",
- waist="Wanion Belt",
- legs="Taeon Tights",
- feet={ name="Taeon Boots", augments={'Dual Wield +3'}}}
- sets.WS["Savage Blade"] = {
- ammo="Ginsen",
- head="Uk'uxkaj Cap",
- neck="Asperity Necklace",
- ear1="Steelflash Earring",
- ear2="Bladeborn Earring",
- body="Agony Jerkin",
- hands="Assimilator's Bazubands +1",
- ring1="Epona's Ring",
- ring2="Rajas Ring",
- back="Atheling Mantle",
- waist="Prosilio Belt",
- legs="Taeon Tights",
- feet={ name="Taeon Boots", augments={'Dual Wield +3'}}}
- sets.WS["Sanguine Blade"] = {
- ammo="Erlene's Notebook",
- head="Hagondes Hat +1",
- neck="Eddy Necklace",
- ear1="Hecate's Earring",
- ear2="Strophadic Earring",
- body="Hagondes Coat +1",
- hands="Taeon Gloves",
- ring1="Shiva Ring",
- ring2="Strendu Ring",
- back="Cornflower Cape",
- waist="Aswang Sash",
- legs="Hagondes Pants +1",
- feet="Hashishin Basmak +1"}
- sets.WS.Realmrazer = {
- ammo="Ginsen",
- head="Whirlpool Mask",
- neck="Asperity Necklace",
- ear1="Steelflash Earring",
- ear2="Bladeborn Earring",
- body="Agony Jerkin",
- hands="Taeon Gloves",
- ring1="Epona's Ring",
- ring2="Leviathan Ring",
- back="Atheling Mantle",
- waist="Shadow Belt",
- legs="Quiahuiz Trousers",
- feet="Hashishin Basmak +1"}
- sets.WS["Flash Nova"] = {
- ammo="Erlene's Notebook",
- head="Hagondes Hat +1",
- neck="Eddy Necklace",
- ear1="Hecate's Earring",
- ear2="Strophadic Earring",
- body="Hagondes Coat +1",
- hands="Taeon Gloves",
- ring1="Shiva Ring",
- ring2="Strendu Ring",
- back="Cornflower Cape",
- waist="Aswang Sash",
- legs="Hagondes Pants +1",
- feet="Hashishin Basmak +1"}
- -- JA Sets --
- sets.JA = {}
- sets.JA['Azure Lore'] = {hands="Mirage Bazubands +2"}
- -- Waltz Set --
- sets.Waltz = {}
- sets.Precast = {}
- -- Fastcast Set --
- sets.Precast.FastCast = {
- ammo="Impatiens",
- head="Haruspex Hat",
- neck="Orunmila's Torque",
- ear1="Loquac. Earring",
- body="Hashishin Mintan",
- hands="Thaumas Gloves",
- back="Swith Cape",
- legs="Blood Cuisses",
- feet="Chelona Boots"}
- -- Precast Enhancing Magic --
- sets.Precast['Enhancing Magic'] = set_combine(sets.Precast.FastCast,{})
- -- Precast Blue Magic Magic --
- sets.Precast['Blue Magic'] = set_combine(sets.Precast.FastCast,{body="Hashishin Mintan"})
- -- Midcast Base Set --
- sets.Midcast = {
- ammo="Impatiens",
- head="Haruspex Hat",
- neck="Orunmila's Torque",
- ear1="Loquac. Earring",
- body="Mavi Mintan +2",
- hands="Thaumas Gloves",
- back="Swith Cape",
- legs="Blood Cuisses",
- feet="Chelona Boots"}
- -- Magic Haste Set --
- sets.Midcast.Haste = set_combine(sets.Midcast,{})
- -- Enhancing Magic Base Set --
- sets.Midcast['Enhancing Magic'] = {}
- -- Stoneskin Set --
- sets.Midcast.Stoneskin = set_combine(sets.Midcast['Enhancing Magic'],{})
- -- For Cure Spells & The Listed Healing Blue Magic --
- sets.Midcast.Cure = {
- ammo="Impatiens",
- head="Uk'uxkaj Cap",
- neck="Twilight Torque",
- ear1="Loquac. Earring",
- ear2="Lifestorm Earring",
- body="Hagondes Coat +1",
- hands="Hagondes Cuffs +1",
- ring1="Levia. Ring",
- ring2="Levia. Ring",
- back="Pahtli Cape",
- waist="Pythia Sash +1",
- legs="Hagondes Pants +1",
- feet="Hashishin Basmak +1"}
- -- For The Listed Physical Type Blue Magic --
- sets.Midcast.PhysicalBlueMagic = {main="Claidheamh Soluis",
- sub="Eminent Scimitar",
- ammo="Cheruski Needle",
- head="Uk'uxkaj Cap",
- neck="Ire Torque",
- ear1="Flame Pearl}",
- ear2="Flame Pearl",
- body="Assimilator's Jubbah +1",
- hands="Taeon Gloves",
- ring1="Rajas Ring",
- ring2="Ifrit Ring",
- back="Cornflower Cape",
- waist="Wanion Belt",
- legs="Hashishin Tayt +1",
- feet={ name="Taeon Boots", augments={'Dual Wield +3'}}}
- -- Blue Magic STR Set --
- sets.Midcast.PhysicalBlueMagic_STR = set_combine(sets.Midcast.PhysicalBlueMagic,{})
- -- Blue Magic STR/DEX Set --
- sets.Midcast.PhysicalBlueMagic_DEX = set_combine(sets.Midcast.PhysicalBlueMagic,{})
- -- Blue Magic STR/VIT Set --
- sets.Midcast.PhysicalBlueMagic_VIT = set_combine(sets.Midcast.PhysicalBlueMagic,{})
- -- Blue Magic STR/AGI Set --
- sets.Midcast.PhysicalBlueMagic_AGI = set_combine(sets.Midcast.PhysicalBlueMagic,{})
- -- For The Listed Magical Type Blue Magic --
- sets.Midcast.MagicalBlueMagic = {main="Gabaxorea",
- sub="Bolelabunga",
- ammo="Erlene's Notebook",
- head="Hagondes Hat +1",
- neck="Eddy Necklace",
- ear1="Hecate's Earring",
- ear2="Strophadic Earring",
- body="Hagondes Coat +1",
- hands="Helios Gloves",
- back="Cornflower Cape",
- ring1="Shiva Ring",
- ring2="Shiva Ring",
- waist="Aswang Sash",
- legs="Hagondes Pants +1",
- feet="Hashishin basmak +1"}
- -- Magic Accuracy For The Listed Blue Magic --
- sets.Midcast.BlueMagic_Accuracy = {main="Gabaxorea",
- sub="Bolelabunga",
- ammo="Erlene's Notebook",
- head="Hagondes Hat +1",
- neck="Eddy Necklace",
- ear1="Hecate's Earring",
- ear2="Strophadic Earring",
- body="Hagondes Coat +1",
- hands="Helios Gloves",
- back="Cornflower Cape",
- waist="Aswang Sash",
- legs="Hagondes Pants +1",
- feet="Hashishin Baskmak +1"}
- -- Stun Set For The Listed Blue Magic --
- sets.Midcast.BlueMagic_Stun = set_combine(sets.Midcast.BlueMagic_Accuracy,{
- waist="Hurch'lan Sash"})
- -- Buff Set For The Listed Blue Magic --
- sets.Midcast.BlueMagic_Buff = {
- ammo="Mavi Tathlum",
- head="Luh. Keffiyeh +1",
- neck="Mavi Scarf",
- body="Assimilator's Jubbah +1",
- back="Cornflower Cape",
- legs="Hashishin Tayt +1",
- feet="Luhlaza Charuqs +1"}
- -- Breath Set For The Listed Blue Magic --
- sets.Midcast.BlueMagic_Breath = {}
- -- BlueMagic Base Set For Any Non Listed Blue Magic --
- sets.Midcast['Blue Magic'] = set_combine(sets.Midcast,{
- ammo="Cheruski Needle",
- head="Uk'uxkaj Cap",
- neck="Ire Torque",
- ear1="Flame Pearl",
- ear2="Flame Pearl",
- body="Assimilator's Jubbah +1",
- hands="Taeon Gloves",
- ring1="Rajas Ring",
- ring2="Ifrit Ring",
- back="Cornflower Cape",
- waist="Wanion Belt",
- legs="Hashishin Tayt +1",
- feet={ name="Taeon Boots", augments={'Dual Wield +3'}}} )
- -- Charged Whisker --
- sets.Midcast['Charged Whisker'] = set_combine(sets.Midcast.MagicalBlueMagic,{})
- sets.CapacityMantle = {back="Mecisto. Mantle"}
- sets.Reraise = {head="Reraise Hairpin",ear1="Reraise Earring"}
- sets.WarpRing = {ring1="Warp Ring"}
- end
- function pretarget(spell,action)
- if (spell.type:endswith('Magic') or spell.type == "Ninjutsu") and buffactive.silence then -- Auto Use Echo Drops If You Are Silenced --
- cancel_spell()
- send_command('input /item "Echo Drops" <me>')
- elseif spell.english == "Berserk" and buffactive.Berserk then -- Change Berserk To Aggressor If Berserk Is On --
- cancel_spell()
- send_command('Aggressor')
- elseif BlueMagic_Unbridled:contains(spell.english) and not buffactive['Unbridled Learning'] then
- if windower.ffxi.get_ability_recasts()[81] < 1 and not buffactive.amnesia and not buffactive.charm then -- Auto Use Unbridled Learning When You Cast One of The Unbridled Spells.
- cancel_spell()
- send_command('input /ja "Unbridled Learning" <me>;wait 1.5;input /ma "'..spell.english..'" '..spell.target.name)
- 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.type == "WeaponSkill" and spell.target.distance > target_distance and player.status == 'Engaged' then -- Cancel WS If You Are Out Of Range --
- cancel_spell()
- add_to_chat(123, spell.name..' Canceled: [Out of Range]')
- return
- end
- end
- function precast(spell,action)
- if 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
- elseif spell.type == "WeaponSkill" and player.tp < 1000 then -- Cancel Weapon Skills If TP Is Under 1000 --
- cancel_spell()
- add_to_chat(123,'Unable To Use WeaponSkill: [Not enough TP]')
- return
- else
- equipSet = sets.WS
- if equipSet[spell.english] then
- equipSet = equipSet[spell.english]
- end
- if equipSet[AccArray[AccIndex]] then
- equipSet = equipSet[AccArray[AccIndex]]
- end
- if spell.english == "Chant du Cygne" and player.tp > 2999 then
- equipSet = set_combine(equipSet,{ear1="Jupiter's Pearl"})
- end
- equip(equipSet)
- end
- elseif spell.type == "JobAbility" then
- if sets.JA[spell.english] then
- equip(sets.JA[spell.english])
- end
- elseif spell.type:endswith('Magic') or spell.type == "Ninjutsu" 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 string.find(spell.english,'Utsusemi') then
- if buffactive['Copy Image (3)'] or buffactive['Copy Image (4)'] then
- cancel_spell()
- add_to_chat(123, spell.english .. ' Canceled: [3+ Images]')
- return
- else
- equip(sets.Precast.Utsusemi)
- end
- elseif sets.Precast[spell.skill] then
- equip(sets.Precast[spell.skill])
- else
- equip(sets.Precast.FastCast)
- end
- end
- elseif spell.type == "Waltz" then
- equip(sets.Waltz)
- elseif spell.english == 'Spectral Jig' and buffactive.Sneak then
- cast_delay(0.2)
- send_command('cancel Sneak')
- end
- if CapacityMantle == 'CapacityMantle' then
- equip(sets.CapacityMantle)
- end
- if RRMode == 'RRMode' then
- equip(sets.Reraise)
- end
- if WarpRing == 'WarpRing' then
- equip(sets.WarpRing)
- end
- end
- function midcast(spell,action)
- equipSet = {}
- if spell.type:endswith('Magic') or spell.type == 'Ninjutsu' then
- equipSet = sets.Midcast
- if equipSet[spell.english] then
- equipSet = equipSet[spell.english]
- elseif (string.find(spell.english,'Cur') or BlueMagic_Healing:contains(spell.english)) and spell.english ~= "Cursna" then
- if string.find(spell.english,'Cure') or BlueMagic_Healing:contains(spell.english) then
- equipSet = equipSet.Cure
- elseif string.find(spell.english,'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='Korin Obi'})
- end
- elseif PhysicalBlueMagic:contains(spell.english) or PhysicalBlueMagic_STR:contains(spell.english) or PhysicalBlueMagic_DEX:contains(spell.english) or PhysicalBlueMagic_VIT:contains(spell.english) or PhysicalBlueMagic_AGI:contains(spell.english) then
- if PhysicalBlueMagic_STR:contains(spell.english) then
- equipSet = equipSet.PhysicalBlueMagic_STR
- elseif PhysicalBlueMagic_DEX:contains(spell.english) then
- equipSet = equipSet.PhysicalBlueMagic_DEX
- elseif PhysicalBlueMagic_VIT:contains(spell.english) then
- equipSet = equipSet.PhysicalBlueMagic_VIT
- elseif PhysicalBlueMagic_AGI:contains(spell.english) then
- equipSet = equipSet.PhysicalBlueMagic_AGI
- elseif PhysicalBlueMagic:contains(spell.english) then
- equipSet = equipSet.PhysicalBlueMagic
- end
- if buffactive['Chain Affinity'] then
- equipSet = set_combine(equipSet,{head="Hashishin Kavuk",feet="Assimilator's Charuqs +1"})
- end
- if buffactive.Efflux then
- equipSet = set_combine(equipSet,{legs="Hashishin Tayt +1"})
- end
- elseif MagicalBlueMagic:contains(spell.english) or spell.english == "Charged Whisker" then
- if MagicalBlueMagic:contains(spell.english) then
- equipSet = equipSet.MagicalBlueMagic
- elseif spell.english == "Charged Whisker" then
- equipSet = equipSet[spell.name]
- end
- if buffactive['Chain Affinity'] then
- equipSet = set_combine(equipSet,{head="Hashishin Kavuk",feet="Assimilator's Charuqs +1"})
- end
- if buffactive['Burst Affinity'] then
- equipSet = set_combine(equipSet,{feet="Hashishin Basmak +1",legs="Assimilator's Shalwar +1"})
- end
- if buffactive.Convergence then
- equipSet = set_combine(equipSet,{head="Luh. Keffiyeh +1"})
- end
- elseif BlueMagic_Accuracy:contains(spell.english) then
- equipSet = equipSet.BlueMagic_Accuracy
- elseif BlueMagic_Stun:contains(spell.english) then
- equipSet = equipSet.BlueMagic_Stun
- elseif BlueMagic_Buff:contains(spell.english) then
- equipSet = equipSet.BlueMagic_Buff
- elseif BlueMagic_Diffusion:contains(spell.english) and buffactive.Diffusion then
- equipSet = set_combine(equipSet,{feet="Luhlaza Charuqs +1"})
- elseif BlueMagic_Breath:contains(spell.english) then
- equipSet = equipSet.BlueMagic_Breath
- elseif spell.english == "Stoneskin" then
- if buffactive.Stoneskin then
- send_command('@wait 2.8;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 string.find(spell.english,'Utsusemi') then
- if spell.english == 'Utsusemi: Ichi' and (buffactive['Copy Image'] or buffactive['Copy Image (2)']) 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 equipSet[spell.skill] then
- equipSet = equipSet[spell.skill]
- end
- elseif equipSet[spell.english] then
- equipSet = equipSet[spell.english]
- end
- equip(equipSet)
- end
- function aftercast(spell,action)
- if spell.type == "WeaponSkill" and not spell.interrupted then
- send_command('wait 0.2;gs c TP')
- end
- status_change(player.status)
- end
- function status_change(new,old)
- if Armor == 'PDT' then
- equip(sets.PDT)
- elseif Armor == 'MDT' then
- equip(sets.MDT)
- elseif new == 'Engaged' then
- equipSet = sets.TP
- if Armor == 'Hybrid' and equipSet["Hybrid"] then
- equipSet = equipSet["Hybrid"]
- end
- if equipSet[AccArray[AccIndex]] then
- equipSet = equipSet[AccArray[AccIndex]]
- end
- if buffactive["Aftermath: Lv.3"] and equipSet["AM3"] then
- equipSet = equipSet["AM3"]
- end
- if buffactive.March == 1 and (buffactive.Embrava or buffactive.Haste) and equipSet["HighHaste"] then
- equipSet = equipSet["HighHaste"]
- end
- if buffactive.March == 2 and (buffactive.Embrava or buffactive.Haste) and equipSet["HighHaste"] then
- equipSet = equipSet["HighHaste"]
- end
- equip(equipSet)
- elseif new == 'Idle' then
- equip(sets.Idle[IdleArray[IdleIndex]])
- elseif new == 'Resting' then
- equip(sets.Resting)
- end
- if CapacityMantle == 'CapacityMantle' then
- equip(sets.CapacityMantle)
- end
- if RRMode == 'RRMode' then
- equip(sets.Reraise)
- end
- if WarpRing == 'WarpRing' then
- equip(sets.WarpRing)
- end
- end
- function buff_change(buff,gain)
- buff = string.lower(buff)
- if buff == "aftermath: lv.3" then -- AM3 Timer/Countdown --
- 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
- 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 -- Accuracy Level Toggle --
- AccIndex = (AccIndex % #AccArray) + 1
- add_to_chat(158,'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 -- Hybrid Toggle --
- if Armor == 'Hybrid' then
- Armor = 'None'
- add_to_chat(123,'Hybrid Set: [Unlocked]')
- else
- Armor = 'Hybrid'
- add_to_chat(158,'Hybrid Set: '..AccArray[AccIndex])
- 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 -- MDT Toggle --
- if Armor == 'MDT' then
- Armor = 'None'
- add_to_chat(123,'MDT Set: [Unlocked]')
- else
- Armor = 'MDT'
- add_to_chat(158,'MDT Set: [Locked]')
- end
- status_change(player.status)
- elseif command == 'C13' then -- Capacity Mantle Toggle --
- if CapacityMantle == 'CapacityMantle' then
- CapacityMantle = 'None'
- add_to_chat(123,'Capacity Mantle Set: [Unlocked]')
- else
- CapacityMantle = 'CapacityMantle'
- add_to_chat(158,'Capacity Mantle Set: [locked]')
- end
- status_change(player.status)
- elseif command == 'C4' then -- Reraise Toggle --
- if RRMode == 'RRMode' then
- RRMode = 'None'
- add_to_chat(123,'Reraise Set: [Unlocked]')
- else
- RRMode = 'RRMode'
- add_to_chat(158,'Reraise Set: [locked]')
- end
- status_change(player.status)
- elseif command == 'C14' then -- Warp Ring Toggle --
- if WarpRing == 'WarpRing' then
- WarpRing = 'None'
- add_to_chat(123,'Warp Ring : [Unlocked]')
- else
- WarpRing = 'WarpRing'
- add_to_chat(158,'Warp Ring : [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 == 'TP' then
- add_to_chat(158,'TP Return: ['..tostring(player.tp)..']')
- 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 == 'WAR' then
- set_macro_page(1, 3)
- elseif player.sub_job == 'RDM' then
- set_macro_page(1, 3)
- elseif player.sub_job == 'WHM' then
- set_macro_page(1, 3)
- elseif player.sub_job == 'NIN' then
- set_macro_page(1, 3)
- elseif player.sub_job == 'DNC' then
- set_macro_page(1, 3)
- elseif player.sub_job == 'BLM' then
- set_macro_page(1, 3)
- else
- set_macro_page(1, 3)
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement