Advertisement
Arnan

BLU Lua August 2018

Aug 21st, 2018
204
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 87.44 KB | None | 0 0
  1.  
  2.         -----------------------------------------------
  3.         -- *** Arnan Blue Mage Gearswap Lua File *** --
  4.         -----------------------------------------------
  5.        
  6.             -- Commands --
  7.                
  8.                 -- In Game: //gs c, Macro: /console gs c, Bind: gs c --
  9.            
  10.                 -- gs c acc         Toggle accuracy tier for TP/WS
  11.                 -- gs c dw          Toggle Dual Wield tiers
  12.                 -- gs c idle        Toggle idle sets
  13.                
  14.                 -- gs c pdt         PDT on/off
  15.                 -- gs c mdt         MDT on/off
  16.                 -- gs c kiting      Kiting on/off
  17.                 -- gs c hybrid      Hybrid on/off
  18.                
  19.                 -- gs c th          Treasure Hunter TP gear on/off
  20.                 -- gs c thaumas     Thaumas Coat on/off
  21.                 -- gs c mb          Magic Burst on/off
  22.    
  23.         ----------
  24.         -- Sets --
  25.         ----------
  26.  
  27. function get_sets()
  28.         AccIndex = 1
  29.         AccArray = {"LowACC","MidACC","HighACC","MaxACC"} -- 4 Levels Of Accuracy Sets For TP/WS. Default ACC Set Is LowACC (1) --
  30.         WeaponIndex = 3
  31.         WeaponArray = {"Single","DW3","DW4"} -- Amount of Dual Wield used for TP. Default is DW4 (3) --
  32.         IdleIndex = 1
  33.         IdleArray = {"Full","DT","Warp"} -- Default Idle Set Is Full (1) --
  34.         Armor = 'None'
  35.         target_distance = 6 -- Set Default Distance Here --
  36.         Thaumas = 'OFF' -- Set Default Thaumas Coat ON or OFF Here --
  37.         TH = 'OFF' -- Set Default TH ON or OFF Here --
  38.         MB = 'OFF' -- Set Default Magic Burst ON or OFF Here --
  39.         Cure_Spells = {"Cure","Cure II","Cure III","Cure IV"} -- Cure Degradation --
  40.         Curaga_Spells = {"Curaga","Curaga II"} -- Curaga Degradation --
  41.         send_command('input /macro book 1;wait .1;input /macro set 1') -- Change Default Macro Book Here --
  42.         add_to_chat(158,'-----[Blue Mage Lua Loaded]-----')
  43.         add_to_chat(155,'Dual Wield: '..WeaponArray[WeaponIndex])
  44.         add_to_chat(155,'Accuracy Level: ' .. AccArray[AccIndex])
  45.         add_to_chat(155,'Idle Set: ' .. IdleArray[IdleIndex])
  46.         add_to_chat(158,'-----[Weapon Skill Keybinds]-----')
  47.         add_to_chat(155,'F7 - Sanguine Blade, F9 - Expiacion, F10 - Requiescat, F11 - Savage Blade, Delete - Chant du Cygne')
  48.         add_to_chat(155,'F12 - Last Stand (mule), Alt+F12 - Leaden Salute (mule) Alt+Delete - Savage Blade (mule)')
  49.    
  50.         -- Town/City Areas --
  51.         Cities = S{
  52.                         "Ru'lude Gardens","Upper Jeuno","Lower Jeuno","Port Jeuno",
  53.                         "Port Windurst","Windurst Waters","Windurst Woods","Windurst Walls","Heavens Tower",
  54.                         "Port San d'Oria","Northern San d'Oria","Southern San d'Oria",
  55.                         "Port Bastok","Bastok Markets","Bastok Mines","Metalworks",
  56.                         "Aht Urhgan Whitegate","Nashmau","Tavanazian Safehold",
  57.                         "Selbina","Mhaura","Norg","Eastern Adoulin","Western Adoulin","Kazham","Tavnazia"}
  58.                    
  59.         -- Physical Blue Magic --
  60.         PhysicalBlueMagic = S{
  61.                         'Asuran Claws','Bludgeon','Body Slam','Feather Storm','Mandibular Bite','Queasyshroom',
  62.                         'Power Attack','Ram Charge','Saurian Slide','Screwdriver','Sickle Slash','Smite of Rage',
  63.                         'Spinal Cleave','Spiral Spin','Terror Touch'}
  64.  
  65.         -- STR Physical Blue Magic --
  66.         PhysicalBlueMagic_STR = S{
  67.                         'Battle Dance','Bloodrake','Death Scissors','Dimensional Death','Empty Thrash',
  68.                         'Quadrastrike','Uppercut','Tourbillion','Thrashing Assault','Vertical Cleave',
  69.                         'Whirl of Rage'}
  70.  
  71.         -- DEX Physical Blue Magic --
  72.         PhysicalBlueMagic_DEX = S{
  73.                         'Amorphic Spikes','Barbed Crescent','Claw Cyclone','Disseverment','Foot Kick',
  74.                         'Frenetic Rip','Goblin Rush','Hysteric Barrage','Paralyzing Triad','Seedspray',
  75.                         'Sinker Drill','Vanity Dive'}
  76.  
  77.         -- VIT Physical Blue Magic --
  78.         PhysicalBlueMagic_VIT = S{
  79.                         'Cannonball','Delta Thrust','Glutinous Dart','Grand Slam','Quad. Continuum',
  80.                         'Sprout Smack'}
  81.  
  82.         -- AGI Physical Blue Magic --
  83.         PhysicalBlueMagic_AGI = S{
  84.                         'Benthic Typhoon','Helldive','Hydro Shot','Jet Stream','Pinecone Bomb','Wild Oats'}
  85.            
  86.         -- Physical Accuracy Blue Magic --         
  87.         BlueMagic_PhysicalACC = S{
  88.                         'Heavy Strike'}
  89.        
  90.         -- Magical Blue Magic --
  91.         MagicalBlueMagic = S{
  92.                         'Acrid Stream','Anvil Lightning','Crashing Thunder','Charged Whisker','Droning Whirlwind','Firespit',
  93.                         'Foul Waters','Gates of Hades','Leafstorm','Molting Plumage','Nectarous Deluge','Polar Roar',
  94.                         'Regurgitation','Rending Deluge','Scouring Spate','Searing Tempest','Silent Storm','Spectral Floe',
  95.                         'Subduction','Tem. Upheaval','Thermal Pulse','Thunderbolt','Uproot','Water Bomb'}
  96.            
  97.         -- Dark Magical Blue Magic --          
  98.         BlueMagic_Dark = S{
  99.                         'Atra. Libations','Blood Saber','Dark Orb','Death Ray','Eyes On Me',
  100.                         'Evryone. Grudge','Palling Salvo','Tenebral Crush'}
  101.        
  102.         -- Light Magical Blue Magic --
  103.         BlueMagic_Light = S{
  104.                         'Blinding Fulgor','Diffusion Ray','Magic Hammer','Rail Cannon','Retinal Glare'}
  105.        
  106.         -- Earth Magical Blue Magic --
  107.         BlueMagic_Earth = S{
  108.                         'Embalming Earth','Entomb','Sandspin'}
  109.  
  110.         -- Magic Accuracy Blue Magic --
  111.         BlueMagic_Accuracy = S{
  112.                         '1000 Needles','Absolute Terror','Auroral Drape','Awful Eye','Blank Gaze','Blistering Roar',
  113.                         'Blood Drain','Blood Saber','Chaotic Eye','Cimicine Discharge','Cold Wave','Digest','Corrosive Ooze',
  114.                         'Demoralizing Roar','Dream Flower','Enervation','Feather Tickle','Filamented Hold','Frightful Roar',
  115.                         'Geist Wall','Hecatomb Wave','Infrasonics','Light of Penance','Lowing','Mind Blast','Mortal Ray',
  116.                         'MP Drainkiss','Osmosis','Reaving Wind','Sheep Song','Soporific','Sound Blast','Stinking Gas',
  117.                         'Sub-zero Smash','Triumphant Roar','Venom Shell','Voracious Trunk','Yawn'}
  118.  
  119.         -- Breath Blue Magic --
  120.         BlueMagic_Breath = S{
  121.                         'Bad Breath','Flying Hip Press','Final Sting','Frost Breath','Heat Breath','Magnetite Cloud',
  122.                         'Poison Breath','Radiant Breath','Self Destruct','Thunder Breath','Wind Breath'}
  123.  
  124.         -- Blue Magic Buffs --
  125.         BlueMagic_Buff = S{
  126.                         'Carcharian Verve','Diamondhide','Metallic Body','Magic Barrier',"Occultation",
  127.                         'Orcish Counterstance','Plasma Charge','Pyric Bulwark','Reactor Cool'}
  128.                            
  129.         -- Blue Magic Healing --                   
  130.         BlueMagic_Healing = S{
  131.                         'Healing Breeze','Magic Fruit','Plenilune Embrace','Pollen','Restoral','Wild Carrot'}
  132.                        
  133.         -- HP Cure Blue Magic --               
  134.         BlueMagic_HPCure = S{
  135.                         'White Wind'}
  136.  
  137.         -- Refresh Blue Magic --               
  138.         BlueMagic_Refresh = S{
  139.                         'Battery Charge'}
  140.  
  141.         -- Blue Magic Stun --
  142.         BlueMagic_Stun = S{
  143.                         'Blitzstrahl','Temporal Shift'}
  144.        
  145.         -- Blue Magic Physical Stun --
  146.         BlueMagic_PhysicalStun = S{
  147.                         'Frypan','Head Butt','Sudden Lunge','Sweeping Gouge','Tail slap','Whirl of Rage'}      
  148.        
  149.         -- Blue Magic Enmity --
  150.         BlueMagic_Emnity = S{
  151.                         'Actinic Burst','Exuviation','Fantod','Jettatura'}     
  152.  
  153.         -- Diffusion --
  154.         BlueMagic_Diffusion = S{
  155.                         'Amplification','Cocoon','Exuviation','Feather Barrier','Harden Shell','Memento Mori','Metallic Body',
  156.                         'Mighty Guard','Plasma Charge','Reactor Cool','Refueling','Saline Coat','Warm-Up','Zephyr Mantle'}
  157.  
  158.         -- Unbridled --
  159.         BlueMagic_Unbridled = S{
  160.                         'Absolute Terror','Bilgestorm','Blistering Roar','Bloodrake','Carcharian Verve',
  161.                         'Droning Whirlwind','Gates of Hades','Harden Shell','Mighty Guard','Pyric Bulwark',
  162.                         'Thunderbolt','Tourbillion'}
  163.        
  164.         -- Herculean Augments --
  165.         HerculeanHelm={}
  166.         HerculeanHelm.WSD={ name="Herculean Helm", augments={'Accuracy+16 Attack+16','Weapon skill damage +4%','Accuracy+6',}}
  167.         HerculeanHelm.RF={ name="Herculean Helm", augments={'Pet: STR+3','STR+8','"Refresh"+2','Mag. Acc.+12 "Mag.Atk.Bns."+12',}}
  168.         HerculeanVest={}
  169.         HerculeanVest.Crit={ name="Herculean Vest", augments={'Attack+25','Crit. hit damage +4%','DEX+13',}}       
  170.         HerculeanGloves={}
  171.         HerculeanGloves.TH={ name="Herculean Gloves", augments={'Mag. Acc.+6','Accuracy+8','"Treasure Hunter"+1','Accuracy+13 Attack+13',}}
  172.         HerculeanGloves.RF={ name="Herculean Gloves", augments={'MND+10','Enmity-5','"Refresh"+2','Mag. Acc.+15 "Mag.Atk.Bns."+15',}}
  173.         HerculeanBoots={}
  174.         HerculeanBoots.TA={ name="Herculean Boots", augments={'Accuracy+27','"Triple Atk."+4','DEX+7','Attack+13',}}
  175.         HerculeanBoots.WSD={ name="Herculean Boots", augments={'Accuracy+18 Attack+18','Weapon skill damage +5%','STR+9','Attack+10',}}
  176.         HerculeanBoots.RF={ name="Herculean Boots", augments={'Pet: STR+8','Pet: Attack+20 Pet: Rng.Atk.+20','"Refresh"+2',}}
  177.         HerculeanBoots.TH={ name="Herculean Boots", augments={'DEX+1','Pet: AGI+3','"Treasure Hunter"+2',}}
  178.        
  179.         -- Rosmerta's Cape Augments --
  180.         CritCape={ name="Rosmerta's Cape", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','Crit.hit rate+10',}}
  181.         DWCape={ name="Rosmerta's Cape", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','"Dual Wield"+10','Phys. dmg. taken-10%',}}
  182.         WSDCape={ name="Rosmerta's Cape", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}}
  183.         STPCape={ name="Rosmerta's Cape", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','"Store TP"+10','Phys. dmg. taken-10%',}}
  184.         MABCape={ name="Rosmerta's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10',}}
  185.         MNDDACape={ name="Rosmerta's Cape", augments={'MND+20','Accuracy+20 Attack+20','MND+10','"Dbl.Atk."+10',}}
  186.         FCCape={ name="Rosmerta's Cape", augments={'Eva.+20 /Mag. Eva.+20','"Fast Cast"+10','Spell interruption rate down-10%',}}
  187.  
  188.         --------------------
  189.         -- Key Binds Load --
  190.         --------------------
  191.        
  192.         -- Key Bind Toggles (The Same for all my job files) (Ctrl Key) --
  193.         send_command('bind ^A input //gs c acc')
  194.         send_command('bind ^D input //gs c pdt')
  195.         send_command('bind ^H input //gs c hybrid')
  196.         send_command('bind ^I input //gs c idle')
  197.         send_command('bind ^K input //gs c kiting')
  198.         send_command('bind ^W input //gs c dw')
  199.  
  200.         -- Stuff to control both Mules (Ctrl Key) --
  201.         send_command('bind ^X input /pcmd add ojomo;pause 5;input /pcmd add oeogo')
  202.         send_command('bind ^3 input //send oeogo //ma Cure 3 Arnan')
  203.         send_command('bind ^4 input //send oeogo //ma Cure 4 Arnan')
  204.         send_command('bind ^5 input //send oeogo //ma Refresh Arnan')
  205.         send_command('bind ^7 input //send oeogo //ma haste ojomo')
  206.         send_command('bind ^8 input //send oeogo //ma Dia 2 <t>;pause 2;input //send ojomo //ja Light Shot <t>')
  207.         send_command('bind ^9 input //send ojomo //follow arnan;pause 0.1;input //send oeogo //follow arnan')
  208.         send_command('bind ^0 input //send ojomo //assist arnan;pause 0.1;input //send oeogo //assist arnan')
  209.         send_command('bind ^- input //send ojomo /attack <t>;pause 0.1;input //send oeogo /attack <t>')
  210.  
  211.         -- COR (Mule) Job Ability Key Binds (Alt Key) --
  212.         send_command('bind !7 input //send ojomo //ja Crooked Cards <me>')
  213.         send_command('bind !8 input //send ojomo //ja Snake Eye <me>')
  214.         send_command('bind !9 input //send ojomo //ja Fold <me>')
  215.         send_command('bind !0 input //send ojomo //ja Random Deal <me>')
  216.  
  217.         -- COR (mule) Phantom Roll Key Binds (Alt Key) --
  218.         send_command('bind !A input //send ojomo //ja Allies\' Roll <me>')
  219.         send_command('bind !B input //send ojomo //ja Bolter\'s Roll <me>')
  220.         send_command('bind !C input //send ojomo //ja Chaos Roll <me>')
  221.         send_command('bind !D input //send ojomo //ja Dancer\'s Roll <me>')
  222.         send_command('bind !E input //send ojomo //ja Evoker\s Roll <me>')
  223.         send_command('bind !F input //send ojomo //ja Fighter\'s Roll <me>')
  224.         send_command('bind !G input //send ojomo //ja Gallant\'s Roll <me>')
  225.         send_command('bind !H input //send ojomo //ja Hunter\'s Roll <me>')
  226.         send_command('bind !Q input //send ojomo //ja Warlock\'s Roll <me>')       
  227.         send_command('bind !R input //send ojomo //ja Rogue\'s Roll <me>')
  228.         send_command('bind !S input //send ojomo //ja Samurai Roll <me>')
  229.         send_command('bind !T input //send ojomo //ja Tactician\'s Roll <me>')
  230.         send_command('bind !W input //send ojomo //ja Wizard\'s Roll <me>')
  231.         send_command('bind !X input //send ojomo //ja Corsair\'s Roll <me>')
  232.  
  233.         -- GEO (Mule) Job Ability Key Binds (Win Key) --
  234.         send_command('bind @3 input //send oeogo //ja Radial Arcana <me>')
  235.         send_command('bind @5 input //send oeogo //ma Refresh <me>')
  236.         send_command('bind @7 input //send oeogo //ja Blaze of Glory <me>')
  237.         send_command('bind @8 input //send oeogo //ja Ecliptic Attrition <me>')
  238.         send_command('bind @9 input //send oeogo //ja Life Cycle <me>')
  239.         send_command('bind @0 input //send oeogo //ja Lasting Emanation <me>')
  240.  
  241.         -- GEO (Mule) Nuke Key Binds (Win Key) --
  242.         send_command('bind @F1 input //send oeogo /ma Aero V <t>;pause 0.5;input //send oeogo /ma Aero IV <t>;pause 0.5;input //send oeogo /ma Aero III <t>;')
  243.         send_command('bind @F2 input //send oeogo /ma Fire V <t>;pause 0.5;input //send oeogo /ma Fire IV <t>;pause 0.5;input //send oeogo /ma Fire III <t>;')
  244.         send_command('bind @F3 input //send oeogo /ma Thunder V <t>;pause 0.5;input //send oeogo /ma Thunder IV <t>;pause 0.5;input //send oeogo /ma Thunder III <t>;')
  245.         send_command('bind @F4 input //send oeogo /ma Stone V <t>;pause 0.5;input //send oeogo /ma Stone IV <t>;pause 0.5;input //send oeogo /ma Stone III <t>;')
  246.         send_command('bind @F5 input //send oeogo /ma Water V <t>;pause 0.5;input //send oeogo /ma Water IV <t>;pause 0.5;input //send oeogo /ma Water III <t>;')
  247.         send_command('bind @F6 input //send oeogo /ma Blizzard V <t>;pause 0.5;input //send oeogo /ma Blizzard IV <t>;pause 0.5;input //send oeogo /ma Blizzard III <t>;')
  248.  
  249.         -- GEO (Mule) Indicolure Spells (Win Key) --
  250.         send_command('bind @1 input //send oeogo /ma Indi-Regen <me>')
  251.         send_command('bind @2 input //send oeogo /ma Indi-Refresh <me>')
  252.         send_command('bind @D input //send oeogo /ma Indi-DEX <me>')
  253.         send_command('bind @A input //send oeogo /ma Indi-Acumen <me>')
  254.         send_command('bind @F input //send oeogo /ma Indi-Fury <me>')
  255.         send_command('bind @H input //send oeogo /ma Indi-Haste <me>')
  256.         send_command('bind @K input //send oeogo /ma Indi-Focus <me>')
  257.         send_command('bind @P input //send oeogo /ma Indi-Precision <me>')
  258.         send_command('bind @Q input //send oeogo /ma Indi-Barrier <me>')
  259.         send_command('bind @S input //send oeogo /ma Indi-STR <me>')
  260.         send_command('bind @V input //send oeogo /ma Indi-Attunement <me>')
  261.  
  262.         -- GEO (Mule) Geocolure Spells (Alt+Win Keys) --
  263.         send_command('bind !@1 input //send oeogo /ma Geo-Regen <me>')
  264.         send_command('bind !@2 input //send oeogo /ma Geo-Refresh <me>')
  265.         send_command('bind !@A input //send oeogo /ma Geo-Malaise <t>')
  266.         send_command('bind !@D input //send oeogo /ma Geo-DEX <me>')
  267.         send_command('bind !@F input //send oeogo /ma Geo-Frailty <t>')
  268.         send_command('bind !@H input //send oeogo /ma Geo-Haste <me>')
  269.         send_command('bind !@K input //send oeogo /ma Geo-Languor <t>')
  270.         send_command('bind !@P input //send oeogo /ma Geo-Torpor <t>') --
  271.         send_command('bind !@Q input //send oeogo /ma Geo-Wilt <t>') --
  272.         send_command('bind !@S input //send oeogo /ma Geo-STR <me>')
  273.         send_command('bind !@V input //send oeogo /ma Geo-Vex <t>')
  274.  
  275.         -- GEO (Mule) Entrust Indicolure Spells (Ctrl+Win Keys) --
  276.         send_command('bind ^@1 input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Regen Arnan')
  277.         send_command('bind ^@2 input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Refresh Arnan')
  278.         send_command('bind ^@A input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Acumen Arnan')
  279.         send_command('bind ^@D input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-DEX Arnan')
  280.         send_command('bind ^@F input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Fury Arnan')
  281.         send_command('bind ^@H input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Haste Arnan')
  282.         send_command('bind ^@K input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Focus Arnan')
  283.         send_command('bind ^@P input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Precision Arnan')
  284.         send_command('bind ^@Q input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Barrier Arnan')
  285.         send_command('bind ^@S input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-STR Arnan')
  286.         send_command('bind ^@V input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Attunement Arnan')
  287.        
  288.         -- Blue Mage Job Key Binds (Ctrl & Ctrl+Alt Keys) --
  289.         send_command('bind ^!C input //ja Unbridled Learning <me>;pause 2;input //ma Carcharian Verve <me>')
  290.         send_command('bind ^!D input //ja Diffusion <me>')
  291.         send_command('bind ^!H input //ja Unbridled Learning <me>;pause 2;input //ma Harden Shell <me>')
  292.         send_command('bind ^!M input //ja Unbridled Learning <me>;pause 2;input //ma Mighty Guard <me>')
  293.         send_command('bind ^1 input //ma Regeneration <me>')
  294.         send_command('bind ^2 input //ma Battery Charge <me>')
  295.         send_command('bind ^` input //ma Sudden Lunge <t>')
  296.         send_command('bind !` input //ma Glutinous Dart <t>')
  297.         send_command('bind ^B input //ma Barrier Tusk <me>')
  298.         send_command('bind ^C input //ma Cocoon <me>')
  299.         send_command('bind ^E input //ma Erratic Flutter <me>')
  300.         send_command('bind ^F input //ma Magic Fruit <stpt>')
  301.         send_command('bind ^M input //ma Magic Barrier <me>')
  302.         send_command('bind ^N input //ma Nat. Meditation <me>')
  303.         send_command('bind ^O input //ma Occultation <me>')
  304.         send_command('bind ^P input //ja Provoke <t>')
  305.         send_command('bind ^Z input //ja Berserk <me>')
  306.  
  307.         -- Blue Mage Weapon Skill Key Binds --
  308.         send_command('bind F7 input /ws "Sanguine Blade" <t>')
  309.         send_command('bind F9 input /ws "Expiacion" <t>')
  310.         send_command('bind F10 input /ws "Requiescat" <t>')
  311.         send_command('bind F11 input /ws "Savage Blade" <t>')
  312.         send_command('bind Delete input /ws "Chant du Cygne" <t>')
  313.  
  314.         -- COR (mule) Weapon Skill Key Binds --
  315.         send_command('bind F12 input //send ojomo /ws "Last Stand" <t>')
  316.         send_command('bind !F12 input //send ojomo "Leaden Salute" <t>')
  317.         send_command('bind !Delete input //send ojomo /ws "Savage Blade" <t>') 
  318.  
  319.         ----------------------
  320.         -- Key Binds Unload --
  321.         ----------------------
  322.  
  323.         function file_unload()
  324.         -- Unbind Toggles --
  325.         send_command('unbind ^A')
  326.         send_command('unbind ^D')
  327.         send_command('unbind ^H')
  328.         send_command('unbind ^I')
  329.         send_command('unbind ^K')
  330.         send_command('unbind ^W')
  331.         -- Unbind Stuff to control both Mules --
  332.         send_command('unbind ^X')
  333.         send_command('unbind ^3')
  334.         send_command('unbind ^4')
  335.         send_command('unbind ^4')
  336.         send_command('unbind ^7')
  337.         send_command('unbind ^8')
  338.         send_command('unbind ^9')
  339.         send_command('unbind ^0')
  340.         send_command('unbind ^-')
  341.         -- Unbind COR JA's --
  342.         send_command('unbind !7')
  343.         send_command('unbind !8')
  344.         send_command('unbind !9')
  345.         send_command('unbind !0')
  346.         -- Unbind COR Rolls --
  347.         send_command('unbind !A')
  348.         send_command('unbind !B')
  349.         send_command('unbind !C')
  350.         send_command('unbind !D')
  351.         send_command('unbind !E')
  352.         send_command('unbind !F')
  353.         send_command('unbind !G')
  354.         send_command('unbind !H')
  355.         send_command('unbind !Q')
  356.         send_command('unbind !R')
  357.         send_command('unbind !S')
  358.         send_command('unbind !T')
  359.         send_command('unbind !W')
  360.         send_command('unbind !X')
  361.         -- Unbind GEO JA's --
  362.         send_command('unbind @3')
  363.         send_command('unbind @5')
  364.         send_command('unbind @7')
  365.         send_command('unbind @8')
  366.         send_command('unbind @9')
  367.         send_command('unbind @0')
  368.         -- Unbind GEO Nukes --
  369.         send_command('unbind @F1')
  370.         send_command('unbind @F2')
  371.         send_command('unbind @F3')
  372.         send_command('unbind @F4')
  373.         send_command('unbind @F5')
  374.         send_command('unbind @F6')
  375.         -- Unbind GEO Indi Spells --
  376.         send_command('unbind @1')
  377.         send_command('unbind @2')
  378.         send_command('unbind @A')
  379.         send_command('unbind @D')
  380.         send_command('unbind @F')
  381.         send_command('unbind @H')
  382.         send_command('unbind @K')
  383.         send_command('unbind @P')
  384.         send_command('unbind @Q')
  385.         send_command('unbind @S')
  386.         send_command('unbind @V')
  387.         -- Unbind GEO Geocolure Spells --
  388.         send_command('unbind !@1')
  389.         send_command('unbind !@2')
  390.         send_command('unbind !@A')
  391.         send_command('unbind !@D')
  392.         send_command('unbind !@F')
  393.         send_command('unbind !@H')
  394.         send_command('unbind !@K')
  395.         send_command('unbind !@P')
  396.         send_command('unbind !@Q')
  397.         send_command('unbind !@S')
  398.         send_command('unbind !@V')
  399.         -- Unbind GEO Entrust Spells --
  400.         send_command('unbind ^@1')
  401.         send_command('unbind ^@2')
  402.         send_command('unbind ^@A')
  403.         send_command('unbind ^@D')
  404.         send_command('unbind ^@F')
  405.         send_command('unbind ^@H')
  406.         send_command('unbind ^@K')
  407.         send_command('unbind ^@P')
  408.         send_command('unbind ^@Q')
  409.         send_command('unbind ^@S')
  410.         send_command('unbind ^@V')
  411.         -- Unbind BLU Job Binds --
  412.         send_command('unbind ^!C')
  413.         send_command('unbind ^!D')
  414.         send_command('unbind ^!H')
  415.         send_command('unbind ^!M')
  416.         send_command('unbind ^`')
  417.         send_command('unbind !`')
  418.         send_command('unbind ^1')
  419.         send_command('unbind ^2')
  420.         send_command('unbind ^B')
  421.         send_command('unbind ^C')
  422.         send_command('unbind ^E')
  423.         send_command('unbind ^F')
  424.         send_command('unbind ^M')
  425.         send_command('unbind ^N')
  426.         send_command('unbind ^O')
  427.         send_command('unbind ^P')
  428.         send_command('unbind ^Z')
  429.         -- Unload Weapon Skill Key Binds --
  430.         send_command('unbind F7')
  431.         send_command('unbind F9')  
  432.         send_command('unbind F10')     
  433.         send_command('unbind F11')     
  434.         send_command('unbind F12') 
  435.         send_command('unbind !F12')                
  436.         send_command('unbind Delete')
  437.         send_command('unbind !Delete')
  438.         end
  439.  
  440.        
  441.         --------------------
  442.         -- Idle/Town Sets --
  443.         --------------------
  444.         sets.Idle = {
  445.                         ammo="Staunch Tathlum +1",
  446.                         head=HerculeanHelm.RF,
  447.                         neck="Bathy Choker +1",
  448.                         ear1="Infused Earring",
  449.                         ear2="Genmei Earring",
  450.                         body="Jhakri Robe +2",
  451.                         hands=HerculeanGloves.RF,
  452.                         ring1="Stikini Ring +1",
  453.                         ring2="Stikini Ring +1",
  454.                         back="Moonlight Cape",
  455.                         waist="Flume Belt +1",
  456.                         legs="Carmine Cuisses +1",
  457.                         feet=HerculeanBoots.RF}
  458.         sets.Idle.Full = set_combine(sets.Idle,{})
  459.         sets.Idle.DT = set_combine(sets.Idle,{
  460.                         neck="Loricate Torque +1",
  461.                         ear1="Ethereal Earring",
  462.                         ring1="Defending Ring",
  463.                         ring2="Ayanmo Ring"})
  464.         sets.Idle.Warp = set_combine(sets.Idle,{
  465.                         ring2="Warp Ring"})
  466.         sets.Idle.Town = set_combine(sets.Idle,{})
  467.  
  468.         -------------
  469.         -- TP Sets --
  470.         -------------
  471.         sets.TP = {
  472.                         ammo="Ginsen",
  473.                         head="Adhemar Bonnet +1",
  474.                         neck="Asperity Necklace",
  475.                         ear1="Suppanomimi",
  476.                         ear2="Eabani Earring",
  477.                         body="Adhemar Jacket +1",
  478.                         hands="Adhemar Wrist. +1",
  479.                         ring1="Hetairoi Ring",
  480.                         ring2="Epona's Ring",
  481.                         back=DWCape,
  482.                         waist="Reiki Yotai",
  483.                         legs="Samnuha Tights",
  484.                         feet=HerculeanBoots.TA}
  485.         sets.TP.MidACC = set_combine(sets.TP,{
  486.                         ammo="Falcon Eye",
  487.                         ring1="Chirich Ring +1",
  488.                         neck="Combatant's Torque"})
  489.         sets.TP.HighACC = set_combine(sets.TP.MidACC,{
  490.                         head="Dampening Tam",
  491.                         ring2="Chirich Ring +1"})
  492.         sets.TP.MaxACC = set_combine(sets.TP.HighACC,{
  493.                         head="Carmine Mask +1",
  494.                         ring1="Chirich Ring +1",
  495.                         ring2="Chirich Ring +1",
  496.                         legs="Carmine Cuisses +1"})
  497.  
  498.         ---------------------------
  499.         -- Single Weapon TP Sets --
  500.         ---------------------------
  501.         sets.TP.Single = set_combine(sets.TP,{
  502.                         ear1="Cessance Earring",
  503.                         ear2="Brutal Earring",
  504.                         back=STPCape,
  505.                         waist="Windbuffet Belt +1"})
  506.         sets.TP.Single.MidACC = set_combine(sets.TP.MidACC,{
  507.                         ear1="Cessance Earring",
  508.                         ear2="Brutal Earring",
  509.                         back=STPCape,
  510.                         waist="Windbuffet Belt +1"})
  511.         sets.TP.Single.HighACC = set_combine(sets.TP.HighACC,{
  512.                         ear1="Cessance Earring",
  513.                         ear2="Brutal Earring",
  514.                         back=STPCape,
  515.                         waist="Windbuffet Belt +1"})
  516.         sets.TP.Single.MaxACC = set_combine(sets.TP.MaxACC,{
  517.                         ear1="Mache Earring +1",
  518.                         ear2="Mache Earring +1",
  519.                         back=STPCape,
  520.                         waist="Olseni Belt"})
  521.  
  522.         -- Single Weapon Capped Magic Haste Sets --
  523.         sets.TP.Single.HighHaste = set_combine(sets.TP.Single,{})
  524.         sets.TP.Single.MidACC.HighHaste = set_combine(sets.TP.Single.MidACC,{})
  525.         sets.TP.Single.HighACC.HighHaste = set_combine(sets.TP.Single.HighACC,{})
  526.         sets.TP.Single.MaxACC.HighHaste = set_combine(sets.TP.Single.MaxACC,{})
  527.  
  528.         -- Single Weapon Mythic AM3 Sets --
  529.         sets.TP.Single.AM3 = set_combine(sets.TP.Single,{
  530.                         neck="Ainia Collar",
  531.                         ear2="Telos Earring",
  532.                         back=STPCape})
  533.         sets.TP.Single.MidACC.AM3 = set_combine(sets.TP.Single.MidACC,{
  534.                         back=STPCape,
  535.                         ear2="Telos Earring"})
  536.         sets.TP.Single.HighACC.AM3 = set_combine(sets.TP.Single.HighACC,{
  537.                         back=STPCape,
  538.                         ear2="Telos Earring"})
  539.         sets.TP.Single.MaxACC.AM3 = set_combine(sets.TP.Single.MaxACC,{
  540.                         back=STPCape})
  541.        
  542.         -- Single Weapon Mythic AM3 Capped Magic Haste Sets --
  543.         sets.TP.Single.HighHaste.AM3 = set_combine(sets.TP.Single.AM3,{})
  544.         sets.TP.Single.MidACC.HighHaste.AM3 = set_combine(sets.TP.Single.MidACC.AM3,{})
  545.         sets.TP.Single.HighACC.HighHaste.AM3 = set_combine(sets.TP.Single.HighACC.AM3,{})
  546.         sets.TP.Single.MaxACC.HighHaste.AM3 = set_combine(sets.TP.Single.MaxACC.AM3,{})
  547.  
  548.         ----------------------------
  549.         -- Dual Wield III TP Sets --
  550.         ----------------------------
  551.         sets.TP.DW3 = set_combine(sets.TP,{})
  552.         sets.TP.DW3.MidACC = set_combine(sets.TP.MidACC,{})
  553.         sets.TP.DW3.HighACC = set_combine(sets.TP.HighACC,{})
  554.         sets.TP.DW3.MaxACC = set_combine(sets.TP.MaxACC,{})
  555.  
  556.         -- Dual Wield III Capped Magic Haste Sets --
  557.         sets.TP.DW3.HighHaste =  set_combine(sets.TP,{
  558.                         ear2="Brutal Earring",
  559.                         back=STPCape,
  560.                         waist="Windbuffet Belt +1"})
  561.         sets.TP.DW3.MidACC.HighHaste =  set_combine(sets.TP.MidACC,{
  562.                         ear2="Brutal Earring",
  563.                         back=STPCape,
  564.                         waist="Windbuffet Belt +1"})
  565.         sets.TP.DW3.HighACC.HighHaste =  set_combine(sets.TP.HighACC,{
  566.                         ear2="Brutal Earring",
  567.                         back=STPCape,
  568.                         waist="Windbuffet Belt +1"})
  569.         sets.TP.DW3.MaxACC.HighHaste =  set_combine(sets.TP.MaxACC,{
  570.                         ear2="Mache Earring +1",
  571.                         back=STPCape,
  572.                         waist="Olseni Belt"})
  573.                            
  574.         -- Dual Wield III Mythic AM3 Sets --
  575.         sets.TP.DW3.AM3 = set_combine(sets.TP,{
  576.                         neck="Ainia Collar",
  577.                         ear2="Telos Earring"})
  578.         sets.TP.DW3.MidACC.AM3 = set_combine(sets.TP.MidACC,{
  579.                         ear2="Telos Earring"})
  580.         sets.TP.DW3.HighACC.AM3 = set_combine(sets.TP.HighACC,{
  581.                         ear2="Telos Earring"})
  582.         sets.TP.DW3.MaxACC.AM3 = set_combine(sets.TP.MaxACC,{
  583.                         ear2="Mache Earring +1"})
  584.  
  585.         -- Dual Wield III Mythic AM3 Capped Magic Haste Sets --
  586.         sets.TP.DW3.HighHaste.AM3 =  set_combine(sets.TP,{
  587.                         neck="Ainia Collar",
  588.                         ear2="Telos Earring",
  589.                         back=STPCape,
  590.                         waist="Windbuffet Belt +1"})
  591.         sets.TP.DW3.MidACC.HighHaste.AM3 = set_combine(sets.TP.MidACC,{
  592.                         ear2="Telos Earring",
  593.                         back=STPCape,
  594.                         waist="Windbuffet Belt +1"})
  595.         sets.TP.DW3.HighACC.HighHaste.AM3 = set_combine(sets.TP.HighACC,{
  596.                         ear2="Telos Earring",
  597.                         back=STPCape,
  598.                         waist="Windbuffet Belt +1"})
  599.         sets.TP.DW3.MaxACC.HighHaste.AM3 = set_combine(sets.TP.MaxACC,{
  600.                         ear2="Mache Earring +1",
  601.                         back=STPCape,
  602.                         waist="Olseni Belt"})
  603.                                
  604.         ---------------------------
  605.         -- Dual Wield IV TP Sets --
  606.         ---------------------------
  607.         sets.TP.DW4 = set_combine(sets.TP,{
  608.                         ear1="Cessance Earring"})
  609.         sets.TP.DW4.MidACC = set_combine(sets.TP.MidACC,{
  610.                         ear1="Cessance Earring"})
  611.         sets.TP.DW4.HighACC = set_combine(sets.TP.HighACC,{
  612.                         ear1="Cessance Earring"})
  613.         sets.TP.DW4.MaxACC = set_combine(sets.TP.MaxACC,{
  614.                         ear1="Mache Earring +1"})
  615.  
  616.         -- Dual Wield IV Capped Magic Haste Sets --
  617.         sets.TP.DW4.HighHaste =  set_combine(sets.TP,{
  618.                         ear1="Cessance Earring",
  619.                         ear2="Brutal Earring",
  620.                         back=STPCape,
  621.                         waist="Windbuffet Belt +1"})
  622.         sets.TP.DW4.MidACC.HighHaste =  set_combine(sets.TP.MidACC,{
  623.                         ear1="Cessance Earring",
  624.                         ear2="Brutal Earring",
  625.                         back=STPCape,
  626.                         waist="Windbuffet Belt +1"})
  627.         sets.TP.DW4.HighACC.HighHaste =  set_combine(sets.TP.HighACC,{
  628.                         ear1="Cessance Earring",
  629.                         ear2="Brutal Earring",
  630.                         back=STPCape,
  631.                         waist="Windbuffet Belt +1"})
  632.         sets.TP.DW4.MaxACC.HighHaste =  set_combine(sets.TP.MaxACC,{
  633.                         ear1="Mache Earring +1",
  634.                         ear2="Mache Earring +1",
  635.                         back=STPCape,
  636.                         waist="Olseni Belt"})
  637.  
  638.         -- Dual Wield IV Mythic AM3 Sets --
  639.         sets.TP.DW4.AM3 = set_combine(sets.TP,{
  640.                         neck="Ainia Collar",
  641.                         ear1="Cessance Earring"})
  642.         sets.TP.DW4.MidACC.AM3 = set_combine(sets.TP.MidACC,{
  643.                         ear1="Cessance Earring"})
  644.         sets.TP.DW4.HighACC.AM3 = set_combine(sets.TP.HighACC,{
  645.                         ear1="Cessance Earring"})
  646.         sets.TP.DW4.MaxACC.AM3 = set_combine(sets.TP.MaxACC,{
  647.                         ear1="Mache Earring +1"})
  648.  
  649.         -- Dual Wield IV Mythic AM3 Capped Magic Haste Sets --
  650.         sets.TP.DW4.HighHaste.AM3 =  set_combine(sets.TP,{
  651.                         neck="Ainia Collar",
  652.                         ear1="Cessance Earring",
  653.                         ear2="Telos Earring",
  654.                         back=STPCape,
  655.                         waist="Windbuffet Belt +1"})
  656.         sets.TP.DW4.MidACC.HighHaste.AM3 = set_combine(sets.TP.MidACC,{
  657.                         ear1="Cessance Earring",
  658.                         ear2="Telos Earring",
  659.                         back=STPCape,
  660.                         waist="Windbuffet Belt +1"})
  661.         sets.TP.DW4.HighACC.HighHaste.AM3 = set_combine(sets.TP.HighACC,{
  662.                         ear1="Cessance Earring",
  663.                         ear2="Telos Earring",
  664.                         back=STPCape,
  665.                         waist="Windbuffet Belt +1"})
  666.         sets.TP.DW4.MaxACC.HighHaste.AM3 = set_combine(sets.TP.MaxACC,{
  667.                         ear1="Mache Earring +1",
  668.                         ear2="Mache Earring +1",
  669.                         back=STPCape,
  670.                         waist="Olseni Belt"})
  671.                        
  672.         -- TP Thaumas Coat --
  673.         sets.TP.Thaumas = {body="Thaumas Coat"}
  674.        
  675.         -- TP Treasure Hunter --
  676.         sets.TP.TH = {feet=HerculeanBoots.TH}
  677.  
  678.         -----------------------
  679.         -- Damage Taken Sets --
  680.         -----------------------
  681.        
  682.         -- PDT Set --
  683.         sets.PDT = {
  684.                         ammo="Staunch Tathlum +1",
  685.                         head="Aya. Zucchetto +2",
  686.                         neck="Loricate Torque +1",
  687.                         ear1="Ethereal Earring",
  688.                         ear2="Eabani Earring",
  689.                         body="Ayanmo Corazza +2",
  690.                         hands="Assim. Bazu. +3",
  691.                         ring1="Defending Ring",
  692.                         ring2="Ayanmo Ring",
  693.                         back="Moonlight Cape",
  694.                         waist="Flume Belt +1",
  695.                         legs="Aya. Cosciales +2",
  696.                         feet="Aya. Gambieras +2"}
  697.  
  698.         -- MDT Set --
  699.         sets.MDT = set_combine(sets.PDT,{})
  700.  
  701.         -- Hybrid Sets --
  702.         sets.TP.Hybrid = set_combine(sets.PDT,{
  703.                         ear1="Suppanomimi",
  704.                         ear2="Brutal Earring",
  705.                         body="Adhemar Jacket +1",
  706.                         hands="Adhemar Wrist. +1",
  707.                         ring2="Epona's Ring",
  708.                         waist="Windbuffet Belt +1",
  709.                         back=DWCape,
  710.                         feet=HerculeanBoots.TA})
  711.         sets.TP.Hybrid.MidACC = set_combine(sets.TP.Hybrid,{
  712.                         ear2="Mache Earring +1"})
  713.         sets.TP.Hybrid.HighACC = set_combine(sets.TP.Hybrid.MidACC,{
  714.                         neck="Combatant's Torque"})
  715.         sets.TP.Hybrid.MaxACC = set_combine(sets.TP.Hybrid.HighACC,{
  716.                         waist="Olseni Belt"})
  717.                        
  718.         -- Hybrid High Haste Sets --
  719.         sets.TP.Hybrid.HighHaste = set_combine(sets.PDT,{
  720.                         ear1="Cessance Earring",
  721.                         ear2="Brutal Earring",
  722.                         body="Adhemar Jacket +1",
  723.                         hands="Adhemar Wrist. +1",
  724.                         ring2="Epona's Ring",
  725.                         waist="Windbuffet Belt +1",
  726.                         back=STPCape,
  727.                         feet=HerculeanBoots.TA})
  728.         sets.TP.Hybrid.MidACC.HighHaste = set_combine(sets.TP.Hybrid.HighHaste,{
  729.                         ear2="Mache Earring +1"})
  730.         sets.TP.Hybrid.HighACC.HighHaste = set_combine(sets.TP.Hybrid.MidACC.HighHaste,{
  731.                         neck="Combatant's Torque"})
  732.         sets.TP.Hybrid.MaxACC.HighHaste = set_combine(sets.TP.Hybrid.HighACC.HighHaste,{
  733.                         waist="Olseni Belt"})
  734.  
  735.         -- Kiting Set --
  736.         sets.Kiting =  set_combine(sets.PDT,{
  737.                         legs="Carmine Cuisses +1",
  738.                         feet="Hippo. Socks +1"})
  739.  
  740.         -----------------------
  741.         -- Weapon Skill Sets --
  742.         -----------------------
  743.  
  744.         -- WS Base Sets --
  745.         sets.WS = {
  746.                         ammo="Floestone",
  747.                         head="Adhemar Bonnet +1",
  748.                         neck="Fotia Gorget",
  749.                         ear1="Moonshade Earring",
  750.                         ear2="Brutal Earring",
  751.                         body="Adhemar Jacket +1",
  752.                         hands="Adhemar Wrist. +1",
  753.                         ring1="Shukuyu Ring",
  754.                         ring2="Epona's Ring",
  755.                         back=STPCape,
  756.                         waist="Fotia Belt",
  757.                         legs="Samnuha Tights",
  758.                         feet=HerculeanBoots.TA}
  759.         sets.WS.MidACC = set_combine(sets.WS,{
  760.                         ammo="Falcon Eye",
  761.                         head="Dampening Tam"})
  762.         sets.WS.HighACC = set_combine(sets.WS.MidACC,{
  763.                         ear2="Mache Earring +1",
  764.                         ring1="Ramuh Ring +1"})
  765.         sets.WS.MaxACC = set_combine(sets.WS.HighACC,{
  766.                         head="Carmine Mask +1",
  767.                         ring2="Ramuh Ring +1",
  768.                         legs="Carmine Cuisses +1"})
  769.  
  770.         -- One-Hit Sets --
  771.         sets.WS.OneHit = set_combine(sets.WS,{
  772.                         head=HerculeanHelm.WSD,
  773.                         neck="Caro Necklace",
  774.                         ear2="Ishvara Earring",
  775.                         body="Assim. Jubbah +3",
  776.                         hands="Jhakri Cuffs +2",
  777.                         ring2="Ifrit Ring +1",
  778.                         back=WSDCape,
  779.                         waist="Prosilio Belt +1",
  780.                         legs="Luhlaza Shalwar +3",
  781.                         feet=HerculeanBoots.WSD})
  782.         sets.WS.OneHit.MidACC = set_combine(sets.WS.MidACC,{
  783.                         head=HerculeanHelm.WSD,
  784.                         neck="Caro Necklace",
  785.                         ear2="Ishvara Earring",
  786.                         body="Assim. Jubbah +3",
  787.                         hands="Jhakri Cuffs +2",
  788.                         ring2="Ifrit Ring +1",
  789.                         waist="Prosilio Belt +1",
  790.                         back=WSDCape,
  791.                         legs="Luhlaza Shalwar +3",
  792.                         feet=HerculeanBoots.WSD})
  793.         sets.WS.OneHit.HighACC = set_combine(sets.WS.HighACC,{
  794.                         ear2="Ishvara Earring",
  795.                         body="Assim. Jubbah +3",
  796.                         hands="Jhakri Cuffs +2",
  797.                         ring2="Ifrit Ring +1",
  798.                         back=WSDCape,
  799.                         legs="Luhlaza Shalwar +3",
  800.                         feet=HerculeanBoots.WSD})
  801.         sets.WS.OneHit.MaxACC = set_combine(sets.WS.MaxACC,{})
  802.                        
  803.         -- Magic WS Base Set --
  804.         sets.WS.MABWS = {
  805.                         ammo="Pemphredo Tathlum",
  806.                         head="Jhakri Coronal +2",
  807.                         neck="Sanctity Necklace",
  808.                         ear1="Friomisi Earring",
  809.                         ear2="Regal Earring",
  810.                         body="Amalric Doublet +1",
  811.                         hands="Jhakri Cuffs +2",
  812.                         ring1="Shiva Ring +1",
  813.                         ring2="Shiva Ring +1",
  814.                         back=WSDCape,
  815.                         waist="Eschan Stone",
  816.                         legs="Luhlaza Shalwar +3",
  817.                         feet="Amalric nails +1"}
  818.        
  819.         -----------------------------
  820.         -- Sword Weapon Skill Sets --
  821.         -----------------------------
  822.  
  823.         -- Chant du Cygne Sets --
  824.         sets.WS["Chant du Cygne"] = set_combine(sets.WS,{
  825.                         ammo="Falcon Eye",
  826.                         head="Adhemar Bonnet +1",
  827.                         ear1="Mache Earring +1",
  828.                         ear2="Mache Earring +1",
  829.                         body=HerculeanVest.Crit,
  830.                         ring1="Begrudging Ring",
  831.                         back=CritCape,
  832.                         feet="Adhe. Gamashes +1"})
  833.         sets.WS["Chant du Cygne"].MidACC = set_combine(sets.WS.MidACC,{
  834.                         head="Adhemar Bonnet +1",
  835.                         ear1="Mache Earring +1",
  836.                         ear2="Mache Earring +1",
  837.                         ring1="Begrudging Ring",
  838.                         back=CritCape,
  839.                         feet="Adhe. Gamashes +1"})
  840.         sets.WS["Chant du Cygne"].HighACC = set_combine(sets.WS.HighACC,{
  841.                         ear1="Mache Earring +1",
  842.                         ring1="Begrudging Ring",
  843.                         back=CritCape})
  844.         sets.WS["Chant du Cygne"].MaxACC = set_combine(sets.WS.MaxACC,{
  845.                         ear1="Mache Earring +1",
  846.                         back=CritCape})
  847.  
  848.         -- Savage Blade Set --
  849.         sets.WS["Savage Blade"] = set_combine(sets.WS.OneHit,{
  850.                         ring2="Rufescent Ring"})
  851.         sets.WS["Savage Blade"].MidACC = set_combine(sets.WS.OneHit.MidACC,{
  852.                         ring2="Rufescent Ring"})
  853.         sets.WS["Savage Blade"].HighACC = set_combine(sets.WS.OneHit.HighACC,{
  854.                         ring2="Rufescent Ring"})
  855.         sets.WS["Savage Blade"].MaxACC = set_combine(sets.WS.OneHit.MaxACC,{})
  856.  
  857.         -- Requiescat Sets --
  858.         sets.WS.Requiescat = set_combine(sets.WS,{
  859.                         ammo="Quartz Tathlum +1",
  860.                         head="Luh. Keffiyeh +3",
  861.                         ear2="Regal Earring",
  862.                         body="Luhlaza Jubbah +3",
  863.                         hands="Luh. Bazubands +3",
  864.                         ring1="Rufescent Ring",
  865.                         back=MNDDACape,
  866.                         legs="Jhakri Slops +2",
  867.                         feet="Luhlaza Charuqs +3"})
  868.         sets.WS.Requiescat.MidACC = set_combine(sets.WS.MidACC,{
  869.                         ammo="Quartz Tathlum +1",
  870.                         head="Luh. Keffiyeh +3",
  871.                         ear2="Regal Earring",
  872.                         body="Luhlaza Jubbah +3",
  873.                         hands="Luh. Bazubands +3",
  874.                         ring1="Rufescent Ring",
  875.                         back=MNDDACape,
  876.                         legs="Jhakri Slops +2",
  877.                         feet="Luhlaza Charuqs +3"})
  878.         sets.WS.Requiescat.HighACC = set_combine(sets.WS.HighACC,{
  879.                         head="Luh. Keffiyeh +3",
  880.                         ear2="Regal Earring",
  881.                         body="Luhlaza Jubbah +3",
  882.                         hands="Luh. Bazubands +3",
  883.                         ring1="Rufescent Ring",
  884.                         back=MNDDACape,
  885.                         legs="Jhakri Slops +2",
  886.                         feet="Luhlaza Charuqs +3"})
  887.         sets.WS.Requiescat.MaxACC = set_combine(sets.WS.MaxACC,{})
  888.  
  889.         -- Expiacion Sets --
  890.         sets.WS.Expiacion = set_combine(sets.WS.OneHit,{})
  891.         sets.WS.Expiacion.MidACC = set_combine(sets.WS.MidACC.OneHit,{})
  892.         sets.WS.Expiacion.HighACC = set_combine(sets.WS.HighACC.OneHit,{})
  893.         sets.WS.Expiacion.MaxACC = set_combine(sets.WS.MaxACC.OneHit,{})
  894.  
  895.         -- Vorpal Blade Sets --
  896.         sets.WS["Vorpal Blade"] = set_combine(sets.WS,{
  897.                         head="Adhemar Bonnet +1",
  898.                         body=HerculeanVest.Crit,
  899.                         ring1="Begrudging Ring",
  900.                         back=CritCape,
  901.                         feet="Adhe. Gamashes +1"})
  902.         sets.WS["Vorpal Blade"].MidACC = set_combine(sets.WS.MidACC,{
  903.                         head="Adhemar Bonnet +1",
  904.                         ring1="Begrudging Ring",
  905.                         back=CritCape,
  906.                         feet="Adhe. Gamashes +1"})
  907.         sets.WS["Vorpal Blade"].HighACC = set_combine(sets.WS.HighACC,{
  908.                         ring1="Begrudging Ring",
  909.                         back=CritCape})
  910.         sets.WS["Vorpal Blade"].MaxACC = set_combine(sets.WS.MaxACC,{
  911.                         back=CritCape})
  912.        
  913.         -- Circle Blade Sets --
  914.         sets.WS["Circle Blade"] = set_combine(sets.WS.OneHit,{})
  915.         sets.WS["Circle Blade"].MidACC = set_combine(sets.WS.OneHit.MidACC,{})
  916.         sets.WS["Circle Blade"].HighACC = set_combine(sets.WS.OneHit.HighACC,{})
  917.         sets.WS["Circle Blade"].MaxACC = set_combine(sets.WS.OneHit.MaxACC,{})     
  918.        
  919.         -- Sanguine Blade Set --
  920.         sets.WS["Sanguine Blade"] = set_combine(sets.WS.MABWS,{
  921.                         head="Pixie Hairpin +1",
  922.                         ring1="Archon Ring"})
  923.         sets.WS["Sanguine Blade"].MidACC = set_combine(sets.WS.MABWS,{
  924.                         head="Pixie Hairpin +1",
  925.                         ring1="Archon Ring"})
  926.         sets.WS["Sanguine Blade"].HighACC = set_combine(sets.WS.MABWS,{
  927.                         head="Pixie Hairpin +1",
  928.                         ring1="Archon Ring"})
  929.         sets.WS["Sanguine Blade"].MaxACC = set_combine(sets.WS.MABWS,{
  930.                         head="Pixie Hairpin +1",
  931.                         ring1="Archon Ring"})
  932.        
  933.         ----------------------------
  934.         -- Club Weapon Skill Sets --
  935.         ----------------------------
  936.        
  937.         -- Realmrazer Sets --
  938.         sets.WS.Realmrazer = set_combine(sets.WS.Requiescat,{
  939.                         ring2="Levia. Ring"})
  940.         sets.WS.Realmrazer.MidACC = set_combine(sets.WS.Requiescat.MidACC,{
  941.                         ring2="Levia. Ring"})
  942.         sets.WS.Realmrazer.HighACC = set_combine(sets.WS.Requiescat.HighACC,{})
  943.         sets.WS.Realmrazer.MaxACC = set_combine(sets.WS.Requiescat.MaxACC,{})
  944.  
  945.         -- Black Halo Sets --
  946.         sets.WS["Black Halo"] = set_combine(sets.WS,{
  947.                         ammo="Quartz Tathlum +1",
  948.                         head="Dampening Tam",
  949.                         ring1="Rufescent Ring",
  950.                         back=MNDDACape})
  951.         sets.WS["Black Halo"].MidACC = set_combine(sets.WS.MidACC,{
  952.                         ammo="Quartz Tathlum +1",
  953.                         ring1="Rufescent Ring",
  954.                         back=MNDDACape})
  955.         sets.WS["Black Halo"].HighACC = set_combine(sets.WS.HighACC,{
  956.                         ring1="Rufescent Ring",
  957.                         back=MNDDACape})
  958.         sets.WS["Black Halo"].MaxACC = set_combine(sets.WS.MaxACC,{})
  959.        
  960.         -- True Strike Sets --
  961.         sets.WS["True Strike"] = set_combine(sets.WS.OneHit,{
  962.                         head="Adhemar Bonnet +1"})
  963.         sets.WS["True Strike"].MidACC = set_combine(sets.WS.OneHit.MidACC,{
  964.                         head="Adhemar Bonnet +1"})
  965.         sets.WS["True Strike"].HighACC = set_combine(sets.WS.OneHit.HighACC,{
  966.                         head="Adhemar Bonnet +1"})
  967.         sets.WS["True Strike"].MaxACC = set_combine(sets.WS.OneHit.MaxACC,{})
  968.        
  969.         -- Judgment Sets --
  970.         sets.WS.Judgment = set_combine(sets.WS.OneHit,{})
  971.         sets.WS.Judgment.MidACC = set_combine(sets.WS.OneHit.MidACC,{})
  972.         sets.WS.Judgment.HighACC = set_combine(sets.WS.OneHit.HighACC,{})
  973.         sets.WS.Judgment.MaxACC = set_combine(sets.WS.OneHit.MaxACC,{})
  974.        
  975.         -- Flash Nova Set --
  976.         sets.WS["Flash Nova"] = set_combine(sets.WS.MABWS,{})
  977.         sets.WS["Flash Nova"].MidACC = set_combine(sets.WS.MABWS,{})
  978.         sets.WS["Flash Nova"].HighACC = set_combine(sets.WS.MABWS,{})
  979.         sets.WS["Flash Nova"].MaxACC = set_combine(sets.WS.MABWS,{})
  980.        
  981.         ----------------------
  982.         -- Job Ability Sets --
  983.         ----------------------
  984.        
  985.         -- Blue Mage JA Sets --
  986.         sets.JA = {}
  987.         sets.JA['Azure Lore'] = {hands="Luh. Bazubands +3"}
  988.         sets['Chain Affinity'] = {head="Hashishin Kavuk +1",feet="Assim. Charuqs +3"}
  989.         sets.Efflux = {back=STPCape,legs="Hashishin Tayt +1"}
  990.         sets['Burst Affinity'] = {}  -- use Hashi. Basmak +1 here if no Almaric +1 feet --
  991.         sets.Convergence = {head="Luh. Keffiyeh +3"}
  992.         sets.Diffusion = {feet="Luhlaza Charuqs +3"}
  993.        
  994.         -- Enmity JA Set --
  995.         sets.JA.Enmity = set_combine(sets.PDT,{
  996.                         neck="Unmoving Collar +1",
  997.                         ear1="Trux Earring",
  998.                         ear2="Cryptic Earring",
  999.                         body="Emet Harness +1",
  1000.                         ring1="Petrov Ring",
  1001.                         ring2="Eihwaz Ring",
  1002.                         waist="Goading Belt"})
  1003.        
  1004.         -- /WAR JA Sets --
  1005.         sets.JA.Provoke = set_combine(sets.JA.Enmity,{})
  1006.         sets.JA.Warcry = set_combine(sets.JA.Enmity,{})
  1007.        
  1008.         -- /PLD JA Sets --
  1009.         sets.JA["Shield Bash"] = set_combine(sets.JA.Enmity,{})
  1010.         sets.JA.Sentinel = set_combine(sets.JA.Enmity,{})
  1011.         sets.JA["Holy Circle"] = set_combine(sets.JA.Enmity,{})
  1012.        
  1013.         -- /DRK JA Sets --
  1014.         sets.JA.Souleater = set_combine(sets.JA.Enmity,{})
  1015.         sets.JA["Last Resort"] = set_combine(sets.JA.Enmity,{})
  1016.         sets.JA["Arcane Circle"] = set_combine(sets.JA.Enmity,{})
  1017.        
  1018.         -- /DNC JA Sets --
  1019.         sets.Waltz = {
  1020.                         ammo="Staunch Tathlum +1",
  1021.                         head="Carmine Mask +1",
  1022.                         neck="Unmoving Collar +1",
  1023.                         ear1="Ethereal Earring",
  1024.                         ear2="Genmei Earring",
  1025.                         body="Vrikodara Jupon",
  1026.                         hands="Amalric Gages +1",
  1027.                         ring1="Defending Ring",
  1028.                         ring2="Ayanmo Ring",
  1029.                         waist="Chaac Belt",
  1030.                         legs="Hashishin Tayt +1",
  1031.                         feet="Hippo. Socks +1"}
  1032.         sets.Step = {
  1033.                         ammo="Pemphredo Tathlum",
  1034.                         head="Assim. Keffiyeh +3",
  1035.                         neck="Sanctity Necklace",
  1036.                         ear1="Digni. Earring",
  1037.                         ear2="Regal Earring",
  1038.                         body="Jhakri Robe +2",
  1039.                         hands="Jhakri Cuffs +2",
  1040.                         ring1="Stikini Ring +1",
  1041.                         ring2="Stikini Ring +1",
  1042.                         back=MABCape,
  1043.                         waist="Chaac Belt",
  1044.                         legs="Jhakri Slops +2",
  1045.                         feet="Jhakri Pigaches +2"}     
  1046.         sets.Flourish = set_combine(sets.Step,{})
  1047.  
  1048.         -- /RUN JA Sets --
  1049.         sets.JA.Lunge = {
  1050.                         ammo="Pemphredo Tathlum",
  1051.                         head="Assim. Keffiyeh +3",
  1052.                         neck="Sanctity Necklace",
  1053.                         ear1="Friomisi Earring",
  1054.                         ear2="Regal Earring",
  1055.                         body="Amalric Doublet +1",
  1056.                         hands="Amalric Gages +1",
  1057.                         ring1="Shiva Ring +1",
  1058.                         ring2="Shiva Ring +1",
  1059.                         back=MABCape,
  1060.                         waist="Eschan Stone",
  1061.                         legs="Amalric Slops +1",
  1062.                         feet="Amalric nails +1"}
  1063.        
  1064.         --------------------
  1065.         -- Pre-Cast Sets --
  1066.         --------------------
  1067.        
  1068.         -- Base Pre-Cast Set --
  1069.         sets.Precast = {
  1070.                         ammo="Impatiens",
  1071.                         head="Carmine Mask +1",
  1072.                         neck="Orunmila's Torque",
  1073.                         ear1="Loquac. Earring",
  1074.                         ear2="Etiolation Earring",
  1075.                         body="Luhlaza Jubbah +3",
  1076.                         hands="Leyline Gloves",
  1077.                         ring1="Lebeche Ring",
  1078.                         ring2="Kishar Ring",
  1079.                         back="Perimede Cape",
  1080.                         waist="Witful Belt",
  1081.                         legs="Aya. Cosciales +2",
  1082.                         feet="Carmine Greaves +1"}
  1083.        
  1084.         -- Fast Cast Set --
  1085.         sets.Precast.FastCast = set_combine(sets.Precast,{})
  1086.                        
  1087.         -- Pre-Cast Blue Magic --
  1088.         sets.Precast['Blue Magic'] = set_combine(sets.Precast,{}) -- Insert Hashishin Mintan +1 here if you need the FC --
  1089.                        
  1090.         -- Pre-Cast Enhancing Magic --
  1091.         sets.Precast['Enhancing Magic'] = set_combine(sets.Precast,{
  1092.                         waist="Siegel Sash"})
  1093.        
  1094.         -- Cure Precast Set --
  1095.         sets.Precast.Cure = set_combine(sets.Precast.FastCast,{
  1096.                         ear2="Mendi. Earring",
  1097.                         waist="Acerbic Sash +1"})
  1098.  
  1099.         ------------------------------------
  1100.         -- Mid-Cast Sets (Non-Blue Magic) --
  1101.         ------------------------------------
  1102.  
  1103.         -- Mid-Cast Base Set --
  1104.         sets.Midcast = {
  1105.                         ammo="Staunch Tathlum +1",
  1106.                         head="Carmine Mask +1",
  1107.                         neck="Orunmila's Torque",
  1108.                         ear1="Loquac. Earring",
  1109.                         ear2="Etiolation Earring",
  1110.                         body="Luhlaza Jubbah +3",
  1111.                         hands="Leyline Gloves",
  1112.                         ring1="Defending Ring",
  1113.                         ring2="Kishar Ring",
  1114.                         back=FCCape,
  1115.                         waist="Witful Belt",
  1116.                         legs="Carmine Cuisses +1",
  1117.                         feet="Amalric nails +1"}
  1118.  
  1119.         -- Magic Haste Set --
  1120.         sets.Midcast.Haste = set_combine(sets.Midcast,{})
  1121.                        
  1122.         -- Magic Attack Bonus Set --
  1123.         sets.Midcast.MAB = {
  1124.                         ammo="Pemphredo Tathlum",
  1125.                         head="Assim. Keffiyeh +3",
  1126.                         neck="Sanctity Necklace",
  1127.                         ear1="Friomisi Earring",
  1128.                         ear2="Regal Earring",
  1129.                         body="Amalric Doublet +1",
  1130.                         hands="Amalric Gages +1",
  1131.                         ring1="Shiva Ring +1",
  1132.                         ring2="Shiva Ring +1",
  1133.                         back=MABCape,
  1134.                         waist="Eschan Stone",
  1135.                         legs="Amalric Slops +1",
  1136.                         feet="Amalric nails +1"}
  1137.                        
  1138.         -- Magic Burst Set --
  1139.         sets.Midcast.MB = {
  1140.                         body="Samnuha Coat",
  1141.                         hands="Amalric Gages +1",
  1142.                         ring1="Mujin Band",
  1143.                         ring2="Locus Ring",
  1144.                         back="Seshaw Cape",
  1145.                         feet="Jhakri Pigaches +2"}
  1146.  
  1147.         -- Magic Accuracy Set --
  1148.         sets.Midcast.MACC = {
  1149.                         ammo="Pemphredo Tathlum",
  1150.                         head="Assim. Keffiyeh +3",
  1151.                         neck="Erra Pendant",
  1152.                         ear1="Digni. Earring",
  1153.                         ear2="Regal Earring",
  1154.                         body="Amalric Doublet +1",
  1155.                         hands="Jhakri Cuffs +2",
  1156.                         ring1="Stikini Ring +1",
  1157.                         ring2="Stikini Ring +1",
  1158.                         back=MABCape,
  1159.                         waist="Eschan Stone",
  1160.                         legs="Jhakri Slops +2",
  1161.                         feet="Jhakri Pigaches +2"}
  1162.                        
  1163.         -- Magic Enmity Set --
  1164.         sets.Midcast.MagicEnmity = set_combine(sets.Midcast,{
  1165.                         neck="Unmoving Collar +1",
  1166.                         ear1="Trux Earring",
  1167.                         ear2="Cryptic Earring",
  1168.                         body="Emet Harness +1",
  1169.                         ring1="Petrov Ring",
  1170.                         ring2="Eihwaz Ring",
  1171.                         waist="Goading Belt"})
  1172.        
  1173.         -- Enhancing Magic Base Set --
  1174.         sets.Midcast['Enhancing Magic'] = {
  1175.                         head="Carmine Mask +1",
  1176.                         neck="Incanter's Torque",
  1177.                         ear1="Andoaa Earring",
  1178.                         ear2="Augment. Earring",
  1179.                         body="Telchine Chas.",
  1180.                         ring1="Stikini Ring +1",
  1181.                         ring2="Stikini Ring +1",
  1182.                         back="Perimede Cape",
  1183.                         waist="Olympus Sash",
  1184.                         legs="Carmine Cuisses +1"}
  1185.        
  1186.         -- Elemental Magic Set --
  1187.         sets.Midcast['Elemental Magic'] = set_combine(sets.Midcast.MAB,{})
  1188.  
  1189.         -- Enfeebling Magic Set --
  1190.         sets.Midcast['Enfeebling Magic'] = set_combine(sets.Midcast.MACC,{
  1191.                         head="Carmine Mask +1",
  1192.                         ring2="Kishar Ring",
  1193.                         feet="Skaoi Boots"})
  1194.        
  1195.         -- Dark Magic Set --
  1196.         sets.Midcast['Dark Magic'] = set_combine(sets.Midcast.MACC,{})
  1197.        
  1198.         -- Refresh Set --
  1199.         sets.Midcast.Refresh = set_combine(sets.Midcast,{
  1200.                         head="Amalric Coif +1",
  1201.                         waist="Gishdubar Sash"})
  1202.        
  1203.         -- Flash Set --
  1204.         sets.Midcast.Flash = set_combine(sets.Midcast.MagicEnmity,{})
  1205.        
  1206.         -- Repose Set --
  1207.         sets.Midcast.Repose = set_combine(sets.Midcast.MACC,{})
  1208.        
  1209.         -- Stoneskin Set --
  1210.         sets.Midcast.Stoneskin = set_combine(sets.Midcast['Enhancing Magic'],{waist="Siegel Sash"})
  1211.                        
  1212.         -- Enfeebling Ninjutsu Set --
  1213.         sets.Midcast.Enfeebling_Ninjutsu = set_combine(sets.Midcast.MACC,{})
  1214.        
  1215.         -- Elemental Ninjutsu Set --
  1216.         sets.Midcast.Elemental_Ninjutsu = set_combine(sets.Midcast.MAB,{})
  1217.  
  1218.         -----------------------------------------------------
  1219.         -- For Cure Spells & The Listed Healing Blue Magic --
  1220.         -----------------------------------------------------
  1221.        
  1222.         -- Cure Set --
  1223.         sets.Midcast.Cure = {
  1224.                         ammo="Quartz Tathlum +1",
  1225.                         head="Carmine Mask +1",
  1226.                         neck="Phalaina Locket",
  1227.                         ear1="Loquac. Earring",
  1228.                         ear2="Mendi. Earring",
  1229.                         body="Vrikodara Jupon",
  1230.                         hands="Telchine Gloves",
  1231.                         ring1="Rufescent Ring",
  1232.                         ring2="Levia. Ring",
  1233.                         back="Solemnity Cape",
  1234.                         waist="Gishdubar Sash",
  1235.                         legs="Telchine Braconi",
  1236.                         feet="Medium's Sabots"}
  1237.                        
  1238.         -- Self Cures --
  1239.         sets.Midcast.SelfCure = set_combine(sets.Midcast.Cure,{
  1240.                         waist="Gishdubar Sash"})
  1241.                        
  1242.         -- HP-up Cures --
  1243.         sets.Midcast.HPCure = set_combine(sets.Midcast.Cure,{
  1244.                         ammo="Egoist's Tathlum",
  1245.                         ear1="Odnowa Earring",
  1246.                         ear2="Odnowa Earring +1",
  1247.                         ring1="Eihwaz Ring",
  1248.                         waist="Gishdubar Sash",
  1249.                         back="Moonlight Cape"})
  1250.        
  1251.         ------------------------------
  1252.         -- Mid-Cast Blue Magic Sets --
  1253.         ------------------------------
  1254.        
  1255.          -- Blue Magic Base Mid-Cast Set --
  1256.         sets.Midcast['Blue Magic'] = set_combine(sets.Midcast,{hands="Hashi. Bazu. +1"})
  1257.  
  1258.         -- For The Listed Physical Type Blue Magic --
  1259.         sets.Midcast.PhysicalBlueMagic = {
  1260.                         ammo="Floestone",
  1261.                         head="Luh. Keffiyeh +3",
  1262.                         neck="Caro Necklace",
  1263.                         ear1="Mache Earring +1",
  1264.                         ear2="Mache Earring +1",
  1265.                         body="Luhlaza Jubbah +3",
  1266.                         hands="Luh. Bazubands +3",
  1267.                         ring1="Shukuyu Ring",
  1268.                         ring2="Ifrit Ring +1",
  1269.                         back=WSDCape,
  1270.                         waist="Prosilio Belt +1",
  1271.                         legs="Jhakri Slops +2",
  1272.                         feet="Luhlaza Charuqs +3"}
  1273.  
  1274.         -- BlueMagic STR Set --
  1275.         sets.Midcast.PhysicalBlueMagic_STR = set_combine(sets.Midcast.PhysicalBlueMagic,{})
  1276.  
  1277.         -- BlueMagic STR/DEX Set --
  1278.         sets.Midcast.PhysicalBlueMagic_DEX = set_combine(sets.Midcast.PhysicalBlueMagic,{
  1279.                         ring1="Ramuh Ring +1",
  1280.                         ring2="Ramuh Ring +1"})
  1281.  
  1282.         -- BlueMagic STR/VIT Set --
  1283.         sets.Midcast.PhysicalBlueMagic_VIT = set_combine(sets.Midcast.PhysicalBlueMagic,{})
  1284.  
  1285.         -- BlueMagic STR/AGI Set --
  1286.         sets.Midcast.PhysicalBlueMagic_AGI = set_combine(sets.Midcast.PhysicalBlueMagic,{})
  1287.        
  1288.         -- Physical Acc Blue Magic --
  1289.         sets.Midcast.BlueMagic_PhysicalACC = {
  1290.                         ammo="Falcon Eye",
  1291.                         head="Carmine Mask +1",
  1292.                         neck="Combatant's Torque",
  1293.                         ear1="Mache Earring +1",
  1294.                         ear2="Mache Earring +1",
  1295.                         body="Adhemar Jacket +1",
  1296.                         hands="Luh. Bazubands +3",
  1297.                         ring1="Ramuh Ring +1",
  1298.                         ring2="Ramuh Ring +1",
  1299.                         back=STPCape,
  1300.                         waist="Olseni Belt",
  1301.                         legs="Carmine Cuisses +1",
  1302.                         feet="Luhlaza Charuqs +3"}
  1303.                      
  1304.         -- For The Listed Magical Type BlueMagic --
  1305.         sets.Midcast.MagicalBlueMagic = set_combine(sets.Midcast.MAB,{})
  1306.        
  1307.         -- Dark Based Magical Blue Magic --
  1308.         sets.Midcast.BlueMagic_Dark = set_combine(sets.Midcast.MAB,{head="Pixie Hairpin +1",ring1="Archon Ring"})
  1309.        
  1310.         -- Light Based Magical Blue Magic --
  1311.         sets.Midcast.BlueMagic_Light = set_combine(sets.Midcast.MAB,{}) -- Insert Weatherspoon Ring Here --
  1312.  
  1313.         -- Earth Based Magical Blue Magic --
  1314.         sets.Midcast.BlueMagic_Earth = set_combine(sets.Midcast.MAB,{}) -- Insert Quanpur Necklace Here --
  1315.        
  1316.         -- Blue Magic Burst Affinity Magic Burst Set --
  1317.         sets.Midcast.BAMB = {
  1318.                         body="Samnuha Coat",
  1319.                         hands="Amalric Gages +1",
  1320.                         ring1="Mujin Band",
  1321.                         ring2="Locus Ring",
  1322.                         back="Seshaw Cape"}            
  1323.  
  1324.         -- Magic Accuracy For The Listed BlueMagic --
  1325.         sets.Midcast.BlueMagic_Accuracy = set_combine(sets.Midcast.MACC,{})
  1326.  
  1327.         -- Stun Set For The Listed BlueMagic --
  1328.         sets.Midcast.BlueMagic_Stun = set_combine(sets.Midcast.MACC,{})
  1329.                        
  1330.         -- Physical Stun Blue Magic --
  1331.         sets.Midcast.BlueMagic_PhysicalStun = set_combine(sets.Midcast.MACC,{
  1332.                         head="Carmine Mask +1",
  1333.                         neck="Sanctity Necklace",
  1334.                         body="Jhakri Robe +2",
  1335.                         hands="Jhakri Cuffs +2",
  1336.                         legs="Jhakri Slops +2",
  1337.                         feet="Jhakri Pigaches +2"})
  1338.  
  1339.         -- Buff Set For The Listed Blue Magic --
  1340.         sets.Midcast.BlueMagic_Buff = {
  1341.                         ammo="Staunch Tathlum +1",
  1342.                         head="Carmine Mask +1",
  1343.                         neck="Incanter's Torque",
  1344.                         ear1="Loquac. Earring",
  1345.                         ear2="Etiolation Earring",
  1346.                         body="Assim. Jubbah +3",
  1347.                         hands="Hashi. Bazu. +1",
  1348.                         ring1="Defending Ring",
  1349.                         ring2="Kishar Ring",
  1350.                         back="Cornflower Cape",
  1351.                         legs="Hashishin Tayt +1",
  1352.                         waist="Hachirin-no-Obi",
  1353.                         feet="Luhlaza Charuqs +3"}
  1354.  
  1355.         -- Breath Set For The Listed Blue Magic --
  1356.         sets.Midcast.BlueMagic_Breath = set_combine(sets.Midcast,{head="Luh. Keffiyeh +3"})
  1357.        
  1358.         -- White Wind Set --
  1359.         sets.Midcast.BlueMagic_HPCure = set_combine(sets.Midcast.HPCure,{})
  1360.        
  1361.         -- Enmity Sets For the Listed Blue Magic --
  1362.         sets.Midcast.BlueMagic_Emnity = set_combine(sets.Midcast.MagicEnmity,{})
  1363.  
  1364. end
  1365.  
  1366.         ----------------
  1367.         -- Pre-Target --
  1368.         ----------------
  1369.  
  1370. function pretarget(spell,action)
  1371.         if (spell.type:endswith('Magic') or spell.type == "Ninjutsu") and buffactive.silence then -- Auto Use Echo Drops If You Are Silenced --
  1372.                 cancel_spell()
  1373.                 send_command('input /item "Echo Drops" <me>')
  1374.         elseif spell.english == "Berserk" and buffactive.Berserk then -- Change Berserk To Aggressor If Berserk Is On --
  1375.                 cancel_spell()
  1376.                 send_command('Aggressor')
  1377.         elseif spell.english:ifind("Cure") and player.mp<actualCost(spell.mp_cost) then -- Cure Degradation --
  1378.                 degrade_spell(spell,Cure_Spells)
  1379.         elseif spell.english:ifind("Curaga") and player.mp<actualCost(spell.mp_cost) then -- Curaga Degradation --
  1380.                 degrade_spell(spell,Curaga_Spells)
  1381.         return
  1382.     end
  1383. end
  1384.  
  1385.         --------------
  1386.         -- Pre-Cast --
  1387.         --------------
  1388.        
  1389. function precast(spell,action)
  1390.         if spell.type == "WeaponSkill" then
  1391.         if player.status ~= 'Engaged' then
  1392.         else
  1393.                 equipSet = sets.WS
  1394.         if equipSet[spell.english] then
  1395.                 equipSet = equipSet[spell.english]
  1396.                 end
  1397.         if equipSet[AccArray[AccIndex]] then
  1398.                 equipSet = equipSet[AccArray[AccIndex]]
  1399.                 end
  1400.         if buffactive['Reive Mark'] then -- Equip Ygnas's Resolve +1 During Reive --
  1401.                 equipSet = set_combine(equipSet,{neck="Ygnas's Resolve +1"})
  1402.                 end
  1403.         if spell.english == "Chant du Cygne" and (player.tp > 2750 or (player.equipment.main == 'Sequence' and player.tp > 2250)) then
  1404.                 equipSet = set_combine(equipSet,{ear1="Mache Earring +1",ear2="Mache Earring +1"})  
  1405.         elseif spell.english == "Requiescat" and (player.tp > 2750 or (player.equipment.main == 'Sequence' and player.tp > 2250)) then
  1406.                 equipSet = set_combine(equipSet,{ear1="Cessance Earring"})  
  1407.         elseif spell.english == "Expiacion" and (player.tp > 2750 or (player.equipment.main == 'Sequence' and player.tp > 2250)) then
  1408.                 equipSet = set_combine(equipSet,{ear1="Ishvara Earring",ear2="Brutal Earring"})
  1409.         elseif spell.english == "Savage Blade" and (player.tp > 2750 or (player.equipment.main == 'Sequence' and player.tp > 2250)) then
  1410.                 equipSet = set_combine(equipSet,{ear1="Ishvara Earring",ear2="Brutal Earring"})
  1411.         elseif spell.english == "Vorpal Blade" and (player.tp > 2750 or (player.equipment.main == 'Sequence' and player.tp > 2250)) then
  1412.                 equipSet = set_combine(equipSet,{ear1="Cessance Earring",ear2="Brutal Earring"})
  1413.         elseif spell.english == "Sanguine Blade" and (world.day == "Darksday" or world.weather_element == "Dark") then
  1414.                 equipSet = set_combine(equipSet,{waist="Hachirin-no-Obi"})
  1415.         elseif spell.english == "Realmrazer" and player.tp > 2750 then
  1416.                 equipSet = set_combine(equipSet,{ear1="Lifestorm Earring"})  
  1417.         elseif spell.english == "Black Halo" and player.tp > 2750 then
  1418.                 equipSet = set_combine(equipSet,{ear1="Ishvara Earring",ear2="Brutal Earring"})
  1419.         elseif spell.english == "Flash Nova" and (world.day == "Lightsday" or world.weather_element == "Light") then
  1420.                 equipSet = set_combine(equipSet,{waist="Hachirin-no-Obi"})                 
  1421.                 end
  1422.                 equip(equipSet)
  1423.                 end
  1424.         elseif spell.type == "JobAbility" or spell.type == "Ward" then
  1425.         if sets.JA[spell.english] then
  1426.                 equip(sets.JA[spell.english])
  1427.                 end        
  1428.         elseif spell.english == 'Lunge' or spell.english == 'Swipe' then
  1429.                 equip(sets.JA.Lunge)
  1430.         elseif spell.type == "Rune" then
  1431.                 equip(sets.JA.Enmity)              
  1432.         elseif spell.type:endswith('Magic') or spell.type == "Ninjutsu" or spell.type == "Trust" then
  1433.         if buffactive.silence  then -- Cancel Magic or Ninjutsu If You Are Silenced --
  1434.                 cancel_spell()
  1435.                 add_to_chat(123, spell.name..' Canceled: [Silenced]')
  1436.         return
  1437.         else
  1438.         if (string.find(spell.english,'Cur') or BlueMagic_Healing:contains(spell.english) or BlueMagic_HPCure:contains(spell.english))  and spell.english ~= "Cursna" then
  1439.                 equip(sets.Precast.Cure)
  1440.         elseif string.find(spell.english,'Utsusemi') then
  1441.         if buffactive['Copy Image (3)'] or buffactive['Copy Image (4)'] then
  1442.                 cancel_spell()
  1443.                 add_to_chat(123, spell.english .. ' Canceled: [3+ Images]')
  1444.         return
  1445.         else
  1446.                 equip(sets.Precast.FastCast)
  1447.                 end
  1448.         elseif sets.Precast[spell.skill] then
  1449.                 equip(sets.Precast[spell.skill])
  1450.         else
  1451.                 equip(sets.Precast.FastCast)
  1452.                 end
  1453.                 end
  1454.         elseif string.find(spell.type,'Flourish') then
  1455.         if spell.english == "Animated Flourish" then
  1456.                 equip(sets.Enmity)
  1457.         else
  1458.                 equip(sets.Flourish)
  1459.                 end
  1460.         elseif spell.type == "Step" then
  1461.                 equip(sets.Step)
  1462.         elseif spell.type == "Waltz" then
  1463.                 equip(sets.Waltz)
  1464.         elseif spell.english == 'Spectral Jig' and buffactive.Sneak then
  1465.                 cast_delay(0.2)
  1466.                 send_command('cancel Sneak')
  1467.         end
  1468. end
  1469.            
  1470.         --------------
  1471.         -- Mid-Cast --
  1472.         --------------
  1473.            
  1474. function midcast(spell,action)
  1475.                 equipSet = {}
  1476.         if spell.type:endswith('Magic') or spell.type == 'Ninjutsu' or spell.type == 'Trust' then
  1477.                 equipSet = sets.Midcast
  1478.         if equipSet[spell.english] then
  1479.                 equipSet = equipSet[spell.english]
  1480.         elseif (string.find(spell.english,'Cur') or BlueMagic_Healing:contains(spell.english)) and spell.english ~= "Cursna" then
  1481.         if spell.target.name == player.name then
  1482.                 equipSet = equipSet.SelfCure
  1483.         else
  1484.                 equipSet = equipSet.Cure
  1485.                 end
  1486.         elseif BlueMagic_HPCure:contains(spell.english) then
  1487.                 equipSet = equipSet.BlueMagic_HPCure
  1488.         elseif string.find(spell.english,'Protect') or string.find(spell.english,'Shell') then
  1489.         if spell.target.name == player.name then
  1490.                 equipSet = set_combine(equipSet,{ring1="Sheltered Ring"})
  1491.                 end    
  1492.         elseif spell.english:startswith('Haste') or spell.english:startswith('Flurry') or spell.english:startswith('Blink') or spell.english:startswith('Regen') or spell.english:endswith('Spikes') then
  1493.                 equipSet = sets.Haste
  1494.         elseif spell.english == "Stoneskin" then
  1495.         if buffactive.Stoneskin then
  1496.                 send_command('@wait 2.8;cancel stoneskin')
  1497.                 end
  1498.                 equipSet = equipSet.Stoneskin
  1499.         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) or BlueMagic_PhysicalACC:contains(spell.english) then
  1500.         if PhysicalBlueMagic_STR:contains(spell.english) then
  1501.                 equipSet = equipSet.PhysicalBlueMagic_STR
  1502.         elseif PhysicalBlueMagic_DEX:contains(spell.english) then
  1503.                 equipSet = equipSet.PhysicalBlueMagic_DEX
  1504.         elseif PhysicalBlueMagic_VIT:contains(spell.english) then
  1505.                 equipSet = equipSet.PhysicalBlueMagic_VIT
  1506.         elseif PhysicalBlueMagic_AGI:contains(spell.english) then
  1507.                 equipSet = equipSet.PhysicalBlueMagic_AGI
  1508.         elseif PhysicalBlueMagic:contains(spell.english) then
  1509.                 equipSet = equipSet.PhysicalBlueMagic
  1510.         elseif BlueMagic_PhysicalACC:contains(spell.english) then
  1511.                 equipSet = equipSet.BlueMagic_PhysicalACC
  1512.                 end
  1513.         if buffactive['Chain Affinity'] then
  1514.                 equipSet = set_combine(equipSet,sets['Chain Affinity'])
  1515.                 end
  1516.         if buffactive.Efflux then
  1517.                 equipSet = set_combine(equipSet,sets.Efflux)
  1518.                 end
  1519.         elseif MagicalBlueMagic:contains(spell.english) or BlueMagic_Dark:contains(spell.english) or BlueMagic_Light:contains(spell.english) or BlueMagic_Earth:contains(spell.english) then
  1520.         if MagicalBlueMagic:contains(spell.english) then
  1521.                 equipSet = equipSet.MagicalBlueMagic
  1522.         elseif BlueMagic_Dark:contains(spell.english) then
  1523.                 equipSet = equipSet.BlueMagic_Dark
  1524.         elseif BlueMagic_Light:contains(spell.english) then
  1525.                 equipSet = equipSet.BlueMagic_Light
  1526.         elseif BlueMagic_Earth:contains(spell.english) then
  1527.                 equipSet = equipSet.BlueMagic_Earth
  1528.                 end
  1529.         if buffactive['Burst Affinity'] then
  1530.                 equipSet = set_combine(equipSet,sets['Burst Affinity'])
  1531.                 end
  1532.         if world.day_element == spell.element or world.weather_element == spell.element then
  1533.                 equipSet = set_combine(equipSet,{waist='Hachirin-no-Obi'})
  1534.                 end
  1535.         if buffactive.Convergence then
  1536.                 equipSet = set_combine(equipSet,sets.Convergence)
  1537.                 end
  1538.         if MB == 'ON' and (buffactive['Burst Affinity'] or buffactive['Azure Lore']) then
  1539.                 equipSet = set_combine(equipSet,sets.Midcast.BAMB)
  1540.                 end
  1541.                 equip(equipSet)
  1542.         elseif BlueMagic_Accuracy:contains(spell.english) then
  1543.                 equipSet = equipSet.BlueMagic_Accuracy
  1544.         elseif BlueMagic_Stun:contains(spell.english) then
  1545.                 equipSet = equipSet.BlueMagic_Stun
  1546.         elseif BlueMagic_PhysicalStun:contains(spell.english) then
  1547.                 equipSet = equipSet.BlueMagic_PhysicalStun
  1548.         elseif BlueMagic_Emnity:contains(spell.english) then
  1549.                 equipSet = equipSet.BlueMagic_Emnity                       
  1550.         elseif BlueMagic_Buff:contains(spell.english) then
  1551.                 equipSet = equipSet.BlueMagic_Buff
  1552.         elseif BlueMagic_Refresh:contains(spell.english) then
  1553.                 equipSet = equipSet.Refresh
  1554.         elseif BlueMagic_Diffusion:contains(spell.english) and buffactive.Diffusion then
  1555.                 equipSet = set_combine(equipSet,sets.Diffusion)
  1556.         elseif BlueMagic_Breath:contains(spell.english) then
  1557.                 equipSet = equipSet.BlueMagic_Breath
  1558.         elseif spell.english == "Stoneskin" then
  1559.         if buffactive.Stoneskin then
  1560.                 send_command('@wait 2.8;cancel stoneskin')
  1561.                 end
  1562.                 equipSet = equipSet.Stoneskin
  1563.         elseif spell.english == "Sneak" then
  1564.         if spell.target.name == player.name and buffactive['Sneak'] then
  1565.                 send_command('cancel sneak')
  1566.                 end
  1567.                 equipSet = equipSet.Haste
  1568.         elseif string.find(spell.english,'Utsusemi') then
  1569.         if spell.english == 'Utsusemi: Ichi' and (buffactive['Copy Image'] or buffactive['Copy Image (2)']) then
  1570.                 send_command('@wait 1.7;cancel Copy Image*')
  1571.                 end
  1572.                 equipSet = equipSet.Haste
  1573.         elseif spell.english == 'Monomi: Ichi' then
  1574.         if buffactive['Sneak'] then
  1575.                 send_command('@wait 1.7;cancel sneak')
  1576.                 end
  1577.                 equipSet = equipSet.Haste
  1578.         elseif spell.english:startswith('Tonko') then
  1579.                 equipSet = equipSet.Haste
  1580.         elseif spell.english:startswith('Jabaku') or spell.english:startswith('Hojo') or spell.english:startswith('Kurayami') or spell.english:startswith('Dokumori') then
  1581.                 equipSet = equipSet.Enfeebling_Ninjutsu
  1582.         elseif spell.english:startswith('Katon') or spell.english:startswith('Suiton') or spell.english:startswith('Doton') or spell.english:startswith('Hyoton') or spell.english:startswith('Huton') or spell.english:startswith('Raiton') then
  1583.                 equipSet = equipSet.Elemental_Ninjutsu
  1584.         if (world.day_element == spell.element or world.weather_element == spell.element) then
  1585.                 equipSet = set_combine(equipSet,{waist="Hachirin-no-Obi"})
  1586.         end
  1587.         if MB == 'ON' then
  1588.                 equipSet = set_combine(equipSet,sets.Midcast.MB)
  1589.                 end
  1590.         elseif equipSet[spell.skill] then
  1591.                 equipSet = equipSet[spell.skill]
  1592.                 end
  1593.         if spell.english:startswith('Cur') or spell.english:startswith('White Wind') and spell.english ~= "Cursna" then
  1594.         if (world.day_element == spell.element or world.weather_element == spell.element) then
  1595.                 equipSet = set_combine(equipSet,{waist="Hachirin-no-Obi"})
  1596.                 end
  1597.                 end
  1598.         if spell.skill == 'Elemental Magic' or spell.english:startswith('Aspir') or spell.english:startswith('Drain') then
  1599.         if (world.day_element == spell.element or world.weather_element == spell.element) then
  1600.                 equipSet = set_combine(equipSet,{waist="Hachirin-no-Obi"})
  1601.                 end
  1602.         if MB == 'ON' then
  1603.                 equipSet = set_combine(equipSet,sets.Midcast.MB)
  1604.                 end
  1605.                 end
  1606.         elseif equipSet[spell.english] then
  1607.                 equipSet = equipSet[spell.english]
  1608.         end
  1609.         equip(equipSet)
  1610. end
  1611.        
  1612.         ----------------
  1613.         -- After-Cast --
  1614.         ----------------
  1615.        
  1616. function aftercast(spell,action)
  1617.         if spell.type == "WeaponSkill" and not spell.interrupted then
  1618.                 send_command('wait 0.2;gs c TP')
  1619.         elseif spell.english == "Sleep II" or spell.english == "Repose" or spell.english == "Dream Flower" then -- Sleep II//Repose/Dream Flower Countdown --
  1620.                 send_command('wait 60;input /echo Sleep II/Dream Flower Effect: [WEARING OFF IN 30 SEC.];wait 15;input /echo Sleep II/Dream Flower Effect: [WEARING OFF IN 15 SEC.];wait 10;input /echo Sleep II/Dream Flower Effect: [WEARING OFF IN 5 SEC.]')
  1621.         elseif spell.english == "Sleep" or spell.english == "Sleepga" or spell.english == "Sheep Song" then -- Sleep/Sleepga/Sheep Song Countdown --
  1622.                 send_command('wait 30;input /echo Sleep/Sheep Song Effect: [WEARING OFF IN 30 SEC.];wait 15;input /echo Sleep/Sheep Song Effect: [WEARING OFF IN 15 SEC.];wait 10;input /echo Sleep/Sheep Song Effect: [WEARING OFF IN 5 SEC.]')
  1623.         end
  1624.         status_change(player.status)
  1625. end
  1626.  
  1627.         -------------------
  1628.         -- Status Change --
  1629.         -------------------
  1630.        
  1631. function status_change(new,old)
  1632.         if Armor == 'PDT' or buffactive.Terror or buffactive.Stun or buffactive.Petrification or buffactive.Sleep then
  1633.                 equip(sets.PDT)
  1634.         elseif Armor == 'MDT' then
  1635.                 equip(sets.MDT)
  1636.         elseif Armor == 'Kiting' then
  1637.                 equip(sets.Kiting)
  1638.         elseif new == 'Engaged' then
  1639.                 equipSet = sets.TP
  1640.         if Armor == 'Hybrid' and equipSet["Hybrid"] then
  1641.                 equipSet = equipSet["Hybrid"]
  1642.                 end
  1643.         if equipSet[WeaponArray[WeaponIndex]] then
  1644.                 equipSet = equipSet[WeaponArray[WeaponIndex]]
  1645.                 end
  1646.         if equipSet[AccArray[AccIndex]] then
  1647.                 equipSet = equipSet[AccArray[AccIndex]]
  1648.                 end
  1649.         if (buffactive.March and (buffactive.Embrava or buffactive.Haste or buffactive['Mighty Guard']) or (buffactive.Haste == 2) or (buffactive.March == 2 and not buffactive.Slow) or (buffactive['Mighty Guard']) and (buffactive.Embrava or buffactive.Haste)) and equipSet["HighHaste"] then
  1650.                 equipSet = equipSet["HighHaste"]
  1651.                 end
  1652.         if buffactive["Aftermath: Lv.3"] and player.equipment.main == 'Tizona' and equipSet["AM3"] then -- AM3 Set Equip (Mythic Only) --
  1653.                 equipSet = equipSet["AM3"]
  1654.                 end
  1655.         if Thaumas == 'ON' then
  1656.                 equipSet = set_combine(equipSet,sets.TP.Thaumas)
  1657.                 end
  1658.         if TH == 'ON' then -- Treasure Hunter TP Toggle --
  1659.             equipSet = set_combine(equipSet,sets.TP.TH)
  1660.         end
  1661.                 equip(equipSet)
  1662.         elseif new == 'Idle' then
  1663.                 equipSet = sets.Idle
  1664.         if equipSet[IdleArray[IdleIndex]] then
  1665.                 equipSet = equipSet[IdleArray[IdleIndex]]
  1666.                 end
  1667.         if Cities:contains(world.area) then
  1668.                 equipSet = equip(sets.Idle.Town)
  1669.                 end
  1670.         if buffactive['Reive Mark'] then -- Equip Ygnas's Resolve +1 During Reive --
  1671.                 equipSet = set_combine(equipSet,{neck="Ygnas's Resolve +1"})
  1672.                 end
  1673.         equip(equipSet)
  1674.         end
  1675. end
  1676.        
  1677.         -----------------
  1678.         -- Buff Change --
  1679.         -----------------
  1680.    
  1681. function buff_change(buff,gain,buff_table)
  1682.         buff = string.lower(buff)
  1683.         if buff_table['id'] == 272 and player.equipment.main == 'Tizona' then -- Tizona AM3 Timer/Countdown --
  1684.         if gain then
  1685.                 send_command('timers create "Mythic Aftermath: Lv.3" 180 down')
  1686.                 add_to_chat(158,'Tizona AM3: [ON]')
  1687.         else
  1688.                 send_command('timers delete "Mythic Aftermath: Lv.3"')
  1689.                 add_to_chat(123,'Tizona AM3: [OFF]')
  1690.                 end
  1691.         elseif buff_table['id'] == 271 and player.equipment.main == 'Tizona' then -- Tizona AM2 Timer/Countdown --
  1692.         if gain then
  1693.                 send_command('timers create "Mythic Aftermath: Lv.2" 270 down')
  1694.                 add_to_chat(158,'Tizona AM2: [ON]')
  1695.         else
  1696.                 send_command('timers delete "Mythic Aftermath: Lv.2"')
  1697.                 add_to_chat(123,'Tizona AM2: [OFF]')
  1698.                 end    
  1699.         elseif buff_table['id'] == 270 and player.equipment.main == 'Tizona' then -- Tizona AM1 Timer/Countdown --
  1700.         if gain then
  1701.                 add_to_chat(158,'Tizona AM1: [ON]')
  1702.         else
  1703.                 add_to_chat(123,'Tizona AM1: [OFF]')
  1704.                 end
  1705.         elseif buff_table['id'] == 272 and player.equipment.main == 'Almace' then -- Almace AM3 Timer/Countdown --
  1706.         if gain then
  1707.                 send_command('timers create "Empy Aftermath: Lv.3" 180 down')
  1708.                 add_to_chat(158,'Almace AM3: [ON]')
  1709.                 else
  1710.                 send_command('timers delete "Empy Aftermath: Lv.3"')
  1711.                 add_to_chat(123,'Almace AM3: [OFF]')
  1712.                 end
  1713.         elseif buff_table['id'] == 271 and player.equipment.main == 'Almace' then -- Almace AM2 Timer/Countdown --
  1714.         if gain then
  1715.                 send_command('timers create "Empy Aftermath: Lv.2" 120 down')
  1716.                 add_to_chat(158,'Almace AM2: [ON]')
  1717.         else
  1718.                 send_command('timers delete "Empy Aftermath: Lv.2"')
  1719.                 add_to_chat(123,'Almace AM2: [OFF]')
  1720.                 end    
  1721.         elseif buff_table['id'] == 270 and player.equipment.main == 'Almace' then -- Almace AM1 Timer/Countdown --
  1722.         if gain then
  1723.                 add_to_chat(158,'Almace AM1: [ON]')
  1724.         else
  1725.                 add_to_chat(123,'Almace AM1: [OFF]')
  1726.                 end
  1727.         elseif buff_table['id'] == 272 and player.equipment.main == 'Sequence' then -- Sequence AM3 Timer/Countdown --
  1728.         if gain then
  1729.                 send_command('timers create "Aeonic Aftermath: Lv.3" 180 down')
  1730.                 add_to_chat(158,'Sequence AM3: [ON]')
  1731.                 else
  1732.                 send_command('timers delete "Aeonic Aftermath: Lv.3"')
  1733.                 add_to_chat(123,'Sequence AM3: [OFF]')
  1734.                 end
  1735.         elseif buff_table['id'] == 271 and player.equipment.main == 'Sequence' then -- Sequence AM2 Timer/Countdown --
  1736.         if gain then
  1737.                 send_command('timers create "Aeonic Aftermath: Lv.2" 180 down')
  1738.                 add_to_chat(158,'Sequence AM2: [ON]')
  1739.         else
  1740.                 send_command('timers delete "Aeonic Aftermath: Lv.2"')
  1741.                 add_to_chat(123,'Sequence AM2: [OFF]')
  1742.                 end    
  1743.         elseif buff_table['id'] == 270 and player.equipment.main == 'Sequence' then -- Sequence AM1 Timer/Countdown --
  1744.         if gain then
  1745.                 add_to_chat(158,'Sequence AM1: [ON]')
  1746.         else
  1747.                 add_to_chat(123,'Sequence AM1: [OFF]')
  1748.                 end
  1749.         elseif buff_table['id'] == 163 then -- Azure Lore Timer --
  1750.         if gain then
  1751.                 send_command('timers create "Azure Lore" 40 down')
  1752.         else
  1753.                 send_command('timers delete "Azure Lore"')
  1754.                 end    
  1755.         elseif buff_table['id'] == 164 then -- Chain Affinity Timer --
  1756.         if gain then
  1757.                 send_command('timers create "Chain Affinity" 30 down')
  1758.         else
  1759.                 send_command('timers delete "Chain Affinity"')
  1760.                 end        
  1761.         elseif buff_table['id'] == 165 then -- Burst Affinity Timer --
  1762.         if gain then
  1763.                 send_command('timers create "Burst Affinity" 30 down')
  1764.         else
  1765.                 send_command('timers delete "Burst Affinity"')
  1766.                 end    
  1767.         elseif buff_table['id'] == 457 then -- Efflux Timer --
  1768.         if gain then
  1769.                 send_command('timers create "Efflux" 60 down')
  1770.         else
  1771.                 send_command('timers delete "Efflux"')
  1772.                 end    
  1773.         elseif buff_table['id'] == 356 then -- Diffusion Timer --
  1774.         if gain then
  1775.                 send_command('timers create "Diffusion" 60 down')
  1776.         else
  1777.                 send_command('timers delete "Diffusion"')
  1778.                 end    
  1779.         elseif buff_table['id'] == 485 then -- Unbridled Learning Timer --
  1780.         if gain then
  1781.                 send_command('timers create "Unbridled Learning" 60 down')
  1782.         else
  1783.                 send_command('timers delete "Unbridled Learning"')
  1784.                 end    
  1785.         elseif buff_table['id'] == 505 then -- Unbridled Wisdom Timer --
  1786.         if gain then
  1787.                 send_command('timers create "Unbridled Wisdom" 60 down')
  1788.         else
  1789.                 send_command('timers delete "Unbridled Wisdom"')
  1790.                 end                    
  1791.         elseif buff_table['id'] == 434 then -- Brew Timer --
  1792.         if gain then
  1793.                 send_command('timers create "Transcendency" 180 down')
  1794.         else
  1795.                 send_command('timers delete "Transcendency"')
  1796.                 add_to_chat(123,'Transcendency: [OFF]')
  1797.                 end            
  1798.         elseif buff_table['id'] == 1 then -- Weakness Timer --
  1799.         if gain then
  1800.                 send_command('timers create "Weakness" 300 up')
  1801.         else
  1802.                 send_command('timers delete "Weakness"')
  1803.                 add_to_chat(158,'Weakness: [OFF]')
  1804.                 end
  1805.         elseif buff_table['id'] == 15 then -- Doom Party Chat --
  1806.         if gain then
  1807.                 send_command('input /party Doom')
  1808.         else
  1809.                 send_command('input /party Doom off')
  1810.                 add_to_chat(158,'Doom: [OFF]')
  1811.                 end
  1812.         elseif buff_table['id'] == 9 then -- Curse Party Chat --
  1813.         if gain then
  1814.                 send_command('input /party Curse')
  1815.         else
  1816.                 add_to_chat(158,'Curse: [OFF]')
  1817.                 end
  1818.         elseif buff_table['id'] == 14 or buff_table['id'] == 17 then -- Charm Party Chat --
  1819.         if gain then
  1820.                 send_command('input /party Charmed')
  1821.         else
  1822.                 send_command('input /party Charm off')
  1823.                 add_to_chat(158,'Charm: [OFF]')
  1824.                 end
  1825.         elseif buff_table['id'] == 4 then -- Paralysis Party Chat --
  1826.         if gain then
  1827.                 add_to_chat(123,'Paralyzed!')
  1828.         else
  1829.                 add_to_chat(158,'Paralysis: [OFF]')
  1830.                 end            
  1831.         elseif buff_table['id'] == 91 then -- Nat. Meditation --
  1832.         if not gain then
  1833.                 add_to_chat(123,'Nat. Meditation: [OFF]')
  1834.                 end
  1835.         elseif buff_table['id'] == 93 then -- Cocoon Notification --
  1836.         if not gain then
  1837.                 add_to_chat(123,'Cocoon: [OFF]')
  1838.                 end    
  1839.         elseif buff_table['id'] == 33 then -- Haste --
  1840.         if not gain then
  1841.                 add_to_chat(123,'Haste: [OFF]')
  1842.                 end    
  1843.         elseif buff_table['id'] == 147 then -- Attack Down --
  1844.         if not gain then
  1845.                 add_to_chat(158,'Attack Down: [OFF]')
  1846.                 end
  1847.         elseif buff_table['id'] == 149 then -- Defense Down --
  1848.         if not gain then
  1849.                 add_to_chat(158,'Defense Down: [OFF]')
  1850.                 end    
  1851.         elseif buff_table['id'] == 13  then    -- Slow --
  1852.         if gain then
  1853.                 add_to_chat(123,'Slowed!')
  1854.                 else
  1855.                 add_to_chat(158,'Slow: [OFF]')
  1856.                 end
  1857.         elseif buff_table['id'] == 42 then -- Regen --
  1858.         if not gain then
  1859.                 add_to_chat(123,'Regen: [OFF]')
  1860.                 end    
  1861.         elseif buff_table['id'] == 43 then -- Refresh --
  1862.         if not gain then
  1863.                 add_to_chat(123,'Refresh: [OFF]')
  1864.                 end
  1865.         elseif buff_table['id'] == 152 then -- Magic Barrier --
  1866.         if not gain then
  1867.                 add_to_chat(123,'Magic Barrier: [OFF]')
  1868.                 end    
  1869.         elseif buff_table['id'] == 116 then -- Phalanx/Barrier Tusk --
  1870.         if not gain then
  1871.                 add_to_chat(123,'Phalanx: [OFF]')
  1872.                 end    
  1873.         elseif buff_table['id'] == 36 then -- Blink/Occultation --
  1874.         if not gain then
  1875.                 add_to_chat(123,'Blink: [OFF]')
  1876.                 end    
  1877.         elseif buff_table['id'] == 604 then -- Mighty Guard --
  1878.         if not gain then
  1879.                 add_to_chat(123,'Mighty Guard: [OFF]')
  1880.                 end    
  1881.         elseif buff_table['id'] == 251 then -- Food --
  1882.         if not gain then
  1883.                 add_to_chat(123,'Food: [OFF]')
  1884.                 end
  1885.         elseif buff_table['id'] == 28 then -- Terror --
  1886.         if not gain then
  1887.                 add_to_chat(158,'Terror: [OFF]')
  1888.                 end
  1889.         elseif buff_table['id'] == 10 then -- Stun --
  1890.         if not gain then
  1891.                 add_to_chat(158,'Stun: [OFF]')
  1892.                 end    
  1893.         elseif buff_table['id'] == 16 then -- Amnesia --
  1894.         if not gain then
  1895.                 add_to_chat(158,'Amnesia: [OFF]')
  1896.                 end                
  1897.         elseif buff_table['id'] == 2 or buff_table['id'] == 19 then -- Sleep --
  1898.         if gain then
  1899.                 send_command('input /party ZZZ')
  1900.         else
  1901.                 add_to_chat(158,'Sleep: [OFF]')
  1902.                 end        
  1903.         end
  1904.         if not midaction() then
  1905.                 status_change(player.status)
  1906.                 end
  1907. end
  1908.  
  1909.  
  1910.         -------------------------------------------------------------------------------------
  1911.         -- In Game: //gs c (command), Macro: /console gs c (command), Bind: gs c (command) --
  1912.         -------------------------------------------------------------------------------------
  1913.        
  1914. function self_command(command)
  1915.         if command == 'acc' then -- Accuracy Level Toggle --
  1916.                 AccIndex = (AccIndex % #AccArray) + 1
  1917.                 add_to_chat(155,'Accuracy Level: ' .. AccArray[AccIndex])
  1918.                 status_change(player.status)
  1919.         elseif command == 'dw' then -- DW Toggle --
  1920.                 WeaponIndex = (WeaponIndex % #WeaponArray) + 1
  1921.                 add_to_chat(155,'Dual Wield: '..WeaponArray[WeaponIndex])
  1922.                 status_change(player.status)
  1923.         elseif command == 'update' then -- Update Gear --
  1924.                 status_change(player.status)
  1925.                 add_to_chat(155,'-[Gear Update]-')
  1926.                 add_to_chat(155,'Dual Wield: '..WeaponArray[WeaponIndex])
  1927.                 add_to_chat(155,'Accuracy Level: ' .. AccArray[AccIndex])
  1928.                 add_to_chat(155,'Idle Set: ' .. IdleArray[IdleIndex])
  1929.         elseif command == 'hybrid' then -- Hybrid Toggle --
  1930.         if Armor == 'Hybrid' then
  1931.                 Armor = 'None'
  1932.                 add_to_chat(123,'Hybrid Set: [Unlocked]')
  1933.         else
  1934.                 Armor = 'Hybrid'
  1935.                 add_to_chat(158,'Hybrid Set: '..AccArray[AccIndex])
  1936.                 end
  1937.                 status_change(player.status)
  1938.         elseif command == 'th' then -- Treasure Hunter TP Toggle --
  1939.         if TH == 'ON' then
  1940.                 TH = 'OFF'
  1941.                 add_to_chat(123,'Treasure Hunter TP: [Unlocked]')
  1942.         else
  1943.                 TH = 'ON'
  1944.                 add_to_chat(158,'Treasure Hunter TP: [Locked]')
  1945.                 end
  1946.                 status_change(player.status)
  1947.         elseif command == 'pdt' then -- PDT Toggle --
  1948.         if Armor == 'PDT' then
  1949.                 Armor = 'None'
  1950.                 add_to_chat(123,'PDT Set: [Unlocked]')
  1951.         else
  1952.                 Armor = 'PDT'
  1953.                 add_to_chat(158,'PDT Set: [Locked]')
  1954.                 end
  1955.                 status_change(player.status)
  1956.         elseif command == 'mdt' then -- MDT Toggle --
  1957.         if Armor == 'MDT' then
  1958.                 Armor = 'None'
  1959.                 add_to_chat(123,'MDT Set: [Unlocked]')
  1960.         else
  1961.                 Armor = 'MDT'
  1962.                 add_to_chat(158,'MDT Set: [Locked]')
  1963.                 end
  1964.                 status_change(player.status)
  1965.         elseif command == 'kiting' then -- Kiting Toggle --
  1966.         if Armor == 'Kiting' then
  1967.                 Armor = 'None'
  1968.                 add_to_chat(123,'Kiting Set: [Unlocked]')
  1969.         else
  1970.                 Armor = 'Kiting'
  1971.                 add_to_chat(158,'Kiting Set: [Locked]')
  1972.                 end
  1973.                 status_change(player.status)
  1974.         elseif command == 'thaumas' then -- Thaumas Coat Toggle --
  1975.         if Thaumas == 'ON' then
  1976.                 Thaumas = 'OFF'
  1977.                 add_to_chat(123,'Thaumas Coat: [OFF]')
  1978.         else
  1979.                 Thaumas = 'ON'
  1980.                 add_to_chat(158,'Thaumas Coat: [ON]')
  1981.                 end
  1982.         elseif command == 'mb' then -- Magic Burst Toggle --
  1983.         if MB == 'ON' then
  1984.                 MB = 'OFF'
  1985.                 add_to_chat(123,'Magic Burst: [OFF]')
  1986.         else
  1987.                 MB = 'ON'
  1988.                 add_to_chat(158,'Maic Burst: [ON]')
  1989.                 end
  1990.                 status_change(player.status)
  1991.         elseif command == 'distance' then -- Distance Toggle --
  1992.         if player.target.distance then
  1993.                 target_distance = math.floor(player.target.distance*10)/10
  1994.                 add_to_chat(155,'Distance: '..target_distance)
  1995.         else
  1996.                 add_to_chat(123,'No Target Selected')
  1997.                 end
  1998.         elseif command == 'idle' then -- Idle Toggle --
  1999.                 IdleIndex = (IdleIndex % #IdleArray) + 1
  2000.                 add_to_chat(155,'Idle Set: ' .. IdleArray[IdleIndex])
  2001.                 status_change(player.status)
  2002.         elseif command == 'TP' then
  2003.                 add_to_chat(155,'TP Return: ['..tostring(player.tp)..']')
  2004.         elseif command:match('^SC%d$') then
  2005.                 send_command('//' .. sc_map[command])
  2006.                 end
  2007.        
  2008. end
  2009.  
  2010.         -----------
  2011.         -- Misc. --
  2012.         -----------
  2013.        
  2014. function actualCost(originalCost)
  2015.         if buffactive["Penury"] then
  2016.                 return originalCost*.5
  2017.         elseif buffactive["Light Arts"] then
  2018.                 return originalCost*.9
  2019.         else
  2020.                 return originalCost
  2021.         end
  2022. end
  2023.  
  2024. function degrade_spell(spell,degrade_array)
  2025.                 spell_index = table.find(degrade_array,spell.name)
  2026.         if spell_index>1 then
  2027.                 new_spell = degrade_array[spell_index - 1]
  2028.                 change_spell(new_spell,spell.target.raw)
  2029.                 add_to_chat(8,spell.name..' Canceled: ['..player.mp..'/'..player.max_mp..'MP::'..player.mpp..'%] Casting '..new_spell..' instead.')
  2030.         end
  2031. end
  2032.  
  2033. function find_player_in_alliance(name)
  2034.         for i,v in ipairs(alliance) do
  2035.         for k,p in ipairs(v) do
  2036.         if p.name == name then
  2037.         return p
  2038.         end
  2039.     end
  2040.     end
  2041. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement