Guest User

the fix

a guest
May 20th, 2014
227
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 51.51 KB | None | 0 0
  1. function get_sets()
  2.     AccIndex = 1
  3.     AccArray = {"LowACC","MidACC","HighACC"} -- 3 Levels Of Accuracy Sets For Shooting/TP/WS. First Set Is LowACC. Add More ACC Sets If Needed Then Create Your New ACC Below. Most of These Sets Are Empty So You Need To Edit Them On Your Own. Remember To Check What The Combined Set Is For Each Sets. --
  4.     WeaponIndex = 1
  5.     WeaponArray = {"Annihilator","Yoichinoyumi"} -- Default Ranged Weapon Is Annihilator. Can Delete Any Weapons/Sets That You Don't Need Or Replace/Add The New Weapons That You Want To Use. --
  6.     IdleIndex = 1
  7.     IdleArray = {"Movement","Regen"} -- Default Idle Set Is Movement --
  8.     Armor = 'None'
  9.     warning = false
  10.     AutoMode = 'OFF' -- Set Default Auto RA/WS ON or OFF Here --
  11.     Attack = 'OFF' -- Set Default Attack Set ON or OFF Here --
  12.     Enmity = 'OFF' -- Set Default Enmity Set ON or OFF Here --
  13.     ammo_warning_limit = 10 -- Set Ammo Limit Check Here --
  14.     Samurai_Roll = 'ON' -- Set Default SAM Roll ON or OFF Here --
  15.     target_distance = 5 -- Set Default Distance Here --
  16.     select_default_macro_book() -- Change Default Macro Book At The End --
  17.  
  18.     ranged_ws = S{
  19.             "Hot Shot","Split Shot","Sniper Shot","Slug Shot","Blast Shot","Heavy Shot","Detonator",
  20.             "Numbing Shot","Last Stand","Coronach","Trueflight","Wildfire","Flaming Arrow",
  21.             "Piercing Arrow","Dulling Arrow","Sidewinder","Blast Arrow","Arching Arrow",
  22.             "Empyreal Arrow","Refulgent Arrow","Apex Arrow","Namas Arrow","Jishnu's Radiance"}
  23.  
  24.     sc_map = {SC1="LastStand", SC2="Coronach", SC3="Ranged"} -- 3 Additional Binds. Can Change Whatever JA/WS/Spells You Like Here. Remember Not To Use Spaces. --
  25.  
  26.     sets.Idle = {}
  27.     -- Idle/Town Sets --
  28.     sets.Idle.Regen = {
  29.             head="Oce. Headpiece +1",
  30.             neck="Wiglen Gorget",
  31.             ear1="Colossus's Earring",
  32.             ear2="Tripudio Earring",
  33.             body="Kheper Jacket",
  34.             hands="Iuitl Wristbands",
  35.             ring1="Paguroidea Ring",
  36.             ring2="Sheltered Ring",
  37.             back="Shadow Mantle",
  38.             waist="Flume Belt",
  39.             legs="Iuitl tights",
  40.             feet="Skd. Jambeaux +1"}
  41.     sets.Idle.Regen.Annihilator = set_combine(sets.Idle.Regen,{
  42.             main="Hurlbat",
  43.             sub="Moogle Guard +1",
  44.             range="Annihilator",
  45.             ammo="Achiyal. Bullet"})
  46.     sets.Idle.Regen.Yoichinoyumi = set_combine(sets.Idle.Regen,{
  47.             main="Hurlbat",
  48.             sub="Moogle Guard +1",
  49.             range="Yoichinoyumi",
  50.             ammo="Achiyal. Arrow"})
  51.     sets.Idle.Regen.Annihilator.NIN = set_combine(sets.Idle.Regen,{
  52.             main="Hurlbat",
  53.             sub="Antican Axe",
  54.             range="Annihilator",
  55.             ammo="Achiyal. Bullet"})
  56.     sets.Idle.Regen.Yoichinoyumi.NIN = set_combine(sets.Idle.Regen,{
  57.             main="Hurlbat",
  58.             sub="Courser's Pugio",
  59.             range="Yoichinoyumi",
  60.             ammo="Achiyal. Arrow"})
  61.  
  62.     sets.Idle.Movement = set_combine(sets.Idle.Regen,{
  63.             head="Oce. Headpiece +1",
  64.             neck="Wiglen Gorget",
  65.             ear1="Colossus's Earring",
  66.             ear2="Tripudio Earring",
  67.             body="Kheper Jacket",
  68.             hands="Iuitl Wristbands",
  69.             ring1="Paguroidea Ring",
  70.             ring2="Sheltered Ring",
  71.             back="Shadow Mantle",
  72.             waist="Flume Belt",
  73.             legs="Iuitl tights",
  74.             feet="Skd. Jambeaux +1"})
  75.     sets.Idle.Movement.Annihilator = set_combine(sets.Idle.Movement,{
  76.             range="Annihilator",
  77.             ammo="Achiyal. Bullet"})
  78.     sets.Idle.Movement.Yoichinoyumi = set_combine(sets.Idle.Movement,{
  79.             range="Yoichinoyumi",
  80.             ammo="Achiyal. Arrow"})
  81.     sets.Idle.Movement.Annihilator.NIN = set_combine(sets.Idle.Movement,{
  82.             main="Hurlbat",
  83.             sub="Antican Axe",
  84.             range="Annihilator",
  85.             ammo="Achiyal. Bullet"})
  86.     sets.Idle.Movement.Yoichinoyumi.NIN = set_combine(sets.Idle.Movement,{
  87.             main="Hurlbat",
  88.             sub="Antican Axe",
  89.             range="Yoichinoyumi",
  90.             ammo="Achiyal. Arrow"})
  91.  
  92.     -- Preshot --
  93.     sets.Preshot = {
  94.             head="Orion Beret +1",
  95.             body="Sylvan Caban +2",
  96.             hands="Iuitl Wristbands",
  97.             waist="Impulse Belt",
  98.             legs="Nahtirah Trousers",
  99.             feet="Wurrukatte Boots"}
  100.  
  101.     -- Barrage Base Set. This Set Takes Priority Over Other Pieces. --
  102.     sets.Barrage = {
  103.             main="Hurlbat",
  104.             sub="Moogle Guard +1",
  105.             range="Annihilator",
  106.             ammo="Achiyal. Bullet",
  107.             head="Umbani Cap",
  108.             neck="Ocachi Gorget",
  109.             ear1="Volley Earring",
  110.             ear2="Clearview Earring",
  111.             body="Kyujutsugi",
  112.             ring1="Paqichikaji Ring",
  113.             ring2="Hajduk Ring",
  114.             back="Lutian Cape",
  115.             waist="Elanid Belt",
  116.             feet="Orion Socks +1",
  117.             hands="Orion Bracers +1",
  118.             legs="Desultor Tassets"}
  119.  
  120.     -- Shooting Base Set --
  121.     sets.Midshot = {}
  122.  
  123.     -- Annihilator(Decoy Down) Sets --
  124.     sets.Midshot.Annihilator = {
  125.             main="Hurlbat",
  126.             sub="Moogle Guard +1",
  127.             range="Annihilator",
  128.             ammo="Achiyal. Bullet",
  129.             head="Arcadian Beret +1",
  130.             neck="Ocachi Gorget",
  131.             ear1="Volley Earring",
  132.             ear2="Tripudio Earring",
  133.             body="Kyujutsugi",
  134.             hands="Arc. Bracers +1",
  135.             ring1="Paqichikaji Ring",
  136.             ring2="Rajas Ring",
  137.             back="Lutian Cape",
  138.             waist="Elanid Belt",
  139.             legs="Nahtirah Trousers",
  140.             feet="Orion Socks +1"}
  141.     sets.Midshot.Annihilator.MidACC = set_combine(sets.Midshot.Annihilator,{
  142.             ear2="Clearview Earring",
  143.             legs="Orion Braccae +1",
  144.             feet="Orion Socks +1"})
  145.     sets.Midshot.Annihilator.HighACC = set_combine(sets.Midshot.Annihilator.MidACC,{
  146.             neck="Ej necklace +1",
  147.             hands="Sigyn's Bazubands",
  148.             ring2="Hajduk Ring"})
  149.  
  150.     -- Annihilator(Decoy Up) Sets --
  151.     sets.Midshot.Annihilator.Decoy = set_combine(sets.Midshot.Annihilator,{})
  152.     sets.Midshot.Annihilator.MidACC.Decoy = set_combine(sets.Midshot.Annihilator.MidACC,{})
  153.     sets.Midshot.Annihilator.HighACC.Decoy = set_combine(sets.Midshot.Annihilator.HighACC,{})
  154.  
  155.     -- Annihilator(Enmity) Sets --
  156.     sets.Midshot.Annihilator.Enmity = set_combine(sets.Midshot.Annihilator,{})
  157.     sets.Midshot.Annihilator.MidACC.Enmity = set_combine(sets.Midshot.Annihilator.MidACC,{})
  158.     sets.Midshot.Annihilator.HighACC.Enmity = set_combine(sets.Midshot.Annihilator.HighACC,{})
  159.  
  160.     -- Annihilator(AM) Sets --
  161.     sets.Midshot.Annihilator.AM = set_combine(sets.Midshot.Annihilator,{})
  162.     sets.Midshot.Annihilator.MidACC.AM = set_combine(sets.Midshot.Annihilator.MidACC,{})
  163.     sets.Midshot.Annihilator.HighACC.AM = set_combine(sets.Midshot.Annihilator.HighACC,{})
  164.  
  165.     -- Annihilator(Decoy Down: Ionis) Sets --
  166.     sets.Midshot.Annihilator.Ionis = set_combine(sets.Midshot.Annihilator,{})
  167.     sets.Midshot.Annihilator.MidACC.Ionis = set_combine(sets.Midshot.Annihilator.MidACC,{})
  168.     sets.Midshot.Annihilator.HighACC.Ionis = set_combine(sets.Midshot.Annihilator.HighACC,{})
  169.  
  170.     -- Annihilator(Decoy Up: Ionis) Sets --
  171.     sets.Midshot.Annihilator.Decoy.Ionis = set_combine(sets.Midshot.Annihilator,{})
  172.     sets.Midshot.Annihilator.MidACC.Decoy.Ionis = set_combine(sets.Midshot.Annihilator.MidACC,{})
  173.     sets.Midshot.Annihilator.HighACC.Decoy.Ionis = set_combine(sets.Midshot.Annihilator.HighACC,{})
  174.  
  175.     -- Annihilator(Decoy Down: SAM Roll) Sets --
  176.     sets.Midshot.Annihilator.STP = set_combine(sets.Midshot.Annihilator,{})
  177.     sets.Midshot.Annihilator.MidACC.STP = set_combine(sets.Midshot.Annihilator.MidACC,{})
  178.     sets.Midshot.Annihilator.HighACC.STP = set_combine(sets.Midshot.Annihilator.HighACC,{})
  179.  
  180.     -- Annihilator(Decoy Up: SAM Roll) Sets --
  181.     sets.Midshot.Annihilator.Decoy.STP = set_combine(sets.Midshot.Annihilator,{})
  182.     sets.Midshot.Annihilator.MidACC.Decoy.STP = set_combine(sets.Midshot.Annihilator.MidACC,{})
  183.     sets.Midshot.Annihilator.HighACC.Decoy.STP = set_combine(sets.Midshot.Annihilator.HighACC,{})
  184.  
  185.     -- Annihilator(Decoy Down: Ionis + SAM Roll) Sets --
  186.     sets.Midshot.Annihilator.Ionis.STP = set_combine(sets.Midshot.Annihilator,{})
  187.     sets.Midshot.Annihilator.MidACC.Ionis.STP = set_combine(sets.Midshot.Annihilator.MidACC,{})
  188.     sets.Midshot.Annihilator.HighACC.Ionis.STP = set_combine(sets.Midshot.Annihilator.HighACC,{})
  189.  
  190.     -- Annihilator(Decoy Up: Ionis + SAM Roll) Sets --
  191.     sets.Midshot.Annihilator.Decoy.Ionis.STP = set_combine(sets.Midshot.Annihilator,{})
  192.     sets.Midshot.Annihilator.MidACC.Decoy.Ionis.STP = set_combine(sets.Midshot.Annihilator.MidACC,{})
  193.     sets.Midshot.Annihilator.HighACC.Decoy.Ionis.STP = set_combine(sets.Midshot.Annihilator.HighACC,{})
  194.  
  195.     -- Annihilator Barrage Sets --
  196.     sets.Midshot.Annihilator.Barrage = set_combine(sets.Midshot.Annihilator,{
  197.             main="Hurlbat",
  198.             sub="Moogle Guard +1",
  199.             range="Annihilator",
  200.             ammo="Achiyal. Bullet",
  201.             head="Umbani Cap",
  202.             neck="Ocachi Gorget",
  203.             ear1="Volley Earring",
  204.             ear2="Clearview Earring",
  205.             body="Kyujutsugi",
  206.             ring1="Paqichikaji Ring",
  207.             ring2="Hajduk Ring",
  208.             back="Lutian Cape",
  209.             waist="Elanid Belt",
  210.             feet="Orion Socks +1",
  211.             hands="Orion Bracers +1",
  212.             legs="Desultor Tassets"},Barrage)
  213.     sets.Midshot.Annihilator.MidACC.Barrage = set_combine(sets.Midshot.Annihilator.MidACC,{},Barrage)
  214.     sets.Midshot.Annihilator.HighACC.Barrage = set_combine(sets.Midshot.Annihilator.HighACC,{},Barrage)
  215.  
  216.     -- Yoichinoyumi(Decoy Down) Sets --
  217.     sets.Midshot.Yoichinoyumi = {
  218.             main="Hurlbat",
  219.             sub="Moogle Guard +1",
  220.             range="Yoichinoyumi",
  221.             ammo="Achiyal. Arrow",
  222.             head="Arcadian Beret +1",
  223.             neck="Ocachi Gorget",
  224.             ear1="Vulcan's Pearl",
  225.             ear2="Volley Earring",
  226.             body="Kyujutsugi",
  227.             hands="Seiryu's Kote",
  228.             ring1="Hajduk Ring +1",
  229.             ring2="Rajas Ring",
  230.             back="Sylvan Chlamys",
  231.             waist="Elanid Belt",
  232.             legs="Nahtirah Trousers",
  233.             feet="Arcadian Socks +1"}
  234.     sets.Midshot.Yoichinoyumi.MidACC = set_combine(sets.Midshot.Yoichinoyumi,{
  235.             ear1="Clearview Earring",
  236.             back="Lutian Cape",
  237.             legs="Orion Braccae +1",
  238.             feet="Orion Socks +1"})
  239.     sets.Midshot.Yoichinoyumi.HighACC = set_combine(sets.Midshot.Yoichinoyumi.MidACC,{
  240.             neck="Ej necklace +1",
  241.             hands="Buremte Gloves",
  242.             ring2="Hajduk Ring +1"})
  243.  
  244.     -- Yoichinoyumi(Decoy Up) Sets --
  245.     sets.Midshot.Yoichinoyumi.Decoy = set_combine(sets.Midshot.Yoichinoyumi,{})
  246.     sets.Midshot.Yoichinoyumi.MidACC.Decoy = set_combine(sets.Midshot.Yoichinoyumi.MidACC,{})
  247.     sets.Midshot.Yoichinoyumi.HighACC.Decoy = set_combine(sets.Midshot.Yoichinoyumi.HighACC,{})
  248.  
  249.     -- Yoichinoyumi(Enmity) Sets --
  250.     sets.Midshot.Yoichinoyumi.Enmity = set_combine(sets.Midshot.Yoichinoyumi,{})
  251.     sets.Midshot.Yoichinoyumi.MidACC.Enmity = set_combine(sets.Midshot.Yoichinoyumi.MidACC,{})
  252.     sets.Midshot.Yoichinoyumi.HighACC.Enmity = set_combine(sets.Midshot.Yoichinoyumi.HighACC,{})
  253.  
  254.     -- Yoichinoyumi(AM) Sets --
  255.     sets.Midshot.Yoichinoyumi.AM = set_combine(sets.Midshot.Yoichinoyumi,{})
  256.     sets.Midshot.Yoichinoyumi.MidACC.AM = set_combine(sets.Midshot.Yoichinoyumi.MidACC,{})
  257.     sets.Midshot.Yoichinoyumi.HighACC.AM = set_combine(sets.Midshot.Yoichinoyumi.HighACC,{})
  258.  
  259.     -- Yoichinoyumi(Decoy Down: Ionis) Sets --
  260.     sets.Midshot.Yoichinoyumi.Ionis = set_combine(sets.Midshot.Yoichinoyumi,{})
  261.     sets.Midshot.Yoichinoyumi.MidACC.Ionis = set_combine(sets.Midshot.Yoichinoyumi.MidACC,{})
  262.     sets.Midshot.Yoichinoyumi.HighACC.Ionis = set_combine(sets.Midshot.Yoichinoyumi.HighACC,{})
  263.  
  264.     -- Yoichinoyumi(Decoy Up: Ionis) Sets --
  265.     sets.Midshot.Yoichinoyumi.Decoy.Ionis = set_combine(sets.Midshot.Yoichinoyumi,{})
  266.     sets.Midshot.Yoichinoyumi.MidACC.Decoy.Ionis = set_combine(sets.Midshot.Yoichinoyumi.MidACC,{})
  267.     sets.Midshot.Yoichinoyumi.HighACC.Decoy.Ionis = set_combine(sets.Midshot.Yoichinoyumi.HighACC,{})
  268.  
  269.     -- Yoichinoyumi(Decoy Down: SAM Roll) Sets --
  270.     sets.Midshot.Yoichinoyumi.STP = set_combine(sets.Midshot.Yoichinoyumi,{
  271.             main="Mekki Shakki",
  272.             sub="Bloodrain Strap",
  273.             ear1="Tripudio Earring",
  274.             hands="Arc. Bracers +1",
  275.             feet="Orion Socks +1"})
  276.     sets.Midshot.Yoichinoyumi.MidACC.STP = set_combine(sets.Midshot.Yoichinoyumi.STP,{
  277.             hands="Seiryu's Kote",
  278.             back="Lutian Cape",
  279.             legs="Aeto. Trousers +1",})
  280.     sets.Midshot.Yoichinoyumi.HighACC.STP = set_combine(sets.Midshot.Yoichinoyumi.MidACC.STP,{
  281.             ring2="Hajduk Ring +1"})
  282.  
  283.     -- Yoichinoyumi(Decoy Up: SAM Roll) Sets --
  284.     sets.Midshot.Yoichinoyumi.Decoy.STP = set_combine(sets.Midshot.Yoichinoyumi,{})
  285.     sets.Midshot.Yoichinoyumi.MidACC.Decoy.STP = set_combine(sets.Midshot.Yoichinoyumi.MidACC,{})
  286.     sets.Midshot.Yoichinoyumi.HighACC.Decoy.STP = set_combine(sets.Midshot.Yoichinoyumi.HighACC,{})
  287.  
  288.     -- Yoichinoyumi(Decoy Down: Ionis + SAM Roll) Sets --
  289.     sets.Midshot.Yoichinoyumi.Ionis.STP = set_combine(sets.Midshot.Yoichinoyumi,{})
  290.     sets.Midshot.Yoichinoyumi.MidACC.Ionis.STP = set_combine(sets.Midshot.Yoichinoyumi.MidACC,{})
  291.     sets.Midshot.Yoichinoyumi.HighACC.Ionis.STP = set_combine(sets.Midshot.Yoichinoyumi.HighACC,{})
  292.  
  293.     -- Yoichinoyumi(Decoy Up: Ionis + SAM Roll) Sets --
  294.     sets.Midshot.Yoichinoyumi.Decoy.Ionis.STP = set_combine(sets.Midshot.Yoichinoyumi,{})
  295.     sets.Midshot.Yoichinoyumi.MidACC.Decoy.Ionis.STP = set_combine(sets.Midshot.Yoichinoyumi.MidACC,{})
  296.     sets.Midshot.Yoichinoyumi.HighACC.Decoy.Ionis.STP = set_combine(sets.Midshot.Yoichinoyumi.HighACC,{})
  297.  
  298.     -- Yoichinoyumi Barrage Sets --
  299.     sets.Midshot.Yoichinoyumi.Barrage = set_combine(sets.Midshot.Yoichinoyumi,{},Barrage)
  300.     sets.Midshot.Yoichinoyumi.MidACC.Barrage = set_combine(sets.Midshot.Yoichinoyumi.MidACC,{},Barrage)
  301.     sets.Midshot.Yoichinoyumi.HighACC.Barrage = set_combine(sets.Midshot.Yoichinoyumi.HighACC,{},Barrage)
  302.  
  303.     -- Annihilator(Decoy Down) /SAM Sets --
  304.     sets.Midshot.Annihilator.SAM = {
  305.             range="Annihilator",
  306.             ammo="Achiyal. Bullet",
  307.             main="Mekki Shakki",
  308.             sub="Bloodrain strap",
  309.             head="Arcadian Beret +1",
  310.             neck="Ocachi Gorget",
  311.             ear1="Volley Earring",
  312.             ear2="Tripudio Earring",
  313.             body="Kyujutsugi",
  314.             hands="Seiryu's Kote",
  315.             ring1="Paqichikaji Ring",
  316.             ring2="Rajas Ring",
  317.             back="Lutian Cape",
  318.             waist="Elanid Belt",
  319.             legs="Nahtirah Trousers",
  320.             feet="Orion Socks +1"}
  321.     sets.Midshot.Annihilator.SAM.MidACC = set_combine(sets.Midshot.Annihilator.SAM,{
  322.             ear1="Clearview Earring",
  323.             back="Lutian Cape",
  324.             legs="Orion Braccae +1",
  325.             feet="Orion Socks +1"})
  326.     sets.Midshot.Annihilator.SAM.HighACC = set_combine(sets.Midshot.Annihilator.SAM.MidACC,{
  327.             hands="Sigyn's Bazubands",
  328.             ring2="Hajduk Ring"})
  329.  
  330.     -- Annihilator(Decoy Up) /SAM Sets --
  331.     sets.Midshot.Annihilator.SAM.Decoy = set_combine(sets.Midshot.Annihilator.SAM,{})
  332.     sets.Midshot.Annihilator.SAM.MidACC.Decoy = set_combine(sets.Midshot.Annihilator.SAM.MidACC,{})
  333.     sets.Midshot.Annihilator.SAM.HighACC.Decoy = set_combine(sets.Midshot.Annihilator.SAM.HighACC,{})
  334.  
  335.     -- Annihilator(Enmity) /SAM Sets --
  336.     sets.Midshot.Annihilator.SAM.Enmity = set_combine(sets.Midshot.Annihilator.SAM,{})
  337.     sets.Midshot.Annihilator.SAM.MidACC.Enmity = set_combine(sets.Midshot.Annihilator.SAM.MidACC,{})
  338.     sets.Midshot.Annihilator.SAM.HighACC.Enmity = set_combine(sets.Midshot.Annihilator.SAM.HighACC,{})
  339.  
  340.     -- Annihilator(AM) /SAM Sets --
  341.     sets.Midshot.Annihilator.SAM.AM = set_combine(sets.Midshot.Annihilator.SAM,{})
  342.     sets.Midshot.Annihilator.SAM.MidACC.AM = set_combine(sets.Midshot.Annihilator.SAM.MidACC,{})
  343.     sets.Midshot.Annihilator.SAM.HighACC.AM = set_combine(sets.Midshot.Annihilator.SAM.HighACC,{})
  344.  
  345.     -- Annihilator(Decoy Down: Ionis) /SAM Sets --
  346.     sets.Midshot.Annihilator.SAM.Ionis = set_combine(sets.Midshot.Annihilator.SAM,{})
  347.     sets.Midshot.Annihilator.SAM.MidACC.Ionis = set_combine(sets.Midshot.Annihilator.SAM.MidACC,{})
  348.     sets.Midshot.Annihilator.SAM.HighACC.Ionis = set_combine(sets.Midshot.Annihilator.SAM.HighACC,{})
  349.  
  350.     -- Annihilator(Decoy Up: Ionis) /SAM Sets --
  351.     sets.Midshot.Annihilator.SAM.Decoy.Ionis = set_combine(sets.Midshot.Annihilator.SAM,{})
  352.     sets.Midshot.Annihilator.SAM.MidACC.Decoy.Ionis = set_combine(sets.Midshot.Annihilator.SAM.MidACC,{})
  353.     sets.Midshot.Annihilator.SAM.HighACC.Decoy.Ionis = set_combine(sets.Midshot.Annihilator.SAM.HighACC,{})
  354.  
  355.     -- Annihilator(Decoy Down: SAM Roll) /SAM Sets --
  356.     sets.Midshot.Annihilator.SAM.STP = set_combine(sets.Midshot.Annihilator.SAM,{})
  357.     sets.Midshot.Annihilator.SAM.MidACC.STP = set_combine(sets.Midshot.Annihilator.SAM.MidACC,{})
  358.     sets.Midshot.Annihilator.SAM.HighACC.STP = set_combine(sets.Midshot.Annihilator.SAM.HighACC,{})
  359.  
  360.     -- Annihilator(Decoy Up: SAM Roll) /SAM Sets --
  361.     sets.Midshot.Annihilator.SAM.Decoy.STP = set_combine(sets.Midshot.Annihilator.SAM,{
  362.             range="Annihilator",
  363.             ammo="Achiyal. Bullet",
  364.             head="Arcadian Beret +1",
  365.             main="Mekki Shakki",
  366.             sub="Bloodrain strap",
  367.             neck="Ocachi Gorget",
  368.             ear1="Volley Earring",
  369.             ear2="Tripudio Earring",
  370.             body="Kyujutsugi",
  371.             hands="Seiryu's Kote",
  372.             ring1="Paqichikaji Ring",
  373.             ring2="Rajas Ring",
  374.             back="Lutian Cape",
  375.             waist="Elanid Belt",
  376.             legs="Nahtirah Trousers",
  377.             feet="Orion Socks +1"})
  378.     sets.Midshot.Annihilator.SAM.MidACC.Decoy.STP = set_combine(sets.Midshot.Annihilator.SAM.Decoy.STP,{})
  379.     sets.Midshot.Annihilator.SAM.HighACC.Decoy.STP = set_combine(sets.Midshot.Annihilator.SAM.MidACC.Decoy.STP,{})
  380.  
  381.     -- Annihilator(Decoy Down: Ionis + SAM Roll) /SAM Sets --
  382.     sets.Midshot.Annihilator.SAM.Ionis.STP = set_combine(sets.Midshot.Annihilator.SAM,{})
  383.     sets.Midshot.Annihilator.SAM.MidACC.Ionis.STP = set_combine(sets.Midshot.Annihilator.SAM.MidACC,{})
  384.     sets.Midshot.Annihilator.SAM.HighACC.Ionis.STP = set_combine(sets.Midshot.Annihilator.SAM.HighACC,{})
  385.  
  386.     -- Annihilator(Decoy Up: Ionis + SAM Roll) /SAM Sets --
  387.     sets.Midshot.Annihilator.SAM.Decoy.Ionis.STP = set_combine(sets.Midshot.Annihilator.SAM,{})
  388.     sets.Midshot.Annihilator.SAM.MidACC.Decoy.Ionis.STP = set_combine(sets.Midshot.Annihilator.SAM.MidACC,{})
  389.     sets.Midshot.Annihilator.SAM.HighACC.Decoy.Ionis.STP = set_combine(sets.Midshot.Annihilator.SAM.HighACC,{})
  390.  
  391.     -- Annihilator /SAM Barrage Sets --
  392.     sets.Midshot.Annihilator.SAM.Barrage = set_combine(sets.Midshot.Annihilator.SAM,{
  393.             range="Annihilator",
  394.             ammo="Achiyal. Bullet",
  395.             head="Arcadian Beret +1",
  396.             neck="Ocachi Gorget",
  397.             ear1="Volley Earring",
  398.             ear2="Clearview Earring",
  399.             body="Kyujutsugi",
  400.             hands="Orion Bracers +1",
  401.             ring1="Paqichikaji Ring",
  402.             ring2="Hajduk Ring",
  403.             back="Lutian Cape",
  404.             waist="Elanid Belt",
  405.             legs="Desultor Tassets",
  406.             feet="Orion Socks +1"},Barrage)
  407.     sets.Midshot.Annihilator.SAM.MidACC.Barrage = set_combine(sets.Midshot.Annihilator.SAM.MidACC,{},Barrage)
  408.     sets.Midshot.Annihilator.SAM.HighACC.Barrage = set_combine(sets.Midshot.Annihilator.SAM.HighACC,{},Barrage)
  409.  
  410.     -- Yoichinoyumi(Decoy Down) /SAM Sets --
  411.     sets.Midshot.Yoichinoyumi.SAM = {
  412.             main="Mekki Shakki",
  413.             sub="Moogle Guard +1",
  414.             range="Yoichinoyumi",
  415.             ammo="Achiyal. Arrow",
  416.             head="Arcadian Beret +1",
  417.             neck="Ocachi Gorget",
  418.             ear1="Vulcan's Pearl",
  419.             ear2="Volley Earring",
  420.             body="Kyujutsugi",
  421.             hands="Arc. Bracers +1",
  422.             ring1="Hajduk Ring +1",
  423.             ring2="Rajas Ring",
  424.             back="Lutian Cape",
  425.             waist="Elanid Belt",
  426.             legs="Nahtirah Trousers",
  427.             feet="Arcadian Socks +1"}
  428.     sets.Midshot.Yoichinoyumi.SAM.MidACC = set_combine(sets.Midshot.Yoichinoyumi.SAM,{
  429.             ear1="Clearview Earring",
  430.             legs="Orion Braccae +1",
  431.             feet="Orion Socks +1"})
  432.     sets.Midshot.Yoichinoyumi.SAM.HighACC = set_combine(sets.Midshot.Yoichinoyumi.SAM.MidACC,{
  433.             neck="Ej necklace +1",
  434.             hands="Buremte Gloves",
  435.             ring2="Hajduk Ring +1"})
  436.  
  437.     -- Yoichinoyumi(Decoy Up) /SAM Sets --
  438.     sets.Midshot.Yoichinoyumi.SAM.Decoy = set_combine(sets.Midshot.Yoichinoyumi.SAM,{})
  439.     sets.Midshot.Yoichinoyumi.SAM.MidACC.Decoy = set_combine(sets.Midshot.Yoichinoyumi.SAM.MidACC,{})
  440.     sets.Midshot.Yoichinoyumi.SAM.HighACC.Decoy = set_combine(sets.Midshot.Yoichinoyumi.SAM.HighACC,{})
  441.  
  442.     -- Yoichinoyumi(Enmity) /SAM Sets --
  443.     sets.Midshot.Yoichinoyumi.SAM.Enmity = set_combine(sets.Midshot.Yoichinoyumi.SAM,{})
  444.     sets.Midshot.Yoichinoyumi.SAM.MidACC.Enmity = set_combine(sets.Midshot.Yoichinoyumi.SAM.MidACC,{})
  445.     sets.Midshot.Yoichinoyumi.SAM.HighACC.Enmity = set_combine(sets.Midshot.Yoichinoyumi.SAM.HighACC,{})
  446.  
  447.     -- Yoichinoyumi(AM) /SAM Sets --
  448.     sets.Midshot.Yoichinoyumi.SAM.AM = set_combine(sets.Midshot.Yoichinoyumi.SAM,{})
  449.     sets.Midshot.Yoichinoyumi.SAM.MidACC.AM = set_combine(sets.Midshot.Yoichinoyumi.SAM.MidACC,{})
  450.     sets.Midshot.Yoichinoyumi.SAM.HighACC.AM = set_combine(sets.Midshot.Yoichinoyumi.SAM.HighACC,{})
  451.  
  452.     -- Yoichinoyumi(Decoy Down: Ionis) /SAM Sets --
  453.     sets.Midshot.Yoichinoyumi.SAM.Ionis = set_combine(sets.Midshot.Yoichinoyumi.SAM,{})
  454.     sets.Midshot.Yoichinoyumi.SAM.MidACC.Ionis = set_combine(sets.Midshot.Yoichinoyumi.SAM.MidACC,{})
  455.     sets.Midshot.Yoichinoyumi.SAM.HighACC.Ionis = set_combine(sets.Midshot.Yoichinoyumi.SAM.HighACC,{})
  456.  
  457.     -- Yoichinoyumi(Decoy Up: Ionis) /SAM Sets --
  458.     sets.Midshot.Yoichinoyumi.SAM.Decoy.Ionis = set_combine(sets.Midshot.Yoichinoyumi.SAM,{})
  459.     sets.Midshot.Yoichinoyumi.SAM.MidACC.Decoy.Ionis = set_combine(sets.Midshot.Yoichinoyumi.SAM.MidACC,{})
  460.     sets.Midshot.Yoichinoyumi.SAM.HighACC.Decoy.Ionis = set_combine(sets.Midshot.Yoichinoyumi.SAM.HighACC,{})
  461.  
  462.     -- Yoichinoyumi(Decoy Down: SAM Roll) /SAM Sets --
  463.     sets.Midshot.Yoichinoyumi.SAM.STP = set_combine(sets.Midshot.Yoichinoyumi.SAM,{})
  464.     sets.Midshot.Yoichinoyumi.SAM.MidACC.STP = set_combine(sets.Midshot.Yoichinoyumi.SAM.MidACC,{})
  465.     sets.Midshot.Yoichinoyumi.SAM.HighACC.STP = set_combine(sets.Midshot.Yoichinoyumi.SAM.HighACC,{})
  466.  
  467.     -- Yoichinoyumi(Decoy Up: SAM Roll) /SAM Sets --
  468.     sets.Midshot.Yoichinoyumi.SAM.Decoy.STP = set_combine(sets.Midshot.Yoichinoyumi.SAM,{
  469.             main="Mekki Shakki",
  470.             sub="Bloodrain Strap",
  471.             ear1="Tripudio Earring",
  472.             hands="Arc. Bracers +1",
  473.             back="Sylvan Chlamys",
  474.             waist="Elanid Belt",
  475.             feet="Orion Socks +1"})
  476.     sets.Midshot.Yoichinoyumi.SAM.MidACC.Decoy.STP = set_combine(sets.Midshot.Yoichinoyumi.SAM.Decoy.STP,{
  477.             hands="Seiryu's Kote",
  478.             legs="Aeto. Trousers +1"})
  479.     sets.Midshot.Yoichinoyumi.SAM.HighACC.Decoy.STP = set_combine(sets.Midshot.Yoichinoyumi.SAM.MidACC.Decoy.STP,{})
  480.  
  481.     -- Yoichinoyumi(Decoy Down: Ionis + SAM Roll) /SAM Sets --
  482.     sets.Midshot.Yoichinoyumi.SAM.Ionis.STP = set_combine(sets.Midshot.Yoichinoyumi.SAM,{})
  483.     sets.Midshot.Yoichinoyumi.SAM.MidACC.Ionis.STP = set_combine(sets.Midshot.Yoichinoyumi.SAM.MidACC,{})
  484.     sets.Midshot.Yoichinoyumi.SAM.HighACC.Ionis.STP = set_combine(sets.Midshot.Yoichinoyumi.SAM.HighACC,{})
  485.  
  486.     -- Yoichinoyumi(Decoy Up: Ionis + SAM Roll) /SAM Sets --
  487.     sets.Midshot.Yoichinoyumi.SAM.Decoy.Ionis.STP = set_combine(sets.Midshot.Yoichinoyumi.SAM,{})
  488.     sets.Midshot.Yoichinoyumi.SAM.MidACC.Decoy.Ionis.STP = set_combine(sets.Midshot.Yoichinoyumi.SAM.MidACC,{})
  489.     sets.Midshot.Yoichinoyumi.SAM.HighACC.Decoy.Ionis.STP = set_combine(sets.Midshot.Yoichinoyumi.SAM.HighACC,{})
  490.  
  491.     -- Yoichinoyumi /SAM Barrage Sets --
  492.     sets.Midshot.Yoichinoyumi.SAM.Barrage = set_combine(sets.Midshot.Yoichinoyumi.SAM,{},Barrage)
  493.     sets.Midshot.Yoichinoyumi.SAM.MidACC.Barrage = set_combine(sets.Midshot.Yoichinoyumi.SAM.MidACC,{},Barrage)
  494.     sets.Midshot.Yoichinoyumi.SAM.HighACC.Barrage = set_combine(sets.Midshot.Yoichinoyumi.SAM.HighACC,{},Barrage)
  495.  
  496.     -- Annihilator(Decoy Down) /NIN Sets --
  497.     sets.Midshot.Annihilator.NIN = {
  498.             main="Hurlbat",
  499.             sub="Antican Axe",
  500.             range="Annihilator",
  501.             ammo="Achiyal. Bullet",
  502.             head="Arcadian Beret +1",
  503.             neck="Ocachi Gorget",
  504.             ear1="Volley Earring",
  505.             ear2="Tripudio Earring",
  506.             body="Kyujutsugi",
  507.             hands="Arc. Bracers +1",
  508.             ring1="Paqichikaji Ring",
  509.             ring2="Rajas Ring",
  510.             back="Lutian Cape",
  511.             waist="Elanid Belt",
  512.             legs="Nahtirah Trousers",
  513.             feet="Orion Socks +1"}
  514.     sets.Midshot.Annihilator.NIN.MidACC = set_combine(sets.Midshot.Annihilator.NIN,{
  515.             ear1="Clearview Earring",
  516.             back="Lutian Cape",
  517.             legs="Orion Braccae +1",
  518.             feet="Orion Socks +1"})
  519.     sets.Midshot.Annihilator.NIN.HighACC = set_combine(sets.Midshot.Annihilator.NIN.MidACC,{
  520.             neck="Ej necklace +1",
  521.             hands="Sigyn's Bazubands",
  522.             ring2="Hajduk Ring +1"})
  523.  
  524.     -- Annihilator(Decoy Up) /NIN Sets --
  525.     sets.Midshot.Annihilator.NIN.Decoy = set_combine(sets.Midshot.Annihilator.NIN,{})
  526.     sets.Midshot.Annihilator.NIN.MidACC.Decoy = set_combine(sets.Midshot.Annihilator.NIN.MidACC,{})
  527.     sets.Midshot.Annihilator.NIN.HighACC.Decoy = set_combine(sets.Midshot.Annihilator.NIN.HighACC,{})
  528.  
  529.     -- Annihilator(Enmity) /NIN Sets --
  530.     sets.Midshot.Annihilator.NIN.Enmity = set_combine(sets.Midshot.Annihilator.NIN,{})
  531.     sets.Midshot.Annihilator.NIN.MidACC.Enmity = set_combine(sets.Midshot.Annihilator.NIN.MidACC,{})
  532.     sets.Midshot.Annihilator.NIN.HighACC.Enmity = set_combine(sets.Midshot.Annihilator.NIN.HighACC,{})
  533.  
  534.     -- Annihilator(AM) /NIN Sets --
  535.     sets.Midshot.Annihilator.NIN.AM = set_combine(sets.Midshot.Annihilator.NIN,{})
  536.     sets.Midshot.Annihilator.NIN.MidACC.AM = set_combine(sets.Midshot.Annihilator.NIN.MidACC,{})
  537.     sets.Midshot.Annihilator.NIN.HighACC.AM = set_combine(sets.Midshot.Annihilator.NIN.HighACC,{})
  538.  
  539.     -- Annihilator(Decoy Down: Ionis) /NIN Sets --
  540.     sets.Midshot.Annihilator.NIN.Ionis = set_combine(sets.Midshot.Annihilator.NIN,{})
  541.     sets.Midshot.Annihilator.NIN.MidACC.Ionis = set_combine(sets.Midshot.Annihilator.NIN.MidACC,{})
  542.     sets.Midshot.Annihilator.NIN.HighACC.Ionis = set_combine(sets.Midshot.Annihilator.NIN.HighACC,{})
  543.  
  544.     -- Annihilator(Decoy Up: Ionis) /NIN Sets --
  545.     sets.Midshot.Annihilator.NIN.Decoy.Ionis = set_combine(sets.Midshot.Annihilator.NIN,{})
  546.     sets.Midshot.Annihilator.NIN.MidACC.Decoy.Ionis = set_combine(sets.Midshot.Annihilator.NIN.MidACC,{})
  547.     sets.Midshot.Annihilator.NIN.HighACC.Decoy.Ionis = set_combine(sets.Midshot.Annihilator.NIN.HighACC,{})
  548.  
  549.     -- Annihilator(Decoy Down: SAM Roll) /NIN Sets --
  550.     sets.Midshot.Annihilator.NIN.STP = set_combine(sets.Midshot.Annihilator.NIN,{})
  551.     sets.Midshot.Annihilator.NIN.MidACC.STP = set_combine(sets.Midshot.Annihilator.NIN.MidACC,{})
  552.     sets.Midshot.Annihilator.NIN.HighACC.STP = set_combine(sets.Midshot.Annihilator.NIN.HighACC,{})
  553.  
  554.     -- Annihilator(Decoy Up: SAM Roll) /NIN Sets --
  555.     sets.Midshot.Annihilator.NIN.Decoy.STP = set_combine(sets.Midshot.Annihilator.NIN,{})
  556.     sets.Midshot.Annihilator.NIN.MidACC.Decoy.STP = set_combine(sets.Midshot.Annihilator.NIN.MidACC,{})
  557.     sets.Midshot.Annihilator.NIN.HighACC.Decoy.STP = set_combine(sets.Midshot.Annihilator.NIN.HighACC,{})
  558.  
  559.     -- Annihilator(Decoy Down: Ionis + SAM Roll) /NIN Sets --
  560.     sets.Midshot.Annihilator.NIN.Ionis.STP = set_combine(sets.Midshot.Annihilator.NIN,{})
  561.     sets.Midshot.Annihilator.NIN.MidACC.Ionis.STP = set_combine(sets.Midshot.Annihilator.NIN.MidACC,{})
  562.     sets.Midshot.Annihilator.NIN.HighACC.Ionis.STP = set_combine(sets.Midshot.Annihilator.NIN.HighACC,{})
  563.  
  564.     -- Annihilator(Decoy Up: Ionis + SAM Roll) /NIN Sets --
  565.     sets.Midshot.Annihilator.NIN.Decoy.Ionis.STP = set_combine(sets.Midshot.Annihilator.NIN,{})
  566.     sets.Midshot.Annihilator.NIN.MidACC.Decoy.Ionis.STP = set_combine(sets.Midshot.Annihilator.NIN.MidACC,{})
  567.     sets.Midshot.Annihilator.NIN.HighACC.Decoy.Ionis.STP = set_combine(sets.Midshot.Annihilator.NIN.HighACC,{})
  568.  
  569.     -- Annihilator /NIN Barrage Sets --
  570.     sets.Midshot.Annihilator.NIN.Barrage = set_combine(sets.Midshot.Annihilator.NIN,{
  571.             main="Hurlbat",
  572.             sub="Antican Axe",
  573.             range="Annihilator",
  574.             ammo="Achiyal. Bullet",
  575.             head="Umbani Cap",
  576.             neck="Ocachi Gorget",
  577.             ear1="Volley Earring",
  578.             ear2="Clearview Earring",
  579.             body="Kyujutsugi",
  580.             ring1="Paqichikaji Ring",
  581.             ring2="Hajduk Ring",
  582.             back="Lutian Cape",
  583.             waist="Elanid Belt",
  584.             feet="Orion Socks +1",
  585.             hands="Orion Bracers +1",
  586.             legs="Desultor Tassets"},Barrage)
  587.     sets.Midshot.Annihilator.NIN.MidACC.Barrage = set_combine(sets.Midshot.Annihilator.NIN.MidACC,{},Barrage)
  588.     sets.Midshot.Annihilator.NIN.HighACC.Barrage = set_combine(sets.Midshot.Annihilator.NIN.HighACC,{},Barrage)
  589.  
  590.     -- Yoichinoyumi(Decoy Down) /NIN Sets --
  591.     sets.Midshot.Yoichinoyumi.NIN = {
  592.             main="Hurlbat",
  593.             sub="Antican Axe",
  594.             range="Yoichinoyumi",
  595.             ammo="Achiyal. Arrow",
  596.             head="Arcadian Beret +1",
  597.             neck="Ocachi Gorget",
  598.             ear1="Vulcan's Pearl",
  599.             ear2="Volley Earring",
  600.             body="Kyujutsugi",
  601.             hands="Arc. Bracers +1",
  602.             ring1="Hajduk Ring +1",
  603.             ring2="Rajas Ring",
  604.             back="Lutian Cape",
  605.             waist="Elanid Belt",
  606.             legs="Nahtirah Trousers",
  607.             feet="Arcadian Socks +1"}
  608.     sets.Midshot.Yoichinoyumi.NIN.MidACC = set_combine(sets.Midshot.Yoichinoyumi.NIN,{
  609.             ear1="Clearview Earring",
  610.             legs="Orion Braccae +1",
  611.             feet="Orion Socks +1"})
  612.     sets.Midshot.Yoichinoyumi.NIN.HighACC = set_combine(sets.Midshot.Yoichinoyumi.NIN.MidACC,{
  613.             neck="Ej necklace +1",
  614.             hands="Buremte Gloves",
  615.             ring2="Hajduk Ring +1"})
  616.  
  617.     -- Yoichinoyumi(Decoy Up) /NIN Sets --
  618.     sets.Midshot.Yoichinoyumi.NIN.Decoy = set_combine(sets.Midshot.Yoichinoyumi.NIN,{})
  619.     sets.Midshot.Yoichinoyumi.NIN.MidACC.Decoy = set_combine(sets.Midshot.Yoichinoyumi.NIN.MidACC,{})
  620.     sets.Midshot.Yoichinoyumi.NIN.HighACC.Decoy = set_combine(sets.Midshot.Yoichinoyumi.NIN.HighACC,{})
  621.  
  622.     -- Yoichinoyumi(Enmity) /NIN Sets --
  623.     sets.Midshot.Yoichinoyumi.NIN.Enmity = set_combine(sets.Midshot.Yoichinoyumi.NIN,{})
  624.     sets.Midshot.Yoichinoyumi.NIN.MidACC.Enmity = set_combine(sets.Midshot.Yoichinoyumi.NIN.MidACC,{})
  625.     sets.Midshot.Yoichinoyumi.NIN.HighACC.Enmity = set_combine(sets.Midshot.Yoichinoyumi.NIN.HighACC,{})
  626.  
  627.     -- Yoichinoyumi(AM) /NIN Sets --
  628.     sets.Midshot.Yoichinoyumi.NIN.AM = set_combine(sets.Midshot.Yoichinoyumi.NIN,{})
  629.     sets.Midshot.Yoichinoyumi.NIN.MidACC.AM = set_combine(sets.Midshot.Yoichinoyumi.NIN.MidACC,{})
  630.     sets.Midshot.Yoichinoyumi.NIN.HighACC.AM = set_combine(sets.Midshot.Yoichinoyumi.NIN.HighACC,{})
  631.  
  632.     -- Yoichinoyumi(Decoy Down: Ionis) /NIN Sets --
  633.     sets.Midshot.Yoichinoyumi.NIN.Ionis = set_combine(sets.Midshot.Yoichinoyumi.NIN,{})
  634.     sets.Midshot.Yoichinoyumi.NIN.MidACC.Ionis = set_combine(sets.Midshot.Yoichinoyumi.NIN.MidACC,{})
  635.     sets.Midshot.Yoichinoyumi.NIN.HighACC.Ionis = set_combine(sets.Midshot.Yoichinoyumi.NIN.HighACC,{})
  636.  
  637.     -- Yoichinoyumi(Decoy Up: Ionis) /NIN Sets --
  638.     sets.Midshot.Yoichinoyumi.NIN.Decoy.Ionis = set_combine(sets.Midshot.Yoichinoyumi.NIN,{})
  639.     sets.Midshot.Yoichinoyumi.NIN.MidACC.Decoy.Ionis = set_combine(sets.Midshot.Yoichinoyumi.NIN.MidACC,{})
  640.     sets.Midshot.Yoichinoyumi.NIN.HighACC.Decoy.Ionis = set_combine(sets.Midshot.Yoichinoyumi.NIN.HighACC,{})
  641.  
  642.     -- Yoichinoyumi(Decoy Down: SAM Roll) /NIN Sets --
  643.     sets.Midshot.Yoichinoyumi.NIN.STP = set_combine(sets.Midshot.Yoichinoyumi.NIN,{})
  644.     sets.Midshot.Yoichinoyumi.NIN.MidACC.STP = set_combine(sets.Midshot.Yoichinoyumi.NIN.MidACC,{})
  645.     sets.Midshot.Yoichinoyumi.NIN.HighACC.STP = set_combine(sets.Midshot.Yoichinoyumi.NIN.HighACC,{})
  646.  
  647.     -- Yoichinoyumi(Decoy Up: SAM Roll) /NIN Sets --
  648.     sets.Midshot.Yoichinoyumi.NIN.Decoy.STP = set_combine(sets.Midshot.Yoichinoyumi.NIN,{})
  649.     sets.Midshot.Yoichinoyumi.NIN.MidACC.Decoy.STP = set_combine(sets.Midshot.Yoichinoyumi.NIN.MidACC,{})
  650.     sets.Midshot.Yoichinoyumi.NIN.HighACC.Decoy.STP = set_combine(sets.Midshot.Yoichinoyumi.NIN.HighACC,{})
  651.  
  652.     -- Yoichinoyumi(Decoy Down: Ionis + SAM Roll) /NIN Sets --
  653.     sets.Midshot.Yoichinoyumi.NIN.Ionis.STP = set_combine(sets.Midshot.Yoichinoyumi.NIN,{})
  654.     sets.Midshot.Yoichinoyumi.NIN.MidACC.Ionis.STP = set_combine(sets.Midshot.Yoichinoyumi.NIN.MidACC,{})
  655.     sets.Midshot.Yoichinoyumi.NIN.HighACC.Ionis.STP = set_combine(sets.Midshot.Yoichinoyumi.NIN.HighACC,{})
  656.  
  657.     -- Yoichinoyumi(Decoy Up: Ionis + SAM Roll) /NIN Sets --
  658.     sets.Midshot.Yoichinoyumi.NIN.Decoy.Ionis.STP = set_combine(sets.Midshot.Yoichinoyumi.NIN,{})
  659.     sets.Midshot.Yoichinoyumi.NIN.MidACC.Decoy.Ionis.STP = set_combine(sets.Midshot.Yoichinoyumi.NIN.MidACC,{})
  660.     sets.Midshot.Yoichinoyumi.NIN.HighACC.Decoy.Ionis.STP = set_combine(sets.Midshot.Yoichinoyumi.NIN.HighACC,{})
  661.  
  662.     -- Yoichinoyumi /NIN Barrage Sets --
  663.     sets.Midshot.Yoichinoyumi.NIN.Barrage = set_combine(sets.Midshot.Yoichinoyumi.NIN,{},Barrage)
  664.     sets.Midshot.Yoichinoyumi.NIN.MidACC.Barrage = set_combine(sets.Midshot.Yoichinoyumi.NIN.MidACC,{},Barrage)
  665.     sets.Midshot.Yoichinoyumi.NIN.HighACC.Barrage = set_combine(sets.Midshot.Yoichinoyumi.NIN.HighACC,{},Barrage)
  666.  
  667.     -- PDT/MDT Sets --
  668.     sets.PDT = {
  669.             head="Iuitl Headgear +1",
  670.             neck="Twilight Torque",
  671.             ear1="Colossus's Earring",
  672.             ear2="Tripudio Earring",
  673.             body="Iuitl Vest",
  674.             hands="Iuitl Wristbands +1",
  675.             ring1="Dark Ring",
  676.             ring2="Defending Ring",
  677.             back="Molussca Mantle",
  678.             waist="Flume Belt",
  679.             legs="Iuitl Tights",
  680.             feet="Iuitl Gaiters"}
  681.  
  682.     sets.MDT = set_combine(sets.PDT,{
  683.             ear1="Merman's Earring",
  684.             ear2="Sanare Earring",
  685.             ring1="Shadow Ring",
  686.             back="Engulfer Cape",
  687.             waist="Resolute Belt"})
  688.  
  689.     -- Melee Sets --
  690.     sets.Melee = {}
  691.     sets.Melee.MidACC = set_combine(sets.Melee,{})
  692.     sets.Melee.HighACC = set_combine(sets.Melee.MidACC,{})
  693.  
  694.     -- WS Base Set --
  695.     sets.WS = {}
  696.  
  697.     -- Coronach Sets --
  698.     sets.WS.Coronach = {
  699.             ammo="Achiyal. Bullet",
  700.             head="Arcadian Beret +1",
  701.             neck="Breeze Gorget",
  702.             ear1="Vulcan's Pearl",
  703.             ear2="Sylvan Earring",
  704.             body="Kyujutsugi",
  705.             hands="Arc. Bracers +1",
  706.             ring1="Flame Ring",
  707.             ring2="Rajas Ring",
  708.             back="Buquwik Cape",
  709.             waist="Breeze Belt",
  710.             legs="Nahtirah Trousers",
  711.             feet="Orion Socks +1"}
  712.     sets.WS.Coronach.MidACC = set_combine(sets.WS.Coronach,{
  713.             back="Lutian Cape",
  714.             feet="Orion Socks +1"})
  715.     sets.WS.Coronach.HighACC = set_combine(sets.WS.Coronach.MidACC,{
  716.             hands="Sigyn's Bazubands",
  717.             legs="Orion Braccae +1"})
  718.  
  719.     -- Coronach(Attack) Set. This Set Takes Priority Over Other Sets. --
  720.     sets.WS.Coronach.ATT = set_combine(sets.WS.Coronach,{})
  721.  
  722.     -- Coronach(Enmity) Sets --
  723.     sets.WS.Coronach.Enmity = set_combine(sets.WS.Coronach,{})
  724.     sets.WS.Coronach.MidACC.Enmity = set_combine(sets.WS.Coronach.MidACC,{})
  725.     sets.WS.Coronach.HighACC.Enmity = set_combine(sets.WS.Coronach.HighACC,{})
  726.  
  727.     -- Coronach(AM) Sets --
  728.     sets.WS.Coronach.AM = set_combine(sets.WS.Coronach,{})
  729.     sets.WS.Coronach.MidACC.AM = set_combine(sets.WS.Coronach.MidACC,{})
  730.     sets.WS.Coronach.HighACC.AM = set_combine(sets.WS.Coronach.HighACC,{})
  731.  
  732.     -- Coronach(SAM Roll) Sets --
  733.     sets.WS.Coronach.STP = set_combine(sets.WS.Coronach,{})
  734.     sets.WS.Coronach.MidACC.STP = set_combine(sets.WS.Coronach.MidACC,{})
  735.     sets.WS.Coronach.HighACC.STP = set_combine(sets.WS.Coronach.HighACC,{})
  736.  
  737.     -- Last Stand Sets --
  738.     sets.WS["Last Stand"] = {
  739.             ammo="Achiyal. Bullet",
  740.             head="Arcadian Beret +1",
  741.             neck="Flame Gorget",
  742.             ear1="Moonshade Earring",
  743.             ear2="Sylvan Earring",
  744.             body="Kyujutsugi",
  745.             hands="Arc. Bracers +1",
  746.             ring1="Stormsoul Ring",
  747.             ring2="Blobnag Ring",
  748.             back="Lutian Cape",
  749.             waist="Light Belt",
  750.             legs="Nahtirah Trousers",
  751.             feet="Orion Socks +1"}
  752.     sets.WS["Last Stand"].MidACC = set_combine(sets.WS["Last Stand"],{
  753.             feet="Orion Socks +1"})
  754.     sets.WS["Last Stand"].HighACC = set_combine(sets.WS["Last Stand"].MidACC,{
  755.             hands="Sigyn's Bazubands",
  756.             legs="Orion Braccae +1"})
  757.  
  758.     -- Last Stand(Attack) Set. This Set Takes Priority Over Other Sets. --
  759.     sets.WS["Last Stand"].ATT = set_combine(sets.WS["Last Stand"],{})
  760.  
  761.     -- Last Stand(Enmity) Sets --
  762.     sets.WS["Last Stand"].Enmity = set_combine(sets.WS["Last Stand"],{
  763.             hands="Arc. Bracers +1",
  764.             legs="Arc. Braccae +1",
  765.             feet="Arcadian Socks +1"})
  766.     sets.WS["Last Stand"].MidACC.Enmity = set_combine(sets.WS["Last Stand"].MidACC,{})
  767.     sets.WS["Last Stand"].HighACC.Enmity = set_combine(sets.WS["Last Stand"].HighACC,{})
  768.  
  769.     -- Last Stand(AM) Sets --
  770.     sets.WS["Last Stand"].AM = set_combine(sets.WS["Last Stand"],{})
  771.     sets.WS["Last Stand"].MidACC.AM = set_combine(sets.WS["Last Stand"].MidACC,{})
  772.     sets.WS["Last Stand"].HighACC.AM = set_combine(sets.WS["Last Stand"].HighACC,{})
  773.  
  774.     -- Last Stand(SAM Roll) Sets --
  775.     sets.WS["Last Stand"].STP = set_combine(sets.WS["Last Stand"],{})
  776.     sets.WS["Last Stand"].MidACC.STP = set_combine(sets.WS["Last Stand"].MidACC,{})
  777.     sets.WS["Last Stand"].HighACC.STP = set_combine(sets.WS["Last Stand"].HighACC,{})
  778.  
  779.     -- Namas Arrow Sets --
  780.     sets.WS["Namas Arrow"] = {
  781.             ammo="Achiyal. Arrow",
  782.             head="Arcadian Beret +1",
  783.             neck="Flame Gorget",
  784.             ear1="Vulcan's Pearl",
  785.             ear2="Vulcan's Pearl",
  786.             body="Khepri Jacket",
  787.             hands="Arc. Bracers +1",
  788.             ring1="Pyrosoul Ring",
  789.             ring2="Aife's Ring",
  790.             back="Buquwik Cape",
  791.             waist="Flame Belt",
  792.             legs="Nahtirah Trousers",
  793.             feet="Arcadian Socks +1"}
  794.     sets.WS["Namas Arrow"].MidACC = set_combine(sets.WS["Namas Arrow"],{
  795.             back="Lutian Cape",
  796.             feet="Orion Socks +1"})
  797.     sets.WS["Namas Arrow"].HighACC = set_combine(sets.WS["Namas Arrow"].MidACC,{
  798.             legs="Orion Braccae +1"})
  799.  
  800.     -- Namas Arrow(Attack) Set. This Set Takes Priority Over Other Sets. --
  801.     sets.WS["Namas Arrow"].ATT = set_combine(sets.WS["Namas Arrow"],{})
  802.  
  803.     -- Namas Arrow(Enmity) Sets --
  804.     sets.WS["Namas Arrow"].Enmity = set_combine(sets.WS["Namas Arrow"],{})
  805.     sets.WS["Namas Arrow"].MidACC.Enmity = set_combine(sets.WS["Namas Arrow"].MidACC,{})
  806.     sets.WS["Namas Arrow"].HighACC.Enmity = set_combine(sets.WS["Namas Arrow"].HighACC,{})
  807.  
  808.     -- Namas Arrow(AM) Sets --
  809.     sets.WS["Namas Arrow"].AM = set_combine(sets.WS["Namas Arrow"],{})
  810.     sets.WS["Namas Arrow"].MidACC.AM = set_combine(sets.WS["Namas Arrow"].MidACC,{})
  811.     sets.WS["Namas Arrow"].HighACC.AM = set_combine(sets.WS["Namas Arrow"].HighACC,{})
  812.  
  813.     -- Namas Arrow(SAM Roll) Sets --
  814.     sets.WS["Namas Arrow"].STP = set_combine(sets.WS["Namas Arrow"],{})
  815.     sets.WS["Namas Arrow"].MidACC.STP = set_combine(sets.WS["Namas Arrow"].MidACC,{})
  816.     sets.WS["Namas Arrow"].HighACC.STP = set_combine(sets.WS["Namas Arrow"].HighACC,{})
  817.  
  818.     -- Jishnu's Radiance Sets --
  819.     sets.WS["Jishnu's Radiance"] = {
  820.             ammo="Achiyal. Arrow",
  821.             head="Arcadian Beret +1",
  822.             neck="Flame Gorget",
  823.             ear1="Moonshade Earring",
  824.             ear2="Jupiter's Pearl",
  825.             body="Kyujutsugi",
  826.             hands="Arc. Bracers +1",
  827.             ring1="Thundersoul Ring",
  828.             ring2="Thundersoul Ring",
  829.             back="Lutian Cape",
  830.             waist="Flame Belt",
  831.             legs="Manibozho Brais",
  832.             feet="Arcadian Socks +1"}
  833.     sets.WS["Jishnu's Radiance"].MidACC = set_combine(sets.WS["Jishnu's Radiance"],{
  834.             legs="Orion Braccae +1",
  835.             feet="Orion Socks +1"})
  836.     sets.WS["Jishnu's Radiance"].HighACC = set_combine(sets.WS["Jishnu's Radiance"].MidACC,{})
  837.  
  838.     -- Jishnu's Radiance(Attack) Set. This Set Takes Priority Over Other Sets. --
  839.     sets.WS["Jishnu's Radiance"].ATT = set_combine(sets.WS["Jishnu's Radiance"],{})
  840.  
  841.     -- Jishnu's Radiance(Enmity) Sets --
  842.     sets.WS["Jishnu's Radiance"].Enmity = set_combine(sets.WS["Jishnu's Radiance"],{})
  843.     sets.WS["Jishnu's Radiance"].MidACC.Enmity = set_combine(sets.WS["Jishnu's Radiance"].MidACC,{})
  844.     sets.WS["Jishnu's Radiance"].HighACC.Enmity = set_combine(sets.WS["Jishnu's Radiance"].HighACC,{})
  845.  
  846.     -- Jishnu's Radiance(AM) Sets --
  847.     sets.WS["Jishnu's Radiance"].AM = set_combine(sets.WS["Jishnu's Radiance"],{})
  848.     sets.WS["Jishnu's Radiance"].MidACC.AM = set_combine(sets.WS["Jishnu's Radiance"].MidACC,{})
  849.     sets.WS["Jishnu's Radiance"].HighACC.AM = set_combine(sets.WS["Jishnu's Radiance"].HighACC,{})
  850.  
  851.     -- Jishnu's Radiance(SAM Roll) Sets --
  852.     sets.WS["Jishnu's Radiance"].STP = set_combine(sets.WS["Jishnu's Radiance"],{})
  853.     sets.WS["Jishnu's Radiance"].MidACC.STP = set_combine(sets.WS["Jishnu's Radiance"].MidACC,{})
  854.     sets.WS["Jishnu's Radiance"].HighACC.STP = set_combine(sets.WS["Jishnu's Radiance"].HighACC,{})
  855.  
  856.     -- Apex Arrow Sets --
  857.     sets.WS["Apex Arrow"] = {}
  858.     sets.WS["Apex Arrow"].MidACC = set_combine(sets.WS["Apex Arrow"],{})
  859.     sets.WS["Apex Arrow"].HighACC = set_combine(sets.WS["Apex Arrow"].MidACC,{})
  860.  
  861.     -- Wildfire Set --
  862.     sets.WS.Wildfire = {ammo="Achiyal. Bullet",
  863.             head="Umbani Cap",
  864.             neck="Stoicheion Medal",
  865.             ear1="Friomisi Earring",
  866.             ear2="Crematio Earring",
  867.             body="Orion Jerkin",
  868.             hands="Khepri Wristbands",
  869.             ring1="Stormsoul Ring",
  870.             ring2="Demon's Ring",
  871.             back="Toro Cape",
  872.             waist="Aquiline Belt",
  873.             legs="Iuitl Tights",
  874.             feet="Orion socks +1"}
  875.  
  876.     -- JA Sets --
  877.     sets.JA = {}
  878.     sets.JA.Shadowbind = {
  879.             head="Umbani Cap",
  880.             neck="Ocachi Gorget",
  881.             ear1="Clearview Earring",
  882.             ear2="Volley Earring",
  883.             body="Kyujutsugi",
  884.             hands="Orion Bracers +1",
  885.             ring1="Paqichikaji Ring",
  886.             ring2="Hajduk Ring",
  887.             back="Lutian Cape",
  888.             waist="Elanid Belt",
  889.             legs="Orion Braccae +1",
  890.             feet="Orion Socks +1"}
  891.  
  892.     sets.JA.Scavenge = {feet="Orion Socks +1"}
  893.     sets.JA.Camouflage = {body="Orion Jerkin +1"}
  894.     sets.JA.Sharpshot = {legs="Orion Braccae +1"}
  895.     sets.JA["Bounty Shot"] = {hands="Syl. Glvltte. +2",waist="Chaac Belt"}
  896.     sets.JA["Eagle Eye Shot"] = {
  897.             head="Uk'uxkaj Cap",
  898.             neck="Ocachi Gorget",
  899.             ear1="Vulcan's Pearl",
  900.             ear2="Clearview Pearl",
  901.             body="Kyujutsugi",
  902.             hands="Arc. Bracers +1",
  903.             ring1="Flame Ring",
  904.             ring2="Rajas Ring",
  905.             back="Buquwik Cape",
  906.             waist="Elanid Belt",
  907.             legs="Arcadian Braccae",
  908.             feet="Orion Socks +1"}
  909.  
  910.     -- Waltz Set --
  911.     sets.Waltz = {}
  912.  
  913.     sets.Precast = {}
  914.     -- Fastcast Set --
  915.     sets.Precast.FastCast = {
  916.             head="Haruspex Hat +1",
  917.             neck="Orunmila's Torque",
  918.             ear1="Loquac. Earring",
  919.             hands="Thaumas Gloves",
  920.             ring1="Prolix Ring",
  921.             ring2="Veneficium Ring"}
  922.     -- Utsusemi Precast Set --
  923.     sets.Precast.Utsusemi = set_combine(sets.Precast.FastCast,{neck="Magoraga Beads"})
  924.  
  925.     sets.Midcast = {}
  926.     -- Magic Haste Set --
  927.     sets.Midcast.Haste = set_combine(sets.PDT,{})
  928. end
  929.  
  930. function pretarget(spell,action)
  931.     if (spell.type:endswith('Magic') or spell.type == "Ninjutsu") and buffactive.silence then -- Auto Use Echo Drops If You Are Silenced --
  932.         cancel_spell()
  933.         send_command('input /item "Echo Drops" <me>')
  934.     elseif spell.english == "Berserk" and buffactive.Berserk then -- Change Berserk To Aggressor If Berserk Is On --
  935.         cancel_spell()
  936.         send_command('Aggressor')
  937.     elseif spell.english == "Seigan" and buffactive.Seigan then -- Change Seigan To Third Eye If Seigan Is On --
  938.         cancel_spell()
  939.         send_command('ThirdEye')
  940.     elseif spell.english == "Meditate" and player.tp > 290 then -- Cancel Meditate If TP Is Above 290 --
  941.          cancel_spell()
  942.         add_to_chat(123, spell.name .. ' Canceled: ['..player.tp..' TP]')
  943.     elseif (spell.english == 'Ranged' and spell.target.distance > 24.9) or (player.status == 'Engaged' and ((ranged_ws:contains(spell.english) and spell.target.distance > 16+target_distance) or (spell.type == "WeaponSkill" and not ranged_ws:contains(spell.english) and spell.target.distance > target_distance))) then -- Cancel Ranged Attack or WS If You Are Out Of Range --
  944.         cancel_spell()
  945.         add_to_chat(123, spell.name..' Canceled: [Out of Range]')
  946.         return
  947.     elseif spell.english == 'Ranged' then -- Auto WS/Decoy Shot/Double Shot --
  948.         if player.tp >= 100 and AutoMode == 'ON' and not buffactive.amnesia then
  949.          cancel_spell()
  950.             autoWS()
  951.        
  952.         end
  953.     end
  954. end
  955.  
  956. function precast(spell,action)
  957.     local check_ammo
  958.     local check_ammo_count = 1
  959.     if spell.english == 'Ranged' then
  960.         check_ammo = player.equipment.ammo
  961.         if player.equipment.ammo == 'empty' or player.inventory[check_ammo].count <= check_ammo_count then
  962.             add_to_chat(123, spell.name..' Canceled: [Out of Ammo]')
  963.             cancel_spell()
  964.             return
  965.         else
  966.             equip(sets.Preshot)
  967.             if player.inventory[check_ammo].count <= ammo_warning_limit and player.inventory[check_ammo].count > 1 and not warning then
  968.                 add_to_chat(123, '***** [Low Ammo Warning!] *****')
  969.                 warning = true
  970.             elseif player.inventory[check_ammo].count > ammo_warning_limit and warning then
  971.                 warning = false
  972.             end
  973.         end
  974.     elseif spell.type == "WeaponSkill" then
  975.         if player.status ~= 'Engaged' then -- Cancel WS If You Are Not Engaged. Can Delete It If You Don't Need It --
  976.             cancel_spell()
  977.             add_to_chat(123,'Unable To Use WeaponSkill: [Disengaged]')
  978.             return
  979.         else
  980.             equipSet = sets.WS
  981.             if equipSet[spell.english] then
  982.                 equipSet = equipSet[spell.english]
  983.             end
  984.             if Attack == 'ON' then
  985.                 equipSet = equipSet["ATT"]
  986.             end
  987.             if equipSet[AccArray[AccIndex]] then
  988.                 equipSet = equipSet[AccArray[AccIndex]]
  989.             end
  990.             if equipSet["Enmity"] and Enmity == 'ON' then
  991.                 equipSet = equipSet["Enmity"]
  992.             end
  993.             if buffactive.Aftermath and equipSet["AM"] then
  994.                 equipSet = equipSet["AM"]
  995.             end
  996.             if buffactive["Samurai Roll"] and equipSet["STP"] and Samurai_Roll == 'ON' then
  997.                 equipSet = equipSet["STP"]
  998.             end
  999.             if player.tp > 299 or buffactive.Sekkanoki then
  1000.                 if spell.english == "Last Stand" then -- Equip Altdorf's Earring and Wilhelm's Earring When You Have 300 TP or Sekkanoki For Last Stand --
  1001.                     equipSet = set_combine(equipSet,{ear1="Altdorf's Earring",ear2="Wilhelm's Earring"})
  1002.                 elseif spell.english == "Jishnu's Radiance" then -- Equip Jupiter's Pearl When You Have 300 TP or Sekkanoki For Jishnu's Radiance --
  1003.                     equipSet = set_combine(equipSet,{ear1="Jupiter's Pearl"})
  1004.                 end
  1005.             end
  1006.             equip(equipSet)
  1007.         end
  1008.     elseif spell.type=="JobAbility" then
  1009.         if sets.JA[spell.english] then
  1010.             equip(sets.JA[spell.english])
  1011.         end
  1012.     elseif spell.type:endswith('Magic') or spell.type == "Ninjutsu" then
  1013.         if string.find(spell.english,'Utsusemi') then
  1014.             if buffactive['Copy Image (3)'] or buffactive['Copy Image (4)'] then
  1015.                 cancel_spell()
  1016.                 add_to_chat(123, spell.name .. ' Canceled: [3+ Images]')
  1017.                 return
  1018.             else
  1019.                 equip(sets.Precast.Utsusemi)
  1020.             end
  1021.         else
  1022.             equip(sets.Precast.FastCast)
  1023.         end
  1024.     elseif spell.type == "Waltz" then
  1025.         equip(sets.Waltz)
  1026.     elseif spell.english == 'Spectral Jig' and buffactive.Sneak then
  1027.         cast_delay(0.2)
  1028.         send_command('cancel Sneak')
  1029.     end
  1030. end
  1031.  
  1032. function midcast(spell,action)
  1033.     if spell.english == 'Ranged' then
  1034.         equipSet = sets.Midshot
  1035.         if equipSet[WeaponArray[WeaponIndex]] then
  1036.             equipSet = equipSet[WeaponArray[WeaponIndex]]
  1037.         end
  1038.         if equipSet[player.sub_job] then
  1039.             equipSet = equipSet[player.sub_job]
  1040.         end
  1041.         if equipSet[AccArray[AccIndex]] then
  1042.             equipSet = equipSet[AccArray[AccIndex]]
  1043.         end
  1044.         if buffactive["Decoy Shot"] and equipSet["Decoy"] then
  1045.             equipSet = equipSet["Decoy"]
  1046.         end
  1047.         if equipSet["Enmity"] and Enmity == 'ON' then
  1048.             equipSet = equipSet["Enmity"]
  1049.         end
  1050.         if buffactive.Aftermath and equipSet["AM"] then
  1051.             equipSet = equipSet["AM"]
  1052.         end
  1053.         if buffactive.Ionis and equipSet["Ionis"] then
  1054.             equipSet = equipSet["Ionis"]
  1055.         end
  1056.         if buffactive["Samurai Roll"] and equipSet["STP"] and Samurai_Roll == 'ON' then
  1057.             equipSet = equipSet["STP"]
  1058.         end
  1059.         if buffactive.Barrage and equipSet["Barrage"] then
  1060.             equipSet = equipSet["Barrage"]
  1061.         end
  1062.         equip(equipSet)
  1063.     elseif spell.type:endswith('Magic') or spell.type == "Ninjutsu" then
  1064.         if string.find(spell.english,'Utsusemi') then
  1065.             if spell.english == 'Utsusemi: Ichi' and (buffactive['Copy Image'] or buffactive['Copy Image (2)']) then
  1066.                 send_command('@wait 1.7;cancel Copy Image*')
  1067.             end
  1068.             equip(sets.Midcast.Haste)
  1069.         elseif spell.english == 'Monomi: Ichi' then
  1070.             if buffactive['Sneak'] then
  1071.                 send_command('@wait 1.7;cancel sneak')
  1072.             end
  1073.             equip(sets.Midcast.Haste)
  1074.         else
  1075.             equip(sets.Midcast.Haste)
  1076.         end
  1077.     end
  1078. end
  1079.  
  1080. function aftercast(spell,action)
  1081.     if spell.english == 'Ranged' and AutoMode == 'ON' then
  1082.         autoRA()
  1083.     elseif spell.type == "WeaponSkill" and not spell.interrupted then
  1084.         send_command('wait 0.2;gs c TP')
  1085.     else
  1086.         status_change(player.status)
  1087.     end
  1088. end
  1089.  
  1090. function status_change(new,old)
  1091.     if Armor == 'PDT' then
  1092.         equip(sets.PDT)
  1093.     elseif Armor == 'MDT' then
  1094.         equip(sets.MDT)
  1095.     elseif new == 'Engaged' then
  1096.         equipSet = sets.Melee
  1097.         if equipSet[AccArray[AccIndex]] then
  1098.             equipSet = equipSet[AccArray[AccIndex]]
  1099.         end
  1100.         equip(equipSet)
  1101.     else
  1102.         equipSet = sets.Idle
  1103.         if equipSet[IdleArray[IdleIndex]] then
  1104.             equipSet = equipSet[IdleArray[IdleIndex]]
  1105.         end
  1106.         if equipSet[WeaponArray[WeaponIndex]] then
  1107.             equipSet = equipSet[WeaponArray[WeaponIndex]]
  1108.         end
  1109.         if equipSet[player.sub_job] then
  1110.             equipSet = equipSet[player.sub_job]
  1111.         end
  1112.         equip(equipSet)
  1113.     end
  1114. end
  1115.  
  1116. function buff_change(buff,gain)
  1117.     buff = string.lower(buff)
  1118.     if buff == "overkill" then -- Overkill Timer --
  1119.         if gain then
  1120.             send_command('timers create "Overkill" 60 down')
  1121.         else
  1122.             send_command('timers delete "Overkill"')
  1123.             add_to_chat(123,'Overkill: [OFF]')
  1124.         end
  1125.     elseif buff == "decoy shot" then -- Decoy Shot Timer --
  1126.         if gain then
  1127.             send_command('timers create "Decoy Shot" 180 down')
  1128.         else
  1129.             send_command('timers delete "Decoy Shot"')
  1130.             add_to_chat(123,'Decoy Shot: [OFF]')
  1131.         end
  1132.     elseif buff == 'weakness' then -- Weakness Timer --
  1133.         if gain then
  1134.             send_command('timers create "Weakness" 300 up')
  1135.         else
  1136.             send_command('timers delete "Weakness"')
  1137.         end
  1138.     end
  1139.     if not midaction() then
  1140.         status_change(player.status)
  1141.     end
  1142. end
  1143.  
  1144. -- In Game: //gs c (command), Macro: /console gs c (command), Bind: gs c (command) --
  1145. function self_command(command)
  1146.     if command == 'C1' then -- Accuracy Level Toggle --
  1147.         AccIndex = (AccIndex % #AccArray) + 1
  1148.         add_to_chat(158,'Accuracy Level: ' .. AccArray[AccIndex])
  1149.         status_change(player.status)
  1150.     elseif command == 'C17' then -- Ranged Weapon Toggle --
  1151.         WeaponIndex = (WeaponIndex % #WeaponArray) + 1
  1152.         add_to_chat(158,'Ranged Weapon: '..WeaponArray[WeaponIndex])
  1153.         status_change(player.status)
  1154.     elseif command == 'C5' then -- Auto Update Gear Toggle --
  1155.         status_change(player.status)
  1156.         add_to_chat(158,'Auto Update Gear')
  1157.     elseif command == 'C7' then -- PDT Toggle --
  1158.         if Armor == 'PDT' then
  1159.             Armor = 'None'
  1160.             add_to_chat(123,'PDT Set: [Unlocked]')
  1161.         else
  1162.             Armor = 'PDT'
  1163.             add_to_chat(158,'PDT Set: [Locked]')
  1164.         end
  1165.         status_change(player.status)
  1166.     elseif command == 'C15' then -- MDT Toggle --
  1167.         if Armor == 'MDT' then
  1168.             Armor = 'None'
  1169.             add_to_chat(123,'MDT Set: [Unlocked]')
  1170.         else
  1171.             Armor = 'MDT'
  1172.             add_to_chat(158,'MDT Set: [Locked]')
  1173.         end
  1174.         status_change(player.status)
  1175.     elseif command == 'C11' then -- SAM Roll Toggle --
  1176.         if Samurai_Roll == 'ON' then
  1177.             Samurai_Roll = 'OFF'
  1178.             add_to_chat(123,'SAM Roll: [OFF]')
  1179.         else
  1180.             Samurai_Roll = 'ON'
  1181.             add_to_chat(158,'SAM Roll: [ON]')
  1182.         end
  1183.         status_change(player.status)
  1184.     elseif command == 'C10' then -- Enmity Toggle --
  1185.         if Enmity == 'ON' then
  1186.             Enmity = 'OFF'
  1187.             add_to_chat(123,'Enmity Set: [OFF]')
  1188.         else
  1189.             Enmity = 'ON'
  1190.             add_to_chat(158,'Enmity Set: [ON]')
  1191.         end
  1192.         status_change(player.status)
  1193.     elseif command == 'C9' then -- Attack Toggle --
  1194.         if Attack == 'ON' then
  1195.             Attack = 'OFF'
  1196.             add_to_chat(123,'Attack: [OFF]')
  1197.         else
  1198.             Attack = 'ON'
  1199.             add_to_chat(158,'Attack: [ON]')
  1200.         end
  1201.         status_change(player.status)
  1202.     elseif command == 'C3' then -- Overkill Toggle --
  1203.         if Overkill == 'ON' then
  1204.             Overkill = 'OFF'
  1205.             add_to_chat(123,'Overkill: [OFF]')
  1206.         else
  1207.             Overkill = 'ON'
  1208.             add_to_chat(158,'Overkill: [ON]')
  1209.         end
  1210.     elseif command == 'C8' then -- Distance Toggle --
  1211.         if player.target.distance then
  1212.             target_distance = math.floor(player.target.distance*10)/10
  1213.             add_to_chat(158,'Distance: '..target_distance)
  1214.         else
  1215.             add_to_chat(123,'No Target Selected')
  1216.         end
  1217.     elseif command == 'C6' then -- Idle Toggle --
  1218.         IdleIndex = (IdleIndex % #IdleArray) + 1
  1219.         add_to_chat(158,'Idle Set: ' .. IdleArray[IdleIndex])
  1220.         status_change(player.status)
  1221.     elseif command == 'C2' then -- Auto RA/WS Toggle --
  1222.         if AutoMode == 'ON' then
  1223.             AutoMode = 'OFF'
  1224.             add_to_chat(123,'Auto Mode: [OFF]')
  1225.         else
  1226.             AutoMode = 'ON'
  1227.             add_to_chat(158,'Auto Mode: [ON]')
  1228.         end
  1229.     elseif command == 'TP' then
  1230.         add_to_chat(158,'TP Return: ['..tostring(player.tp)..']')
  1231.     elseif command:match('^SC%d$') then
  1232.         send_command('//' .. sc_map[command])
  1233.     end
  1234. end
  1235.  
  1236. function autoRA()
  1237.     send_command('@wait 2.7; input /ra <t>')
  1238. end
  1239.  
  1240. function autoWS() -- Change Auto WS Here --
  1241.     send_command('input /ws "Coronach" <t>')
  1242. end
  1243.  
  1244. function sub_job_change(newSubjob, oldSubjob)
  1245.     select_default_macro_book()
  1246. end
  1247.  
  1248. function set_macro_page(set,book)
  1249.     if not tonumber(set) then
  1250.         add_to_chat(123,'Error setting macro page: Set is not a valid number ('..tostring(set)..').')
  1251.         return
  1252.     end
  1253.     if set < 1 or set > 10 then
  1254.         add_to_chat(123,'Error setting macro page: Macro set ('..tostring(set)..') must be between 1 and 10.')
  1255.         return
  1256.     end
  1257.     if book then
  1258.         if not tonumber(book) then
  1259.             add_to_chat(123,'Error setting macro page: book is not a valid number ('..tostring(book)..').')
  1260.             return
  1261.         end
  1262.         if book < 1 or book > 20 then
  1263.             add_to_chat(123,'Error setting macro page: Macro book ('..tostring(book)..') must be between 1 and 20.')
  1264.             return
  1265.         end
  1266.         send_command('@input /macro book '..tostring(book)..';wait .1;input /macro set '..tostring(set))
  1267.     else
  1268.         send_command('@input /macro set '..tostring(set))
  1269.     end
  1270. end
  1271.  
  1272. function select_default_macro_book()
  1273.     -- Default macro set/book
  1274.     if player.sub_job == 'WAR' then
  1275.         set_macro_page(1, 16)
  1276.     elseif player.sub_job == 'DNC' then
  1277.         set_macro_page(1, 16)
  1278.     elseif player.sub_job == 'SAM' then
  1279.         set_macro_page(1, 16)
  1280.     elseif player.sub_job == 'DRG' then
  1281.         set_macro_page(1, 16)
  1282.     elseif player.sub_job == 'NIN' then
  1283.         set_macro_page(1, 16)
  1284.     else
  1285.         set_macro_page(1, 16)
  1286.     end
  1287. end
Advertisement
Add Comment
Please, Sign In to add comment