Sithel

PLD (GearSwap) 12-26-14

Jul 29th, 2014
464
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 26.57 KB | None | 0 0
  1. --[[
  2. *** I don't take full credit for this file. I've used various other files and some of my own ***
  3. ----------------------
  4. GearSwap Version 0.898
  5. ----------------------
  6. File Created 12-26-14
  7. If you found this file, it was probably through bluegartr. If any bugs or errors are
  8. found please send me a PM there and I'll try to fix it.
  9. *For some of these features to work, the Shortcuts, Cancel addon and Timers plugin are required.
  10. ----------------------
  11. Macro lists- case sensitive (If in chat remove the /console & add //, example //gs c acc)
  12.  
  13. /console gs c encumber  (encumber toggle- Buramenk'ah,Excalibur,Burtgang,Almace - Defaults to Excalibur)
  14. /console gs c idle      (idle toggle Regen,Normal,Town)
  15. /console gs c acc       (acc toggle for TP,WS,Hybrid) (Accuracy levels are Normal, LightAcc, FullAcc)
  16. /console gs c hybrid    (hybrid toggle for Hybrid TP)
  17. /console gs c update    (updates current gear set, also set to the F10 key on keyboard)
  18. /console gs c active    (will show all active sets and toggles that are active or not)
  19. /console gs c distance  (Set target distance, default is 5 yalms)
  20. /console gs c shield    (Toggles between Aegis and Ochain - Aegis is default)
  21.  
  22. - All Toggles below are OFF by default.
  23. /console gs c pdt       (toggle/locks pdt set at all times, during Idle,TP,WS,JA,MA ect.)
  24. /console gs c mdt       (toggle/locks mdt set at all times, during Idle,TP,WS,JA,MA ect.)
  25. /console gs c th        (toggle/locks Chaac Belt at these times, during Idle,TP)
  26. /console gs c rings     (toggle/locks Warp Ring & Capacity Ring at all times, during Idle,TP,WS,JA,MA ect.)
  27. /console gs c twilight  (toggle/locks Twilight set at all times for reraise, during Idle,TP,WS,JA,MA ect.)
  28. /console gs c cpmantle  (toggle/locks Mecisto. Mantle at all times for Capacity Points farming, during Idle,TP,WS,JA,MA ect.)
  29. /console gs c movement  (toggle/locks movement gear)
  30. --]]    
  31.    
  32.     function get_sets()
  33.             ACC_Index = 1
  34.             ACC_Array = {"Normal","LightAcc","FullAcc"} -- Default ACC Set Is Normal. The First TP Set Of Your Main Weapon Is Normal.
  35.             Idle_Index = 1
  36.             Idle_Array = {"Normal","Regen","Town"} -- Default Idle Set Is Normal
  37.             Encumber_Index = 1 -- Encumber Weapons
  38.             Armor = 'None'
  39.             Twilight = 'OFF'
  40.             TH = 'OFF' -- Chaac Belt Toggle
  41.             Rings = 'OFF' -- Capacity/Warp Ring Toggle         
  42.             Mecisto = 'OFF' -- Mecisto. Mantle (Capacity Points Back) Toggle Default           
  43.             Movement = 'OFF' -- Movement Gear Toggle Default
  44.             Shield = 'Aegis' -- Shield Defaults to Aegis
  45.             target_distance = 5 -- Set Default Distance Here           
  46.            
  47.             --Default Macro Set for PLD
  48.             send_command('input /macro book 10;wait .1;input /macro set 1')
  49.  
  50.             --Binds
  51.             send_command('bind f12 gs c update')
  52.             send_command('bind f9 ws Chant du Cygne <t>')
  53.                         send_command('bind f10 gs c shield')
  54.    
  55.             --Slept
  56.             sets.Slept = {neck="Berserker's Torque"}
  57.            
  58.             --Twilight Set
  59.             sets.Twilight = {head="Twilight Helm",body="Twilight Mail"}
  60.            
  61.             --Aegis
  62.             sets.Aegis = {sub="Aegis"}
  63.            
  64.             --Ochain
  65.             sets.Ochain = {sub="Ochain"}
  66.    
  67.             --Capacity Points Mantle
  68.             sets.Mecisto = {back="Mecisto. Mantle"}        
  69.    
  70.             --Movement Set
  71.             sets.Movement = {legs="Blood Cuisses"}
  72.    
  73.             --Chaac Belt
  74.             sets.TH = {waist="Chaac Belt"}         
  75.    
  76.             --Capacity/Warp Ring
  77.             sets.Rings = {ring1="Capacity Ring",ring2="Warp Ring"}
  78.    
  79.             --encumbrance
  80.             sets.Encumber = {}
  81.             Encumber_Set_Names = {'Excalibur','Buramenk','Almace','Burtgang'}  
  82.             sets.Encumber['Buramenk'] = {main="Buramenk'ah",sub="Aegis"}
  83.             sets.Encumber['Excalibur'] = {main="Excalibur",sub="Aegis"}
  84.             sets.Encumber['Almace'] = {main="Almace",sub="Aegis"}
  85.             sets.Encumber['Burtgang'] = {main="Burtgang",sub="Aegis"}
  86.            
  87.            
  88.      
  89.             -- Idle/Town/Regen Sets --
  90.             sets.Idle = {}
  91.             sets.Idle.Normal = {
  92.                 ammo="Iron Gobbet",
  93.                 head="Ighwa Cap",
  94.                 neck="Twilight Torque",
  95.                 ear1="Creed Earring",
  96.                 ear2="Bloodgem Earring",
  97.                 body="Reverence Surcoat +1",
  98.                 hands="Xaddi Gauntlets",
  99.                 ring1={ name="Dark Ring", augments={'Phys. dmg. taken -5%','Magic dmg. taken -4%',}},
  100.                 ring2={ name="Dark Ring", augments={'Magic dmg. taken -5%','Phys. dmg. taken -4%',}},
  101.                 back="Shadow Mantle",
  102.                 waist="Nierenschutz",
  103.                 legs="Reverence Breeches",
  104.                 feet="Whirlpool Greaves"}      
  105.        
  106.             sets.Idle.Town = {
  107.                 ammo="Iron Gobbet",
  108.                 head="Otomi helm",
  109.                 neck="Twilight Torque",
  110.                 ear1="Creed Earring",
  111.                 ear2="Bloodgem Earring",
  112.                 body="Reverence Surcoat +1",
  113.                 hands="Xaddi Gauntlets",
  114.                 ring1={ name="Dark Ring", augments={'Phys. dmg. taken -5%','Magic dmg. taken -4%',}},
  115.                 ring2={ name="Dark Ring", augments={'Magic dmg. taken -5%','Phys. dmg. taken -4%',}},
  116.                 back="Shadow Mantle",
  117.                 waist="Nierenschutz",
  118.                 legs="Enif cosciales",
  119.                 feet="Cizin greaves"}              
  120.                
  121.             sets.Idle.Regen = set_combine(sets.Idle.Normal,{
  122.                 head="Twilight Helm",
  123.                 neck="Wiglen Gorget",
  124.                 body="Ares' Cuirass +1",
  125.                 ring1="Paguroidea Ring",
  126.                 ring2="Sheltered Ring",
  127.                 back="Scuta Cape",
  128.                 feet="Kaiser schuhs"})            
  129.      
  130.             -- TP Base Set -- (Any Weapon beside Relic,Emp or Mythic)
  131.             sets.TP = {
  132.                 ammo="Jukukik Feather",
  133.                 head="Ighwa Cap",
  134.                 neck="Agitator's Collar",
  135.                 ear1="Suppanomimi",
  136.                 ear2="Ethereal Earring",
  137.                 body="Rev. Surcoat +1",
  138.                 hands={ name="Xaddi Gauntlets", augments={'Accuracy+13','"Store TP"+2','"Dbl.Atk."+1',}},
  139.                 ring1="Rajas Ring",
  140.                 ring2="K'ayres Ring",
  141.                 back="Weard Mantle",
  142.                 waist="Anguinus Belt",
  143.                 legs="Cizin Breeches",
  144.                 feet="Whirlpool Greaves"}
  145.             sets.TP.LightAcc = set_combine(sets.TP,{
  146.                 ear1="Steelflash earring",
  147.                 ear2="Bladeborn earring"})
  148.             sets.TP.FullAcc = set_combine(sets.TP.LightAcc,{})
  149.            
  150.             -- Burtgang(AM3 Down) TP Sets --
  151.             sets.TP.Burtgang = {}
  152.             sets.TP.Burtgang.LightAcc = set_combine(sets.TP.Burtgang,{})
  153.             sets.TP.Burtgang.FullAcc = set_combine(sets.TP.Burtgang.LightAcc,{})           
  154.                            
  155.             -- Burtgang(AM3 Up) TP Sets --
  156.             sets.TP.Burtgang.AM3 = set_combine(sets.TP.Burtgang,{})
  157.             sets.TP.Burtgang.LightAcc.AM3 = set_combine(sets.TP.Burtgang.AM3,{})
  158.             sets.TP.Burtgang.FullAcc.AM3 = set_combine(sets.TP.Burtgang.LightAcc.AM3,{})    
  159.            
  160.             -- Excalibur TP Sets --
  161.             sets.TP.Excalibur = {}
  162.             sets.TP.Excalibur.LightAcc = set_combine(sets.TP.Excalibur,{})
  163.             sets.TP.Excalibur.FullAcc = set_combine(sets.TP.Excalibur.LightAcc,{})
  164.      
  165.             -- Excalibur(Ionis) TP Sets --
  166.             sets.TP.Excalibur.Ionis = set_combine(sets.TP.Excalibur,{})
  167.             sets.TP.Excalibur.LightAcc.Ionis = set_combine(sets.TP.Excalibur.Ionis,{})
  168.             sets.TP.Excalibur.FullAcc.Ionis = set_combine(sets.TP.Excalibur.LightAcc.Ionis,{})
  169.      
  170.             -- Almace TP Sets --
  171.             sets.TP.Almace = {}
  172.             sets.TP.Almace.LightAcc = set_combine(sets.TP.Almace,{})
  173.             sets.TP.Almace.FullAcc = set_combine(sets.TP.Almace.LightAcc,{})
  174.      
  175.             -- Almace(Ionis) TP Sets --
  176.             sets.TP.Almace.Ionis = set_combine(sets.TP.Almace,{})
  177.             sets.TP.Almace.LightAcc.Ionis = set_combine(sets.TP.Almace.Ionis,{})
  178.             sets.TP.Almace.FullAcc.Ionis = set_combine(sets.TP.Almace.LightAcc.Ionis,{})          
  179.      
  180.             -- PDT/MDT Sets --
  181.             sets.PDT = {
  182.                 head="Reverence Coronet +1",
  183.                 neck="Twilight Torque",
  184.                 ear1="Black Earring",
  185.                 ear2="Colossus's Earring",
  186.                 body="Emet Harness +1",
  187.                 hands="Reverence Gauntlets +1",
  188.                 ring1="Dark Ring",
  189.                 ring2="Dark Ring",
  190.                 back="Mollusca Mantle",
  191.                 waist="Flume Belt",
  192.                 legs="Reverence Breeches +1",
  193.                 feet="Reverence Leggings +1"}
  194.    
  195.             sets.MDT = set_combine(sets.PDT,{
  196.                 ammo="Demonry Stone",
  197.                 ear1="Creed Earring",
  198.                 ear2="Bloodgem Earring",
  199.                 body="Reverence Surcoat +1",
  200.                 ring2="Shadow Ring",
  201.                 back="Engulfer Cape",
  202.                 waist="Creed Baudrier",
  203.                 legs="Osmium Cuisses"})
  204.      
  205.             -- Hybrid Sets --
  206.             sets.TP.Hybrid = set_combine(sets.PDT,{
  207.                 ammo="Iron Gobbet",
  208.                 head="Ighwa Cap",
  209.                 neck="Agitator's Collar",
  210.                 ear1="Suppanomimi",
  211.                 ear2="Steelflash Earring",
  212.                 body="Reverence Surcoat +1",
  213.                 hands="Xaddi Gauntlets",
  214.                 ring1={ name="Dark Ring", augments={'Phys. dmg. taken -5%','Magic dmg. taken -4%',}},
  215.                 ring2={ name="Dark Ring", augments={'Magic dmg. taken -5%','Phys. dmg. taken -4%',}},
  216.                 back="Weard Mantle",
  217.                 waist="Nierenschutz",
  218.                 legs="Reverence Breeches",
  219.                 feet="Whirlpool Greaves"})
  220.             sets.TP.Hybrid.LightAcc = set_combine(sets.TP.Hybrid,{
  221.                 head="Yaoyotl Helm",
  222.                 waist="Dynamic Belt +1"})
  223.             sets.TP.Hybrid.FullAcc = set_combine(sets.TP.Hybrid.LightAcc,{
  224.                 neck="Iqabi Necklace",
  225.                 ear2="Zennaroi Earring",
  226.                 body="Mes. Haubergeon",
  227.                 hands="Buremte Gloves",            
  228.                 waist="Olseni Belt"})
  229.      
  230.             -- WS Base Set --
  231.             sets.WS = {            
  232.                 head="Otomi Helm",
  233.                 neck="Iqabi necklace",
  234.                 ear1="Steelflash earring",
  235.                 ear2="Bladeborn earring",
  236.                 body="Mes. Haubergeon",
  237.                 hands="Miki. Gauntlets",
  238.                 ring1="Rajas Ring",
  239.                 ring2="K'ayres Ring",
  240.                 back="Buquwik Cape",
  241.                 waist="Caudata Belt",
  242.                 legs="Miki. Cuisses",
  243.                 feet="Cizin Greaves"}
  244.      
  245.             -- WS Chant du Cygne Sets --
  246.             sets.WS["Chant du Cygne"] = {
  247.                 ammo="Jukukik Feather",
  248.                 head="Yaoyotl Helm",
  249.                 neck="Rancor Collar",
  250.                 ear1="Moonshade earring",
  251.                 ear2="Brutal Earring",
  252.                 body="Mes. Haubergeon",
  253.                 hands={ name="Xaddi Gauntlets", augments={'Accuracy+13','"Store TP"+2','"Dbl.Atk."+1',}},
  254.                 ring1="Rajas Ring",
  255.                 ring2="Thundersoul Ring",
  256.                 back="Atheling Mantle",
  257.                 waist="Snow belt",
  258.                 legs="Mikinaak cuisses",
  259.                 feet="Whirlpool Greaves"}              
  260.             sets.WS["Chant du Cygne"].LightAcc = set_combine(sets.WS["Chant du Cygne"],{
  261.                 head="Gavialis Helm",
  262.                 ear2="Zennaroi Earring",
  263.                 body="Mes. Haubergeon",
  264.                 back={ name="Takaha Mantle", augments={'STR+1','"Zanshin"+4','"Store TP"+3',}},
  265.                 waist="Light Belt",
  266.                 legs="Wukong's Haka. +1",
  267.                 feet="Waki. Sune-Ate +1"})             
  268.             sets.WS["Chant du Cygne"].FullAcc = set_combine(sets.WS["Chant du Cygne"].LightAcc,{})
  269.            
  270.             -- WS Knights of Round Sets --
  271.             sets.WS["Knights of Round"] = {}
  272.             sets.WS["Knights of Round"].LightAcc = set_combine(sets.WS["Knights of Round"],{})
  273.             sets.WS["Knights of Round"].FullAcc = set_combine(sets.WS["Knights of Round"].LightAcc,{})
  274.            
  275.             -- WS Requiescat Sets --
  276.             sets.WS["Requiescat"] = {}
  277.             sets.WS["Requiescat"].LightAcc = set_combine(sets.WS["Requiescat"],{})
  278.             sets.WS["Requiescat"].FullAcc = set_combine(sets.WS["Requiescat"].LightAcc,{})
  279.            
  280.             -- WS Atonement Sets --
  281.             sets.WS["Atonement"] = {}              
  282.             sets.WS["Atonement"].LightAcc = set_combine(sets.WS["Atonement"],{})               
  283.             sets.WS["Atonement"].FullAcc = set_combine(sets.WS["Atonement"].LightAcc,{})
  284.            
  285.             -- WS Vorpal Blade Sets --
  286.             sets.WS["Vorpal Blade"] = {}
  287.             sets.WS["Vorpal Blade"].LightAcc = set_combine(sets.WS["Vorpal Blade"],{})
  288.             sets.WS["Vorpal Blade"].FullAcc = set_combine(sets.WS["Vorpal Blade"].LightAcc,{})
  289.            
  290.             -- WS Aeolian Edge Sets --
  291.             sets.WS["Aeolian Edge"] = {}
  292.             sets.WS["Aeolian Edge"].LightAcc = set_combine(sets.WS["Aeolian Edge"],{})
  293.             sets.WS["Aeolian Edge"].FullAcc = set_combine(sets.WS["Aeolian Edge"].LightAcc,{})
  294.            
  295.             -- JA Sets --
  296.             sets.JA = {}
  297.             sets.JA['Invincible'] = {legs="Cab. Breeches +1"}
  298.             sets.JA['Holy Circle'] = {feet="Rev. Leggings +1"}
  299.             sets.JA['Shield Bash'] = {hands="Cab. Gauntlets +1"}
  300.             sets.JA['Sentinel'] = {feet="Cab. Leggings +1"}
  301.             sets.JA['Rampart'] = {head="Cab. Coronet +1"}
  302.             sets.JA['Fealty'] = {body="Caballarius Surcoat"}
  303.             sets.JA['Divine Emblem'] = {feet="Creed Sabatons +2"}
  304.             sets.JA['Cover'] = {head="Rev. Coronet +1"}
  305.            
  306.             -- Add MND for Chivalry
  307.             sets.JA['Chivalry'] = {
  308.                 head="Reverence Coronet +1",
  309.                 body="Reverence Surcoat +1",
  310.                 hands="Reverence Gauntlets +1",
  311.                 ring1="Leviathan Ring",
  312.                 ring2="Aquasoul Ring",
  313.                 back="Weard Mantle",
  314.                 legs="Reverence Breeches +1",
  315.                 feet="Whirlpool Greaves"}
  316.                
  317.             -- ENM for Provoke
  318.             sets.JA['Provoke'] = {             
  319.                 head="Reverence Coronet +1",
  320.                 neck="Invidia Torque",
  321.                 body="Reverence Surcoat +1",
  322.                 hands="Rev. Gauntlets",
  323.                 ring1="Vexer Ring",
  324.                 back="Fierabras's Mantle",
  325.                 waist="Goading Belt",
  326.                 legs="Reverence Breeches +1",
  327.                 feet="Caballarius Leggings"}
  328.      
  329.             -- Waltz Set (CHR and VIT)
  330.             sets.Waltz = {
  331.                 ammo="Sonia's Plectrum",
  332.                 head="Reverence Coronet +1",
  333.                 body="Gorney Haubert +1",
  334.                 hands="Reverence Gauntlets +1",
  335.                 ring2="Asklepian Ring",
  336.                 back="Iximulew Cape",
  337.                 waist="Caudata Belt",
  338.                 legs="Reverence Breeches +1",
  339.                 feet="Whirlpool Greaves"}
  340.            
  341.             -- Magic Sets Below
  342.             sets.Precast = {}
  343.             sets.Precast.FastCast = {
  344.                 ammo="Incantor Stone",
  345.                 head="Cizin Helm",
  346.                 ear2="Loquacious Earring",
  347.                 ring2="Prolix Ring",
  348.                 legs="Enif Cosciales"}
  349.             sets.Precast.FastCast['Enhancing Magic'] = set_combine(sets.Precast.FastCast, {waist="Siegel Sash"})
  350.             --sets.Precast.FastCast['Enlight'] = {hands="Rev. Gauntlets"}  <-- Was a test for specific spells (Example)    
  351.                    
  352.             sets.Midcast = {}
  353.             -- Magic Haste Set --
  354.             sets.Midcast.Haste = {
  355.                 head="Reverence Coronet +1",               
  356.                 body="Reverence Surcoat +1",
  357.                 hands="Reverence Gauntlets +1",
  358.                 waist="Zoran's Belt",
  359.                 legs="Enif Cosciales",
  360.                 feet="Reverence Leggings +1"}
  361.                
  362.             -- Midcast Cures
  363.             sets.Midcast['Healing Magic'] = {
  364.                 ammo="Iron Gobbet",
  365.                 head="Adaman Barbuta",
  366.                 neck="Invidia Torque",
  367.                 ear1="Hospitaler Earring",
  368.                 ear2="Bloodgem Earring",
  369.                 body="Reverence Surcoat +1",
  370.                 hands="Buremte Gloves",
  371.                 ring1="Kunaji Ring",
  372.                 ring2="Asklepian Ring",
  373.                 back="Fierabras's Mantle",
  374.                 waist="Chuq'aba Belt",
  375.                 legs="Reverence Breeches +1",
  376.                 feet="Caballarius Leggings"}
  377.                
  378.             -- ENM
  379.             sets.Midcast['Flash'] = {              
  380.                 head="Reverence Coronet +1",
  381.                 neck="Invidia Torque",
  382.                 body="Reverence Surcoat +1",
  383.                 hands="Rev. Gauntlets",
  384.                 ring1="Vexer Ring",
  385.                 back="Fierabras's Mantle",
  386.                 waist="Goading Belt",
  387.                 legs="Reverence Breeches +1",
  388.                 feet="Caballarius Leggings"}                   
  389.     end
  390.      
  391.     function pretarget(spell,action)
  392.             if (spell.type:endswith('Magic') or spell.type == "Ninjutsu") and buffactive.silence then -- Auto Use Echo Drops If You Are Silenced --
  393.                 cancel_spell()
  394.                 send_command('input /item "Echo Drops" <me>')          
  395.             elseif spell.type == "WeaponSkill" and player.tp > 1000 and buffactive['amnesia'] or buffactive['stun'] or buffactive['sleep'] then
  396.                 -- Won't try to Weaponskill and cause blinking when those status effects are on.
  397.                 cancel_spell()
  398.                 add_to_chat(39,spell.name .. ' Canceled: ['..player.name..' Stunned ,Slept or Amnesia]')
  399.             return         
  400.             end
  401.     end    
  402.      
  403.     function precast(spell,action)             
  404.             if spell.type == "WeaponSkill" then                    
  405.                     equipSet = sets.WS
  406.                     if equipSet[spell.english] then
  407.                         equipSet = equipSet[spell.english]
  408.                     end
  409.                     if equipSet[ACC_Array[ACC_Index]] then
  410.                         equipSet = equipSet[ACC_Array[ACC_Index]]
  411.                     end
  412.                     if spell.name == "Chant du Cygne" then         
  413.                         if player.tp > 2999 then
  414.                             equipSet = set_combine(equipSet,{ear1="Flame Pearl"})              
  415.                         elseif world.day == 'Lightsday' or world.day == 'Iceday' or world.day == 'Watersday' then
  416.                             equipSet = set_combine(equipSet,{head="Gavialis Helm"})                                                        
  417.                         end
  418.                     end
  419.                     if spell.name == "Knights of Round" then           
  420.                         if player.tp > 2999 then
  421.                             equipSet = set_combine(equipSet,{ear1="Flame Pearl"})              
  422.                         elseif world.day == 'Firesday' or world.day == 'Lightsday' then
  423.                             equipSet = set_combine(equipSet,{head="Gavialis Helm"})                                                        
  424.                         end        
  425.                     end
  426.                         equip(equipSet)
  427.             end
  428.             if spell.type == "JobAbility" then
  429.                     if sets.JA[spell.english] then
  430.                             equip(sets.JA[spell.english])
  431.                     end
  432.             end            
  433.             if spell.action_type == 'Magic' then               
  434.                 if spell.skill == 'Enhancing Magic' then
  435.                         equip(sets.Precast.FastCast['Enhancing Magic'])
  436.                     else
  437.                         equip(sets.Precast.FastCast[spell.english])
  438.                     end
  439.                         equip(sets.Precast.FastCast)
  440.             end
  441.             if spell.type == "Waltz" then
  442.                 equip(sets.Waltz)
  443.             elseif spell.english == 'Spectral Jig' and buffactive.Sneak then
  444.                 cast_delay(0.2)
  445.                 send_command('cancel Sneak')
  446.             end        
  447.             if Twilight == 'ON' then
  448.                 equip(sets.Twilight)
  449.             end
  450.             if Armor == 'PDT' then
  451.                 equip(sets.PDT)
  452.             end
  453.             if Armor == 'MDT' then
  454.                 equip(sets.MDT)
  455.             end
  456.             if Mecisto == 'ON' then
  457.                 equip(sets.Mecisto)                
  458.             end        
  459.             if Movement == 'ON' then
  460.                 equip(sets.Movement)
  461.                 disable('legs')
  462.             else
  463.                 enable('legs')
  464.             end
  465.             if Rings == 'ON' then
  466.                 equip(sets.Rings)              
  467.             end
  468.             if buffactive["weakness"] then
  469.                 equip(sets.Twilight)
  470.                 disable('head','body')
  471.                 else
  472.                 enable('head','body')
  473.             end        
  474.     end
  475.    
  476.     function midcast(spell,action)
  477.         if spell.action_type == 'Magic' then               
  478.             if spell.skill == 'Healing Magic' then
  479.                 equip(sets.Midcast['Healing Magic'])
  480.             else
  481.                 equip(sets.Midcast.Haste)
  482.             end            
  483.                 equip(sets.Midcast[spell.english])
  484.         end
  485.         if spell.english == 'Protect V' or spell.english == 'Shell IV' then
  486.             equip({ring2="Sheltered Ring"})    
  487.         end
  488.     end
  489.      
  490.     function aftercast(spell,action)       
  491.         status_change(player.status)
  492.     end
  493.      
  494.     function status_change(new,old)          
  495.             if Armor == 'PDT' then
  496.                     equip(sets.PDT)
  497.             elseif Armor == 'MDT' then
  498.                     equip(sets.MDT)
  499.             elseif new == 'Engaged' then
  500.                     equipSet = sets.TP                 
  501.                     if Armor == 'Hybrid' and equipSet["Hybrid"] then
  502.                             equipSet = equipSet["Hybrid"]
  503.                     end
  504.                     if equipSet[player.equipment.main] then
  505.                             equipSet = equipSet[player.equipment.main]
  506.                     end
  507.                     if equipSet[ACC_Array[ACC_Index]] then
  508.                             equipSet = equipSet[ACC_Array[ACC_Index]]
  509.                     end
  510.                     if buffactive["Aftermath: Lv.3"] and equipSet["AM3"] then
  511.                             equipSet = equipSet["AM3"]
  512.                     end
  513.                     if buffactive.Aftermath and equipSet["AM"] then
  514.                             equipSet = equipSet["AM"]
  515.                     end    
  516.                     if buffactive.Ionis and equipSet["Ionis"] then
  517.                             equipSet = equipSet["Ionis"]
  518.                     end                                      
  519.                     equip(equipSet)
  520.             else
  521.                     equip(sets.Idle[Idle_Array[Idle_Index]])
  522.             end            
  523.             if Twilight == 'ON' then
  524.                 equip(sets.Twilight)
  525.             end        
  526.             if Mecisto == 'ON' then
  527.                 equip(sets.Mecisto)                
  528.             end        
  529.             if Movement == 'ON' then
  530.                 equip(sets.Movement)
  531.                 disable('legs')
  532.                 else
  533.                 enable('legs')
  534.             end
  535.             if Shield == 'Ochain' then
  536.                 equip(sets.Ochain)             
  537.                 else
  538.                 equip(sets.Aegis)
  539.             end
  540.             if TH == 'ON' then
  541.                 equip(sets.TH)                 
  542.             end
  543.             if Rings == 'ON' then
  544.                 equip(sets.Rings)                  
  545.             end            
  546.             if buffactive["weakness"] then
  547.                 equip(sets.Twilight)
  548.                 disable('head','body')             
  549.                 else
  550.                 enable('head','body')
  551.             end
  552.     end
  553.    
  554.     function buff_change(buff,gain)              
  555.             if buff == "encumbrance" then
  556.                 if not gain then
  557.                     add_to_chat(200,"No longer Encumbered")    
  558.                     equip(sets.Encumber[Encumber_Set_Names[Encumber_Index]])
  559.                 end
  560.             end
  561.             if buff == "sleep" and player.hp > 200 and player.status == "Engaged" then
  562.                 if gain then           
  563.                     equip(sets.Slept)
  564.                     add_to_chat(39,"Slept: [Equipping Berserker's Torque]")        
  565.                 else
  566.                     status_change(player.status)
  567.                     add_to_chat(200,"Awake: [Removing Berserker's Torque]")
  568.                 end    
  569.             end        
  570.             if buff == "weakness" then
  571.                 if gain then
  572.                     send_command('timers create "Weakness" 300 up abilities/00255.png')
  573.                 else
  574.                     send_command('timers delete "Weakness"')
  575.                     add_to_chat(200,'Unweak!')
  576.                 end
  577.             end
  578.             if buff == "Aftermath: Lv.3" then
  579.                 if gain then
  580.                     send_command('timers create "Aftermath: Lv.3" 180 down')
  581.                 else
  582.                     send_command('timers delete "Aftermath: Lv.3"')
  583.                     add_to_chat(200,'Aftermath: lv.3: [OFF]')
  584.                 end
  585.             end
  586.     end
  587.      
  588.     --Toggle Self Commands with //gs c [command name]
  589.     --Example type in chat //gs c acc (case sensitive)
  590.     --Example Make a macro /console gs c acc (case sensitive)
  591.     function self_command(command)
  592.             if command == 'acc' then -- Acc Toggle for TP/WS/Hybrid --
  593.                     ACC_Index = (ACC_Index % #ACC_Array) + 1
  594.                     add_to_chat(207,'Accuracy Level TP/WS/Hybrid: '..ACC_Array[ACC_Index])
  595.                     status_change(player.status)
  596.             elseif command == 'idle' then -- Idle Toggle --
  597.                     Idle_Index = (Idle_Index % #Idle_Array) + 1
  598.                     add_to_chat(207,'Idle Set: '..Idle_Array[Idle_Index])
  599.                     status_change(player.status)            
  600.             elseif command == 'hybrid' then -- Hybrid Toggle --
  601.                     if Armor == 'Hybrid' then
  602.                             Armor = 'None'
  603.                             add_to_chat(57,'Hybrid Set: [Unlocked]')
  604.                     else
  605.                             Armor = 'Hybrid'
  606.                             add_to_chat(158,'Hybrid Set: '..ACC_Array[ACC_Index])
  607.                     end
  608.                     status_change(player.status)
  609.             elseif command == 'pdt' then -- PDT Toggle --
  610.                     if Armor == 'PDT' then
  611.                             Armor = 'None'
  612.                             add_to_chat(57,'PDT Set: [Unlocked]')
  613.                     else
  614.                             Armor = 'PDT'
  615.                             add_to_chat(158,'PDT Set: [Locked]')
  616.                     end
  617.                     status_change(player.status)
  618.             elseif command == 'mdt' then -- MDT Toggle --
  619.                     if Armor == 'MDT' then
  620.                             Armor = 'None'
  621.                             add_to_chat(57,'MDT Set: [Unlocked]')
  622.                     else
  623.                             Armor = 'MDT'
  624.                             add_to_chat(158,'MDT Set: [Locked]')
  625.                     end
  626.                     status_change(player.status)            
  627.             elseif command == 'twilight' then -- Twilight Toggle --
  628.                     if Twilight == 'ON' then
  629.                             Twilight = 'OFF'
  630.                             add_to_chat(57,'Twilight Set: [Unlocked]')
  631.                     else
  632.                             Twilight = 'ON'
  633.                             add_to_chat(158,'Twilight Set: [locked]')
  634.                     end
  635.                     status_change(player.status)
  636.             elseif command == 'distance' then -- Distance Toggle --
  637.                     if player.target.distance then
  638.                             target_distance = math.floor(player.target.distance*10)/10
  639.                             add_to_chat(57,'Distance: '..target_distance)
  640.                     else
  641.                             add_to_chat(158,'No Target Selected')
  642.                     end
  643.             elseif command == 'th' then -- TH Toggle --
  644.                     if TH == 'ON' then
  645.                         TH = 'OFF'                         
  646.                         add_to_chat(57,'Chaac Belt: [OFF]')
  647.                     else
  648.                         TH = 'ON'                          
  649.                         add_to_chat(158,'Chaac Belt: [ON]')
  650.                     end
  651.                     status_change(player.status)
  652.             elseif command == 'rings' then -- Capacity/Warp Ring Toggle --
  653.                     if Rings == 'ON' then
  654.                         Rings = 'OFF'                          
  655.                         add_to_chat(57,'Capacity/Warp Ring: [OFF]')
  656.                     else
  657.                         Rings = 'ON'                           
  658.                         add_to_chat(158,'Capacity/Warp Ring: [ON]')
  659.                     end
  660.                     status_change(player.status)       
  661.             elseif command == 'cpmantle' then -- Mecisto. Mantle Toggle --
  662.                     if Mecisto == 'ON' then
  663.                         Mecisto = 'OFF'                        
  664.                         add_to_chat(57,'Mecisto. Mantle: [Unlocked]')
  665.                     else
  666.                         Mecisto = 'ON'                         
  667.                         add_to_chat(158,'Mecisto. Mantle: [Locked]')
  668.                     end
  669.                     status_change(player.status)           
  670.             elseif command == 'movement' then -- Movement Toggle --
  671.                     if Movement == 'ON' then
  672.                         Movement = 'OFF'                           
  673.                         add_to_chat(57,'Movement Set: [OFF]')
  674.                     else
  675.                         Movement = 'ON'                        
  676.                         add_to_chat(158,'Movement Set: [ON]')
  677.                     end
  678.                     status_change(player.status)
  679.             elseif command == 'shield' then -- Shield Toggle --
  680.                     if Shield == 'Ochain' then
  681.                         Shield = 'Aegis'
  682.                         equip(sets.Aegis)
  683.                         add_to_chat(57,'Aegis: [ON]')
  684.                     else
  685.                         Shield = 'Ochain'
  686.                         equip(sets.Ochain)
  687.                         add_to_chat(158,'Ochain: [ON]')
  688.                     end                        
  689.             elseif command == 'encumber' then
  690.                     Encumber_Index = Encumber_Index +1
  691.                     if Encumber_Index > #Encumber_Set_Names then Encumber_Index = 1 end
  692.                         add_to_chat(207,'Encumber [Weapon] '..Encumber_Set_Names[Encumber_Index]..'')      
  693.                         equip(sets.Encumber[Encumber_Set_Names[Encumber_Index]])            
  694.             elseif command == 'update' then -- Auto Update Gear Toggle --
  695.                     status_change(player.status)
  696.                     add_to_chat(207,'Auto Update Gear')
  697.             elseif command == 'active' then -- Shows what sets and toggles are active --
  698.                     add_to_chat(8,'Current Active sets below...')
  699.                     add_to_chat(207,'Idle Set Active: '..Idle_Array[Idle_Index]..'')       
  700.                     add_to_chat(207,'Accuracy Level TP/WS/Hybrid Active: '..ACC_Array[ACC_Index]..'')                  
  701.                     add_to_chat(207,'Target distance set to: '..target_distance..'')
  702.                     add_to_chat(207,'TH [Chaac Belt]: '..TH..'')
  703.                     add_to_chat(207,'CP [Mecisto. Mantle]: '..Mecisto..'')
  704.                     add_to_chat(207,'Capacity/Warp Rings: '..Rings..'')                
  705.                     add_to_chat(207,'Movement Set: '..Movement..'')                
  706.                     add_to_chat(207,'Twilight Set: '..Twilight..'')                
  707.                     add_to_chat(207,'PDT/MDT Set: '..Armor..'')
  708.                     add_to_chat(207,'Shield: '..Shield..'')
  709.             end
  710.     end
  711.     function file_unload()
  712.             send_command('unbind f9')
  713.             send_command('unbind f10')
  714.             send_command('unbind f11')
  715.             send_command('unbind f12')
  716.     end
Advertisement
Add Comment
Please, Sign In to add comment