Advertisement
Arnan

WAR Lua August 2018

Aug 21st, 2018
193
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 45.61 KB | None | 0 0
  1.  
  2.         ---------------------------------------------
  3.         -- *** Arnan Warrior Gearswap Lua File *** --
  4.         ---------------------------------------------
  5.        
  6.             -- Commands --
  7.                
  8.                 -- In Game: //gs c, Macro: /console gs c, Bind: gs c --
  9.            
  10.                 -- gs c acc         Toggle accuracy tier for TP/WS
  11.                 -- gs c weapon      Toggle Weapon/TP Sets
  12.                 -- gs c idle        Toggle idle sets
  13.                
  14.                 -- gs c pdt         PDT on/off
  15.                 -- gs c mdt         MDT on/off
  16.                 -- gs c kiting      Kiting on/off
  17.                 -- gs c hybrid      Hybrid on/off
  18.                
  19.                 -- gs c retaliation Retaliation Gear on/off
  20.                 -- gs c twilight    Twilight on/off
  21.                
  22.         ----------
  23.         -- Sets --
  24.         ----------
  25.  
  26. function get_sets()
  27.     AccIndex = 1
  28.     AccArray = {"LowACC","MidACC","HighACC","MaxACC"} -- 4 Levels Of Accuracy Sets For TP/WS/Hybrid. 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. --
  29.     WeaponIndex = 1
  30.     WeaponArray = {"Ragnarok","Montante","Chango","Standard","Fencer","NINsub","DNCsub"} -- Default Main Weapon Is Conqueror. Can Delete Any Weapons/Sets That You Don't Need Or Replace/Add The New Weapons That You Want To Use. --
  31.     IdleIndex = 1
  32.     IdleArray = {"Full","DT","Warp"} -- Default Idle Set Is Movement --
  33.     Armor = 'None'
  34.     Twilight = 'None'
  35.     Retaliation = 'OFF' -- Set Default Retaliation ON or OFF Here --
  36.     Samurai_Roll = 'ON' -- Set Default SAM Roll ON or OFF Here --
  37.     target_distance = 6 -- Set Default Distance Here --
  38.     send_command('input /macro book 6;wait .1;input /macro set 1') -- Change Default Macro Book Here --
  39.     add_to_chat(158,'-[Warrior Lua Loaded]-')
  40.     add_to_chat(155,'Weapon: '..WeaponArray[WeaponIndex])
  41.     add_to_chat(155,'Accuracy Level: ' .. AccArray[AccIndex])
  42.     add_to_chat(158,'-----[Weapon Skill Keybinds]-----')
  43.     add_to_chat(155,'F10 - Full Break, F11 - Upheaval, F12 King\'s Justice')
  44.     add_to_chat(155,'Insert - Scourge, Delete - Resolution')
  45.    
  46.     -- Augments --
  47.     OHands={}
  48.     OHands.WSD={ name="Odyssean Gauntlets", augments={'Accuracy+15 Attack+15','Weapon skill damage +4%','STR+1','Accuracy+15',}}
  49.     OLegs={}
  50.     OLegs.STP={ name="Odyssean Cuisses", augments={'Accuracy+30','"Store TP"+7','Attack+15',}}
  51.     OLegs.WSD={ name="Odyssean Cuisses", augments={'Accuracy+27','Weapon skill damage +4%','AGI+10','Attack+12',}}
  52.     VFeet={}
  53.     VFeet.STP={ name="Valorous Greaves", augments={'Accuracy+25','"Store TP"+7',}}
  54.  
  55.     -- Cichol's Mantle Augments --
  56.     STRDAMantle = {name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}}
  57.     STRWSDMantle = {name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}}
  58.     VITWSDMantle = {name="Cichol's Mantle", augments={'VIT+20','Accuracy+20 Attack+20','VIT+10','Weapon skill damage +10%',}}
  59.     CritMantle = {name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Crit.hit rate+10',}}
  60.    
  61.         --------------------
  62.         -- Key Binds Load --
  63.         --------------------
  64.        
  65.         -- Key Bind Toggles (The Same for all my job files) (Ctrl Key) --
  66.         send_command('bind ^A input //gs c acc')
  67.         send_command('bind ^D input //gs c pdt')
  68.         send_command('bind ^H input //gs c hybrid')
  69.         send_command('bind ^I input //gs c idle')
  70.         send_command('bind ^K input //gs c kiting')
  71.         send_command('bind ^W input //gs c weapon')
  72.  
  73.         -- Stuff to control both Mules (Ctrl Key) --
  74.         send_command('bind ^X input /pcmd add ojomo;pause 5;input /pcmd add oeogo')
  75.         send_command('bind ^3 input //send oeogo //ma Cure 3 Arnan')
  76.         send_command('bind ^4 input //send oeogo //ma Cure 4 Arnan')
  77.         send_command('bind ^5 input //send oeogo //ma Refresh Arnan')
  78.         send_command('bind ^7 input //send oeogo //ma haste ojomo')
  79.         send_command('bind ^8 input //send oeogo //ma Dia 2 <t>;pause 2;input //send ojomo //ja Light Shot <t>')
  80.         send_command('bind ^9 input //send ojomo //follow arnan;pause 0.1;input //send oeogo //follow arnan')
  81.         send_command('bind ^0 input //send ojomo //assist arnan;pause 0.1;input //send oeogo //assist arnan')
  82.         send_command('bind ^- input //send ojomo /attack <t>;pause 0.1;input //send oeogo /attack <t>')
  83.  
  84.         -- COR (Mule) Job Ability Key Binds (Alt Key) --
  85.         send_command('bind !7 input //send ojomo //ja Crooked Cards <me>')
  86.         send_command('bind !8 input //send ojomo //ja Snake Eye <me>')
  87.         send_command('bind !9 input //send ojomo //ja Fold <me>')
  88.         send_command('bind !0 input //send ojomo //ja Random Deal <me>')
  89.  
  90.         -- COR (mule) Phantom Roll Key Binds (Alt Key) --
  91.         send_command('bind !A input //send ojomo //ja Allies\' Roll <me>')
  92.         send_command('bind !B input //send ojomo //ja Bolter\'s Roll <me>')
  93.         send_command('bind !C input //send ojomo //ja Chaos Roll <me>')
  94.         send_command('bind !D input //send ojomo //ja Dancer\'s Roll <me>')
  95.         send_command('bind !E input //send ojomo //ja Evoker\s Roll <me>')
  96.         send_command('bind !F input //send ojomo //ja Fighter\'s Roll <me>')
  97.         send_command('bind !G input //send ojomo //ja Gallant\'s Roll <me>')
  98.         send_command('bind !H input //send ojomo //ja Hunter\'s Roll <me>')
  99.         send_command('bind !Q input //send ojomo //ja Warlock\'s Roll <me>')       
  100.         send_command('bind !R input //send ojomo //ja Rogue\'s Roll <me>')
  101.         send_command('bind !S input //send ojomo //ja Samurai Roll <me>')
  102.         send_command('bind !T input //send ojomo //ja Tactician\'s Roll <me>')
  103.         send_command('bind !W input //send ojomo //ja Wizard\'s Roll <me>')
  104.         send_command('bind !X input //send ojomo //ja Corsair\'s Roll <me>')
  105.  
  106.         -- GEO (Mule) Job Ability Key Binds (Win Key) --
  107.         send_command('bind @3 input //send oeogo //ja Radial Arcana <me>')
  108.         send_command('bind @5 input //send oeogo //ma Refresh <me>')
  109.         send_command('bind @7 input //send oeogo //ja Blaze of Glory <me>')
  110.         send_command('bind @8 input //send oeogo //ja Ecliptic Attrition <me>')
  111.         send_command('bind @9 input //send oeogo //ja Life Cycle <me>')
  112.         send_command('bind @0 input //send oeogo //ja Lasting Emanation <me>')
  113.  
  114.         -- GEO (Mule) Nuke Key Binds (Win Key) --
  115.         send_command('bind @F1 input //send oeogo /ma Aero V <t>;pause 0.5;input //send oeogo /ma Aero IV <t>;pause 0.5;input //send oeogo /ma Aero III <t>;')
  116.         send_command('bind @F2 input //send oeogo /ma Fire V <t>;pause 0.5;input //send oeogo /ma Fire IV <t>;pause 0.5;input //send oeogo /ma Fire III <t>;')
  117.         send_command('bind @F3 input //send oeogo /ma Thunder V <t>;pause 0.5;input //send oeogo /ma Thunder IV <t>;pause 0.5;input //send oeogo /ma Thunder III <t>;')
  118.         send_command('bind @F4 input //send oeogo /ma Stone V <t>;pause 0.5;input //send oeogo /ma Stone IV <t>;pause 0.5;input //send oeogo /ma Stone III <t>;')
  119.         send_command('bind @F5 input //send oeogo /ma Water V <t>;pause 0.5;input //send oeogo /ma Water IV <t>;pause 0.5;input //send oeogo /ma Water III <t>;')
  120.         send_command('bind @F6 input //send oeogo /ma Blizzard V <t>;pause 0.5;input //send oeogo /ma Blizzard IV <t>;pause 0.5;input //send oeogo /ma Blizzard III <t>;')
  121.  
  122.         -- GEO (Mule) Indicolure Spells (Win Key) --
  123.         send_command('bind @1 input //send oeogo /ma Indi-Regen <me>')
  124.         send_command('bind @2 input //send oeogo /ma Indi-Refresh <me>')
  125.         send_command('bind @D input //send oeogo /ma Indi-DEX <me>')
  126.         send_command('bind @A input //send oeogo /ma Indi-Acumen <me>')
  127.         send_command('bind @F input //send oeogo /ma Indi-Fury <me>')
  128.         send_command('bind @H input //send oeogo /ma Indi-Haste <me>')
  129.         send_command('bind @K input //send oeogo /ma Indi-Focus <me>')
  130.         send_command('bind @P input //send oeogo /ma Indi-Precision <me>')
  131.         send_command('bind @Q input //send oeogo /ma Indi-Barrier <me>')
  132.         send_command('bind @S input //send oeogo /ma Indi-STR <me>')
  133.         send_command('bind @V input //send oeogo /ma Indi-Attunement <me>')
  134.  
  135.         -- GEO (Mule) Geocolure Spells (Alt+Win Keys) --
  136.         send_command('bind !@1 input //send oeogo /ma Geo-Regen <me>')
  137.         send_command('bind !@2 input //send oeogo /ma Geo-Refresh <me>')
  138.         send_command('bind !@A input //send oeogo /ma Geo-Malaise <t>')
  139.         send_command('bind !@D input //send oeogo /ma Geo-DEX <me>')
  140.         send_command('bind !@F input //send oeogo /ma Geo-Frailty <t>')
  141.         send_command('bind !@H input //send oeogo /ma Geo-Haste <me>')
  142.         send_command('bind !@K input //send oeogo /ma Geo-Languor <t>')
  143.         send_command('bind !@P input //send oeogo /ma Geo-Torpor <t>') --
  144.         send_command('bind !@Q input //send oeogo /ma Geo-Wilt <t>') --
  145.         send_command('bind !@S input //send oeogo /ma Geo-STR <me>')
  146.         send_command('bind !@V input //send oeogo /ma Geo-Vex <t>')
  147.  
  148.         -- GEO (Mule) Entrust Indicolure Spells (Ctrl+Win Keys) --
  149.         send_command('bind ^@1 input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Regen Arnan')
  150.         send_command('bind ^@2 input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Refresh Arnan')
  151.         send_command('bind ^@A input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Acumen Arnan')
  152.         send_command('bind ^@D input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-DEX Arnan')
  153.         send_command('bind ^@F input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Fury Arnan')
  154.         send_command('bind ^@H input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Haste Arnan')
  155.         send_command('bind ^@K input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Focus Arnan')
  156.         send_command('bind ^@P input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Precision Arnan')
  157.         send_command('bind ^@Q input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Barrier Arnan')
  158.         send_command('bind ^@S input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-STR Arnan')
  159.         send_command('bind ^@V input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Attunement Arnan')
  160.        
  161.         -- Warrior Job Key Binds (Ctrl & Ctrl+Alt Keys) --
  162.         send_command('bind ^P input //ja Provoke <t>')
  163.         send_command('bind ^Z input //ja Berserk <me>')
  164.        
  165.         -- Warrior Weapon Skill Key Binds --
  166.         send_command('bind F10 input /ws "Full Break" <t>')
  167.         send_command('bind F11 input /ws "Upheaval" <t>')
  168.         send_command('bind F12 input /ws "King\'s Justice" <t>')
  169.         send_command('bind Insert input /ws "Scourge" <t>')
  170.         send_command('bind Delete input /ws "Resolution" <t>')
  171.  
  172.         ----------------------
  173.         -- Key Binds Unload --
  174.         ----------------------
  175.  
  176.         function file_unload()
  177.         -- Unbind Toggles --
  178.         send_command('unbind ^A')
  179.         send_command('unbind ^D')
  180.         send_command('unbind ^H')
  181.         send_command('unbind ^I')
  182.         send_command('unbind ^K')
  183.         send_command('unbind ^W')
  184.         -- Unbind Stuff to control both Mules --
  185.         send_command('unbind ^X')
  186.         send_command('unbind ^3')
  187.         send_command('unbind ^4')
  188.         send_command('unbind ^4')
  189.         send_command('unbind ^7')
  190.         send_command('unbind ^8')
  191.         send_command('unbind ^9')
  192.         send_command('unbind ^0')
  193.         send_command('unbind ^-')
  194.         -- Unbind COR JA's --
  195.         send_command('unbind !7')
  196.         send_command('unbind !8')
  197.         send_command('unbind !9')
  198.         send_command('unbind !0')
  199.         -- Unbind COR Rolls --
  200.         send_command('unbind !A')
  201.         send_command('unbind !B')
  202.         send_command('unbind !C')
  203.         send_command('unbind !D')
  204.         send_command('unbind !E')
  205.         send_command('unbind !F')
  206.         send_command('unbind !G')
  207.         send_command('unbind !H')
  208.         send_command('unbind !Q')
  209.         send_command('unbind !R')
  210.         send_command('unbind !S')
  211.         send_command('unbind !T')
  212.         send_command('unbind !W')
  213.         send_command('unbind !X')
  214.         -- Unbind GEO JA's --
  215.         send_command('unbind @3')
  216.         send_command('unbind @5')
  217.         send_command('unbind @7')
  218.         send_command('unbind @8')
  219.         send_command('unbind @9')
  220.         send_command('unbind @0')
  221.         -- Unbind GEO Nukes --
  222.         send_command('unbind @F1')
  223.         send_command('unbind @F2')
  224.         send_command('unbind @F3')
  225.         send_command('unbind @F4')
  226.         send_command('unbind @F5')
  227.         send_command('unbind @F6')
  228.         -- Unbind GEO Indi Spells --
  229.         send_command('unbind @1')
  230.         send_command('unbind @2')
  231.         send_command('unbind @A')
  232.         send_command('unbind @D')
  233.         send_command('unbind @F')
  234.         send_command('unbind @H')
  235.         send_command('unbind @K')
  236.         send_command('unbind @P')
  237.         send_command('unbind @Q')
  238.         send_command('unbind @S')
  239.         send_command('unbind @V')
  240.         -- Unbind GEO Geocolure Spells --
  241.         send_command('unbind !@1')
  242.         send_command('unbind !@2')
  243.         send_command('unbind !@A')
  244.         send_command('unbind !@D')
  245.         send_command('unbind !@F')
  246.         send_command('unbind !@H')
  247.         send_command('unbind !@K')
  248.         send_command('unbind !@P')
  249.         send_command('unbind !@Q')
  250.         send_command('unbind !@S')
  251.         send_command('unbind !@V')
  252.         -- Unbind GEO Entrust Spells --
  253.         send_command('unbind ^@1')
  254.         send_command('unbind ^@2')
  255.         send_command('unbind ^@A')
  256.         send_command('unbind ^@D')
  257.         send_command('unbind ^@F')
  258.         send_command('unbind ^@H')
  259.         send_command('unbind ^@K')
  260.         send_command('unbind ^@P')
  261.         send_command('unbind ^@Q')
  262.         send_command('unbind ^@S')
  263.         send_command('unbind ^@V')
  264.         -- Unbind WAR Job Binds --
  265.         send_command('unbind ^P')
  266.         send_command('unbind ^Z')
  267.         -- Unload Weapon Skill Key Binds --
  268.         send_command('unbind F10')     
  269.         send_command('unbind F11')     
  270.         send_command('unbind F12')         
  271.         send_command('unbind Delete')
  272.         end
  273.    
  274.     -- Gavialis Helm --
  275.     elements = {}
  276.     elements.equip = {head="Gavialis Helm"}
  277.     elements["Ukko's Fury"] = S{"Light","Lightning","Wind"}
  278.     elements.Resolution = S{"Lightning","Wind","Earth"}
  279.  
  280.    
  281.     --------------------
  282.     -- Idle/Town Sets --
  283.     --------------------
  284.     sets.Idle = {
  285.             ammo="Staunch Tathlum +1",
  286.             head="Valorous Mask",
  287.             neck="Bathy Choker +1",
  288.             ear1="Infused Earring",        
  289.             ear2="Odnowa Earring +1",
  290.             body="Tartarus Platemail",
  291.             hands="Sulev. Gauntlets +2",
  292.             ring1="Moonlight Ring",        
  293.             ring2="Moonlight Ring",
  294.             back="Moonlight Cape",
  295.             waist="Flume Belt +1",
  296.             legs="Sulev. Cuisses +2",
  297.             feet="Hermes' Sandals"}
  298.  
  299.     sets.Idle.Full = {}
  300.     sets.Idle.Full.Ragnarok = set_combine(sets.Idle,{
  301.             main="Ragnarok",
  302.             sub="Utu Grip"})
  303.     sets.Idle.Full.Montante = set_combine(sets.Idle,{
  304.             main="Montante +1",
  305.             sub="Utu Grip"})
  306.     sets.Idle.Full.Chango = set_combine(sets.Idle,{
  307.             main="Chango",
  308.             sub="Utu Grip"})
  309.     sets.Idle.Full.Standard = set_combine(sets.Idle,{})
  310.     sets.Idle.Full.Fencer = set_combine(sets.Idle,{
  311.             sub="Blurred Shield +1"})
  312.     sets.Idle.Full.NINsub = set_combine(sets.Idle,{})
  313.     sets.Idle.Full.DNCsub = set_combine(sets.Idle,{})
  314.  
  315.     sets.Idle.DT = {}
  316.     sets.Idle.DT.Ragnarok = set_combine(sets.Idle,{
  317.             main="Ragnarok",
  318.             sub="Utu Grip"})
  319.     sets.Idle.DT.Montante = set_combine(sets.Idle,{
  320.             main="Montante +1",
  321.             sub="Utu Grip"})
  322.     sets.Idle.DT.Chango = set_combine(sets.Idle,{
  323.             main="Chango",
  324.             sub="Utu Grip"})
  325.     sets.Idle.DT.Standard = set_combine(sets.Idle,{})
  326.     sets.Idle.DT.Fencer = set_combine(sets.Idle,{
  327.             sub="Blurred Shield +1"})
  328.     sets.Idle.DT.NINsub = set_combine(sets.Idle,{})
  329.     sets.Idle.DT.DNCsub = set_combine(sets.Idle,{})
  330.    
  331.     sets.Idle.Warp = {}
  332.     sets.Idle.Warp.Ragnarok = set_combine(sets.Idle,{
  333.             main="Ragnarok",
  334.             sub="Utu Grip",
  335.             ring2="Warp Ring"})
  336.     sets.Idle.Warp.Montante = set_combine(sets.Idle,{
  337.             main="Montante +1",
  338.             sub="Utu Grip",
  339.             ring2="Warp Ring"})
  340.     sets.Idle.Warp.Chango = set_combine(sets.Idle,{
  341.             main="Chango",
  342.             sub="Utu Grip",
  343.             ring2="Warp Ring"})
  344.     sets.Idle.Warp.Standard = set_combine(sets.Idle,{
  345.             ring2="Warp Ring"})
  346.     sets.Idle.Warp.Fencer = set_combine(sets.Idle,{
  347.             sub="Blurred Shield +1",
  348.             ring2="Warp Ring"})
  349.     sets.Idle.Warp.NINsub = set_combine(sets.Idle,{
  350.             ring2="Warp Ring"})
  351.     sets.Idle.Warp.DNCsub = set_combine(sets.Idle,{
  352.             ring2="Warp Ring"})
  353.    
  354.     sets.Twilight = {head="Twilight Helm",body="Twilight Mail"}
  355.  
  356.     -------------
  357.     -- TP Sets --
  358.     -------------
  359.    
  360.     -- TP Base Set --
  361.     sets.TP = {
  362.             ammo="Yetshila +1",
  363.             head="Flam. Zucchetto +2",
  364.             neck="Asperity Necklace",
  365.             ear1="Cessance Earring",
  366.             ear2="Brutal Earring",
  367.             Body="Agoge Lorica +3",
  368.             hands="Sulev. Gauntlets +2",
  369.             ring1="Hetairoi Ring",
  370.             ring2="Niqmaddu Ring",
  371.             back=STRDAMantle,
  372.             waist="Ioskeha Belt +1",
  373.             legs="Pumm. Cuisses +3",
  374.             feet="Pumm. Calligae +3"}
  375.     sets.TP.MidACC = set_combine(sets.TP,{})
  376.     sets.TP.HighACC = set_combine(sets.TP.MidACC,{})
  377.     sets.TP.MaxACC = set_combine(sets.TP.HighACC,{})
  378.  
  379.     -- Ragnarok TP Sets --
  380.     sets.TP.Ragnarok = set_combine(sets.TP,{
  381.             ammo="Ginsen",
  382.             main="Ragnarok",
  383.             sub="Utu Grip",
  384.             neck="Ainia Collar",
  385.             body="Emicho Haubert +1",
  386.             hands="Emi. Gauntlets +1",
  387.             ring1="Flamma Ring",
  388.             legs=OLegs.STP})
  389.     sets.TP.Ragnarok.MidACC = set_combine(sets.TP.Ragnarok,{})
  390.     sets.TP.Ragnarok.HighACC = set_combine(sets.TP.Ragnarok.MidACC,{})
  391.     sets.TP.Ragnarok.MaxACC = set_combine(sets.TP.Ragnarok.HighACC,{})
  392.  
  393.     -- Ragnarok(SAM Roll) TP Sets --
  394.     sets.TP.Ragnarok.STP = set_combine(sets.TP,{
  395.             main="Ragnarok",
  396.             sub="Utu Grip"})
  397.     sets.TP.Ragnarok.MidACC.STP = set_combine(sets.TP.MidACC,{})
  398.     sets.TP.Ragnarok.HighACC.STP = set_combine(sets.TP.HighACC,{})
  399.     sets.TP.Ragnarok.MaxACC.STP = set_combine(sets.TP.MaxACC,{})
  400.    
  401.     -- Montante TP Sets --
  402.     sets.TP.Montante = set_combine(sets.TP,{
  403.             main="Montante +1",
  404.             sub="Utu Grip"})
  405.     sets.TP.Montante.MidACC = set_combine(sets.TP.Montante,{})
  406.     sets.TP.Montante.HighACC = set_combine(sets.TP.Montante.MidACC,{})
  407.     sets.TP.Montante.MaxACC = set_combine(sets.TP.Montante.HighACC,{})
  408.  
  409.     -- Montante(SAM Roll) TP Sets --
  410.     sets.TP.Montante.STP = set_combine(sets.TP,{
  411.             main="Montante +1",
  412.             sub="Utu Grip"})
  413.     sets.TP.Montante.MidACC.STP = set_combine(sets.TP.MidACC,{})
  414.     sets.TP.Montante.HighACC.STP = set_combine(sets.TP.HighACC,{})
  415.     sets.TP.Montante.MaxACC.STP = set_combine(sets.TP.MaxACC,{})
  416.  
  417.     -- Chango TP Sets --
  418.     sets.TP.Chango = set_combine(sets.TP,{
  419.             main="Chango",
  420.             sub="Utu Grip"})
  421.     sets.TP.Chango.MidACC = set_combine(sets.TP.Chango,{})
  422.     sets.TP.Chango.HighACC = set_combine(sets.TP.Chango.MidACC,{})
  423.     sets.TP.Chango.MaxACC = set_combine(sets.TP.Chango.HighACC,{})
  424.  
  425.     -- Chango(SAM Roll) TP Sets --
  426.     sets.TP.Chango.STP = set_combine(sets.TP,{
  427.             main="Chango",
  428.             sub="Utu Grip"})
  429.     sets.TP.Chango.MidACC.STP = set_combine(sets.TP.MidACC,{})
  430.     sets.TP.Chango.HighACC.STP = set_combine(sets.TP.HighACC,{})
  431.     sets.TP.Chango.MaxACC.STP = set_combine(sets.TP.MaxACC,{})
  432.    
  433.     -- Standard TP Sets --
  434.     sets.TP.Standard = set_combine(sets.TP,{})
  435.     sets.TP.Standard.MidACC = set_combine(sets.TP.MidACC,{})
  436.     sets.TP.Standard.HighACC = set_combine(sets.TP.HighACC,{})
  437.     sets.TP.Standard.MaxACC = set_combine(sets.TP.MaxACC,{})
  438.  
  439.     -- Standard(SAM Roll) TP Sets --
  440.     sets.TP.Standard.STP = set_combine(sets.TP,{})
  441.     sets.TP.Standard.MidACC.STP = set_combine(sets.TP.MidACC,{})
  442.     sets.TP.Standard.HighACC.STP = set_combine(sets.TP.HighACC,{})
  443.     sets.TP.Standard.MaxACC.STP = set_combine(sets.TP.MaxACC,{})
  444.    
  445.     -- Fencer TP Sets --
  446.     sets.TP.Fencer = set_combine(sets.TP,{
  447.             sub="Blurred Shield +1"})
  448.     sets.TP.Fencer.MidACC = set_combine(sets.TP.Fencer,{})
  449.     sets.TP.Fencer.HighACC = set_combine(sets.TP.Fencer.MidACC,{})
  450.     sets.TP.Fencer.MaxACC = set_combine(sets.TP.Fencer.HighACC,{})
  451.  
  452.     -- Fencer(SAM Roll) TP Sets --
  453.     sets.TP.Fencer.STP = set_combine(sets.TP,{
  454.             sub="Blurred Shield +1"})
  455.     sets.TP.Fencer.MidACC.STP = set_combine(sets.TP.Fencer.MidACC,{})
  456.     sets.TP.Fencer.HighACC.STP = set_combine(sets.TP.Fencer.HighACC,{})
  457.     sets.TP.Fencer.MaxACC.STP = set_combine(sets.TP.Fencer.MaxACC,{})
  458.  
  459.     -- NINsub TP Sets --
  460.     sets.TP.NINsub = set_combine(sets.TP,{
  461.             ear1="Suppanomimi",
  462.             hands="Emi. Gauntlets +1"})
  463.     sets.TP.NINsub.MidACC = set_combine(sets.TP.NINsub,{})
  464.     sets.TP.NINsub.HighACC = set_combine(sets.TP.NINsub.MidACC,{})
  465.     sets.TP.NINsub.MaxACC = set_combine(sets.TP.NINsub.HighACC,{})
  466.  
  467.     -- NINsub(SAM Roll) TP Sets --
  468.     sets.TP.NINsub.STP = set_combine(sets.TP,{
  469.             ear1="Suppanomimi",
  470.             hands="Emi. Gauntlets +1"})
  471.     sets.TP.NINsub.MidACC.STP = set_combine(sets.TP.NINsub.MidACC,{})
  472.     sets.TP.NINsub.HighACC.STP = set_combine(sets.TP.NINsub.HighACC,{})
  473.     sets.TP.NINsub.MaxACC.STP = set_combine(sets.TP.NINsub.MaxACC,{})
  474.    
  475.     -- DNCsub TP Sets --
  476.     sets.TP.DNCsub = set_combine(sets.TP,{
  477.             ear1="Suppanomimi",
  478.             ear2="Eabani Earring",
  479.             hands="Emi. Gauntlets +1",
  480.             waist="Reiki Yotai"})
  481.     sets.TP.DNCsub.MidACC = set_combine(sets.TP.DNCsub,{})
  482.     sets.TP.DNCsub.HighACC = set_combine(sets.TP.DNCsub.MidACC,{})
  483.     sets.TP.DNCsub.MaxACC = set_combine(sets.TP.DNCsub.HighACC,{})
  484.  
  485.     -- DNCsub(SAM Roll) TP Sets --
  486.     sets.TP.DNCsub.STP = set_combine(sets.TP,{
  487.             ear1="Suppanomimi",
  488.             ear2="Eabani Earring",
  489.             hands="Emi. Gauntlets +1",
  490.             waist="Reiki Yotai"})
  491.     sets.TP.DNCsub.MidACC.STP = set_combine(sets.TP.DNCsub.MidACC,{})
  492.     sets.TP.DNCsub.HighACC.STP = set_combine(sets.TP.DNCsub.HighACC,{})
  493.     sets.TP.DNCsub.MaxACC.STP = set_combine(sets.TP.DNCsub.MaxACC,{})
  494.    
  495.     -- Mighty Strikes TP Set --
  496.     sets.TP.MS = {}
  497.  
  498.     -- Retaliation Set --
  499.     sets.TP.Retaliation = {}
  500.  
  501.     -----------------------
  502.     -- Damage Taken Sets --
  503.     -----------------------
  504.    
  505.     -- PDT/MDT Sets --
  506.     sets.PDT = {
  507.             ammo="Staunch Tathlum +1",
  508.             head="Sulevia's Mask +2",
  509.             neck="Loricate Torque +1",
  510.             ear1="Odnowa Earring",         
  511.             ear2="Odnowa Earring +1",
  512.             body="Tartarus Platemail",
  513.             hands="Sulev. Gauntlets +2",
  514.             ring1="Moonlight Ring",        
  515.             ring2="Moonlight Ring",
  516.             back="Moonlight Cape",
  517.             waist="Tempus Fugit",
  518.             legs="Sulev. Cuisses +2",
  519.             feet="Sulev. Leggings +2"}
  520.  
  521.     sets.MDT = set_combine(sets.PDT,{})
  522.  
  523.     -- Hybrid/Kiting Sets --
  524.     sets.TP.Hybrid = set_combine(sets.PDT,{
  525.             ear1="Cessance Earring",
  526.             ear2="Brutal Earring"})
  527.     sets.TP.Hybrid.MidACC = set_combine(sets.TP.Hybrid,{})
  528.     sets.TP.Hybrid.HighACC = set_combine(sets.TP.Hybrid.MidACC,{})
  529.     sets.TP.Hybrid.MaxACC = set_combine(sets.TP.Hybrid.HighACC,{})
  530.  
  531.     sets.Kiting = set_combine(sets.PDT,{feet="Hermes' Sandals"})
  532.  
  533.     -----------------------
  534.     -- Weapon Skill Sets --
  535.     -----------------------
  536.        
  537.     -- Weapon Skill Base Sets --
  538.     sets.WS = {
  539.             ammo="Seeth. Bomblet +1",
  540.             head="Flamma Zucchetto +2",
  541.             neck="Fotia Gorget",
  542.             ear1="Moonshade Earring",
  543.             ear2="Brutal Earring",
  544.             body="Agoge Lorica +3",
  545.             hands="Sulev. Gauntlets +2",
  546.             ring1="Regal Ring",
  547.             ring2="Niqmaddu Ring",
  548.             back=STRDAMantle,
  549.             waist="Fotia Belt",
  550.             legs="Sulev. Cuisses +2",
  551.             feet="Pumm. Calligae +3"}
  552.     sets.WS.MidACC = set_combine(sets.WS,{})
  553.     sets.WS.HighACC = set_combine(sets.WS.MidACC,{})
  554.     sets.WS.MaxACC = set_combine(sets.WS.HighACC,{})
  555.    
  556.     sets.WS.Argosy = {
  557.             ammo="Seeth. Bomblet +1",
  558.             head="Flam. Zucchetto +2",
  559.             neck="Fotia Gorget",
  560.             ear1="Moonshade Earring",
  561.             ear2="Brutal Earring",
  562.             body="Argosy Hauberk +1",
  563.             hands="Argosy Mufflers +1",
  564.             ring1="Regal Ring",
  565.             ring2="Niqmaddu Ring",
  566.             back=STRDAMantle,
  567.             waist="Fotia Belt",
  568.             legs="Argosy Breeches +1",
  569.             feet="Flam. Gambieras +2"}
  570.     sets.WS.MidACC = set_combine(sets.WS.Argosy,{
  571.             head="Argosy Celata +1",
  572.             feet="Pumm. Calligae +3"})
  573.     sets.WS.HighACC = set_combine(sets.WS.Argosy.MidACC,{})
  574.     sets.WS.MaxACC = set_combine(sets.WS.Argosy.HighACC,{})
  575.            
  576.     sets.WS.OneHit = {
  577.             ammo="Knobkierrie",
  578.             head="Agoge mask +3",
  579.             neck="Fotia Gorget",
  580.             ear1="Moonshade Earring",
  581.             ear2="Ishvara Earring",
  582.             body="Pumm. Lorica +3",
  583.             hands=OHands.WSD,
  584.             ring1="Regal Ring",
  585.             ring2="Niqmaddu Ring",
  586.             back=STRWSDMantle,
  587.             waist="Fotia Belt",
  588.             legs=OLegs.WSD,
  589.             feet="Sulev. Leggings +2"}
  590.     sets.WS.OneHit.MidACC = set_combine(sets.WS.OneHit,{})
  591.     sets.WS.OneHit.HighACC = set_combine(sets.WS.OneHit.MidACC,{})
  592.     sets.WS.OneHit.MaxACC = set_combine(sets.WS.OneHit.HighACC,{})
  593.    
  594.     sets.WS.MABWS = {
  595.             ammo="Pemphredo Tathlum",
  596.             head="Jumalik Helm",
  597.             neck="Sanctity Necklace",
  598.             ear1="Friomisi Earring",
  599.             ear2="Crematio Earring",
  600.             body="Found. Breastplate",
  601.             hands="Founder's Gauntlets",
  602.             ring1="Shiva Ring +1",
  603.             ring2="Shiva Ring +1",
  604.             back="Argochampsa Mantle",
  605.             waist="Eschan Stone",
  606.             legs="Eschite Cuisses",
  607.             feet="Founder's Greaves"}
  608.  
  609.     -- Great Axe Weapon Skill Sets --
  610.    
  611.     sets.WS.Upheaval = set_combine(sets.WS.OneHit,{
  612.             back=VITWSDMantle})
  613.     sets.WS.Upheaval.MidACC = set_combine(sets.WS.OneHit.MidACC,{
  614.             back=VITWSDMantle})
  615.     sets.WS.Upheaval.HighACC = set_combine(sets.WS.OneHit.HighACC,{
  616.             back=VITWSDMantle})
  617.     sets.WS.Upheaval.MaxACC = set_combine(sets.WS.OneHit.MaxACC,{
  618.             back=VITWSDMantle})
  619.    
  620.     sets.WS["Ukko's Fury"] = set_combine(sets.WS.Argosy,{
  621.             ammo="Yetshila +1",
  622.             hands="Flam. Manopolas +2",
  623.             ring1="Begrudging Ring",
  624.             back=CritMantle})
  625.     sets.WS["Ukko's Fury"].MidACC = set_combine(sets.WS.Argosy.MidACC,{})
  626.     sets.WS["Ukko's Fury"].HighACC = set_combine(sets.WS.Argosy.HighACC,{})
  627.     sets.WS["Ukko's Fury"].MaxACC = set_combine(sets.WS.Argosy.MaxACC,{})
  628.    
  629.     sets.WS["Raging Rush"] = set_combine(sets.WS.Argosy,{
  630.             ammo="Yetshila +1",
  631.             hands="Flam. Manopolas +2",
  632.             ring1="Begrudging Ring",
  633.             back=CritMantle})
  634.     sets.WS["Raging Rush"].MidACC  = set_combine(sets.WS.Argosy.MidACC,{
  635.             ammo="Yetshila +1",
  636.             hands="Flam. Manopolas +2",
  637.             ring1="Begrudging Ring",
  638.             back=CritMantle})
  639.     sets.WS["Raging Rush"].HighACC = set_combine(sets.WS.Argosy.HighACC,{
  640.             hands="Flam. Manopolas +2",
  641.             ring1="Begrudging Ring",
  642.             back=CritMantle})
  643.     sets.WS["Raging Rush"].MaxACC = set_combine(sets.WS.Argosy.MaxACC,{
  644.             hands="Flam. Manopolas +2",
  645.             back=CritMantle})
  646.  
  647.     sets.WS["Steel Cyclone"] = set_combine(sets.WS.OneHit,{})
  648.     sets.WS["Steel Cyclone"].MidACC = set_combine(sets.WS.OneHit.MidACC,{})
  649.     sets.WS["Steel Cyclone"].HighACC = set_combine(sets.WS.OneHit.HighACC,{})
  650.     sets.WS["Steel Cyclone"].MaxACC = set_combine(sets.WS.OneHit.MaxACC,{})
  651.    
  652.     sets.WS["King's Justice"] = set_combine(sets.WS.Argosy,{})
  653.     sets.WS["King's Justice"].MidACC = set_combine(sets.WS.Argosy.MidACC,{})
  654.     sets.WS["King's Justice"].HighACC = set_combine(sets.WS.Argosy.HighACC,{})
  655.     sets.WS["King's Justice"].MaxACC = set_combine(sets.WS.Argosy.MaxACC,{})
  656.  
  657.     sets.WS["Fell Cleave"] = set_combine(sets.WS.OneHit,{})
  658.     sets.WS['Fell Cleave'].MidACC = set_combine(sets.WS.OneHit.MidACC,{})
  659.     sets.WS['Fell Cleave'].HighACC = set_combine(sets.WS.OneHit.HighACC,{})
  660.     sets.WS['Fell Cleave'].MaxACC = set_combine(sets.WS.OneHit.MaxACC,{})  
  661.    
  662.     sets.WS["Full Break"] = set_combine(sets.WS.OneHit,{})
  663.     sets.WS["Full Break"].MidACC = set_combine(sets.WS.OneHit.MidACC,{})
  664.     sets.WS["Full Break"].HighACC = set_combine(sets.WS.OneHit.HighACC,{})
  665.     sets.WS["Full Break"].MaxACC = set_combine(sets.WS.OneHit.MaxACC,{})
  666.  
  667.     -- Great Sword Weapon Skill Sets --
  668.     sets.WS.Resolution = set_combine(sets.WS.Argosy,{})
  669.     sets.WS.Resolution.MidACC = set_combine(sets.WS.Argosy.MidACC,{})
  670.     sets.WS.Resolution.HighACC = set_combine(sets.WS.Argosy.HighACC,{})
  671.     sets.WS.Resolution.MaxACC = set_combine(sets.WS.Argosy.MaxACC,{})
  672.    
  673.     sets.WS.Scourge = set_combine(sets.WS.OneHit,{
  674.             back=VITWSDMantle})
  675.     sets.WS.Scourge.MidACC = set_combine(sets.WS.OneHit.MidACC,{
  676.             back=VITWSDMantle})
  677.     sets.WS.Scourge.HighACC = set_combine(sets.WS.OneHit.HighACC,{
  678.             back=VITWSDMantle})
  679.     sets.WS.Scourge.MaxACC = set_combine(sets.WS.OneHit.MaxACC,{
  680.             back=VITWSDMantle})
  681.                
  682.     sets.WS['Ground Strike'] = set_combine(sets.WS.OneHit,{})  
  683.     sets.WS['Ground Strike'].MidACC = set_combine(sets.WS.OneHit.MidACC,{})
  684.     sets.WS['Ground Strike'].HighACC = set_combine(sets.WS.OneHit.HighACC,{})
  685.     sets.WS['Ground Strike'].MaxACC = set_combine(sets.WS.OneHit.MaxACC,{})
  686.    
  687.     sets.WS.Shockwave = {}
  688.    
  689.     sets.WS['Herculean Slash'] = set_combine(sets.WS.MABWS,{}) 
  690.     sets.WS['Herculean Slash'].MidACC = set_combine(sets.WS.MABWS,{})
  691.     sets.WS['Herculean Slash'].HighACC = set_combine(sets.WS.MABWS,{})
  692.     sets.WS['Herculean Slash'].MaxACC = set_combine(sets.WS.MABWS,{})
  693.    
  694.     -- Sword Weapon Skill Sets --
  695.  
  696.     sets.WS['Vorpal Blade'] = set_combine(sets.WS.Argosy,{
  697.             ammo="Yetshila +1",
  698.             hands="Flam. Manopolas +2",
  699.             ring1="Begrudging Ring",
  700.             back=CritMantle})
  701.     sets.WS['Vorpal Blade'].MidACC = set_combine(sets.WS.Argosy.MidACC,{
  702.             ammo="Yetshila +1",
  703.             hands="Flam. Manopolas +2",
  704.             ring1="Begrudging Ring",
  705.             back=CritMantle})
  706.     sets.WS['Vorpal Blade'].HighACC = set_combine(sets.WS.Argosy.HighACC,{
  707.             hands="Flam. Manopolas +2",
  708.             ring1="Begrudging Ring",
  709.             back=CritMantle})
  710.     sets.WS['Vorpal Blade'].MaxACC = set_combine(sets.WS.Argosy.MaxACC,{
  711.             hands="Flam. Manopolas +2",
  712.             back=CritMantle})  
  713.                    
  714.     sets.WS['Savage Blade'] = set_combine(sets.WS.OneHit,{})   
  715.     sets.WS['Savage Blade'].MidACC = set_combine(sets.WS.OneHit.MidACC,{})
  716.     sets.WS['Savage Blade'].HighACC = set_combine(sets.WS.OneHit.HighACC,{})
  717.     sets.WS['Savage Blade'].MaxACC = set_combine(sets.WS.OneHit.MaxACC,{}) 
  718.    
  719.     sets.WS.Requiescat = set_combine(sets.WS,{})
  720.     sets.WS.Requiescat.MidACC = set_combine(sets.WS.MidACC,{})
  721.     sets.WS.Requiescat.HighACC = set_combine(sets.WS.HighACC,{})
  722.     sets.WS.Requiescat.MaxACC = set_combine(sets.WS.MaxACC,{})
  723.  
  724.     sets.WS['Sanguine Blade'] = set_combine(sets.WS.MABWS,{
  725.             head="Pixie Hairpin +1",
  726.             ring1="Archon Ring"})  
  727.     sets.WS['Sanguine Blade'].MidACC = set_combine(sets.WS.MABWS,{
  728.             head="Pixie Hairpin +1",
  729.             ring1="Archon Ring"})  
  730.     sets.WS['Sanguine Blade'].HighACC = set_combine(sets.WS.MABWS,{
  731.             head="Pixie Hairpin +1",
  732.             ring1="Archon Ring"})  
  733.     sets.WS['Sanguine Blade'].MaxACC = set_combine(sets.WS.MABWS,{
  734.             head="Pixie Hairpin +1",
  735.             ring1="Archon Ring"})  
  736.    
  737.     -- Axe Weapon Skill Sets --
  738.    
  739.     sets.WS.Rampage = set_combine(sets.WS.Argosy,{
  740.             ammo="Yetshila +1",
  741.             hands="Flam. Manopolas +2",
  742.             ring1="Begrudging Ring",
  743.             back=CritMantle})
  744.     sets.WS.Rampage.MidACC = set_combine(sets.WS.Argosy.MidACC,{
  745.             ammo="Yetshila +1",
  746.             hands="Flam. Manopolas +2",
  747.             ring1="Begrudging Ring",
  748.             back=CritMantle})
  749.     sets.WS.Rampage.HighACC = set_combine(sets.WS.Argosy.HighACC,{
  750.             hands="Flam. Manopolas +2",
  751.             back=CritMantle})
  752.     sets.WS.Rampage.MaxACC = set_combine(sets.WS.Argosy.MaxACC,{
  753.             hands="Flam. Manopolas +2",
  754.             ring1="Begrudging Ring",
  755.             back=CritMantle})  
  756.                
  757.     sets.WS.Ruinator = set_combine(sets.WS.Argosy,{})
  758.     sets.WS.Ruinator.MidACC = set_combine(sets.WS.Argosy.MidACC,{})
  759.     sets.WS.Ruinator.HighACC = set_combine(sets.WS.Argosy.HighACC,{})
  760.     sets.WS.Ruinator.MaxACC = set_combine(sets.WS.Argosy.MaxACC,{})    
  761.                
  762.     sets.WS.Cloudsplitter = set_combine(sets.WS.MABWS,{})  
  763.     sets.WS.Cloudsplitter.MidACC = set_combine(sets.WS.MABWS,{})
  764.     sets.WS.Cloudsplitter.HighACC = set_combine(sets.WS.MABWS,{})
  765.     sets.WS.Cloudsplitter.MaxACC = set_combine(sets.WS.MABWS,{})
  766.                
  767.     sets.WS['Mistral Axe'] = set_combine(sets.WS.OneHit,{})
  768.     sets.WS['Mistral Axe'].MidACC = set_combine(sets.WS.OneHit.MidACC,{})
  769.     sets.WS['Mistral Axe'].HighACC = set_combine(sets.WS.OneHit.HighACC,{})
  770.     sets.WS['Mistral Axe'].MaxACC = set_combine(sets.WS.OneHit.MaxACC,{})  
  771.    
  772.     sets.WS.Decimation = set_combine(sets.WS.Argosy,{})
  773.     sets.WS.Decimation.MidACC = set_combine(sets.WS.Argosy.MidACC,{})
  774.     sets.WS.Decimation.HighACC = set_combine(sets.WS.Argosy.HighACC,{})
  775.     sets.WS.Decimation.MaxACC = set_combine(sets.WS.Argosy.MaxACC,{})  
  776.    
  777.     -- Dagger Weapon Skill Sets --
  778.    
  779.     sets.WS.Evisceration = set_combine(sets.WS.Argosy,{
  780.             ammo="Yetshila +1",
  781.             hands="Flam. Manopolas +2",
  782.             ring1="Begrudging Ring",
  783.             back=CritMantle})
  784.     sets.WS.Evisceration.MidACC = set_combine(sets.WS.Argosy.MidACC,{
  785.             hands="Flam. Manopolas +2",
  786.             ring1="Begrudging Ring",
  787.             back=CritMantle})
  788.     sets.WS.Evisceration.HighACC = set_combine(sets.WS.Argosy.HighACC,{
  789.             hands="Flam. Manopolas +2",
  790.             ring1="Begrudging Ring",
  791.             back=CritMantle})
  792.     sets.WS.Evisceration.MaxACC = set_combine(sets.WS.Argosy.MaxACC,{
  793.             hands="Flam. Manopolas +2",
  794.             back=CritMantle})
  795.                    
  796.     -- Club Weapon Skill Sets --               
  797.                    
  798.     sets.WS['True Strike'] = set_combine(sets.WS.Argosy,{})
  799.     sets.WS['True Strike'].MidACC = set_combine(sets.WS.Argosy.MidACC,{})
  800.     sets.WS['True Strike'].HighACC = set_combine(sets.WS.Argosy.HighACC,{})
  801.     sets.WS['True Strike'].MaxACC = set_combine(sets.WS.Argosy.MaxACC,{})
  802.                
  803.     sets.WS.Judgment = set_combine(sets.WS.OneHit,{})  
  804.     sets.WS.Judgment.MidACC = set_combine(sets.WS.OneHit.MidACC,{})
  805.     sets.WS.Judgment.HighACC = set_combine(sets.WS.OneHit.HighACC,{})
  806.     sets.WS.Judgment.MaxACC = set_combine(sets.WS.OneHit.MaxACC,{})
  807.                
  808.     sets.WS['Black Halo'] = set_combine(sets.WS.OneHit,{}) 
  809.     sets.WS['Black Halo'].MidACC = set_combine(sets.WS.OneHit.MidACC,{})
  810.     sets.WS['Black Halo'].HighACC = set_combine(sets.WS.OneHit.HighACC,{})
  811.     sets.WS['Black Halo'].MaxACC = set_combine(sets.WS.OneHit.MaxACC,{})           
  812.    
  813.     sets.WS['Hexa Strike'] = set_combine(sets.WS.Argosy,{
  814.             ammo="Yetshila +1",
  815.             hands="Flam. Manopolas +2",
  816.             ring1="Begrudging Ring",
  817.             back=CritMantle})
  818.     sets.WS['Hexa Strike'].MidACC = set_combine(sets.WS.Argosy.MidACC,{
  819.             hands="Flam. Manopolas +2",
  820.             ring1="Begrudging Ring",
  821.             back=CritMantle})
  822.     sets.WS['Hexa Strike'].HighACC = set_combine(sets.WS.Argosy.HighACC,{
  823.             hands="Flam. Manopolas +2",
  824.             ring1="Begrudging Ring",
  825.             back=CritMantle})
  826.     sets.WS['Hexa Strike'].MaxACC = set_combine(sets.WS.Argosy.MaxACC,{
  827.             hands="Flam. Manopolas +2",
  828.             back=CritMantle})
  829.    
  830.     -- Polearm Weapon Skill Sets --
  831.    
  832.     sets.WS['Penta Thrust'] = set_combine(sets.WS.Argosy,{})
  833.     sets.WS['Penta Thrust'].MidACC = set_combine(sets.WS.Argosy.MidACC,{})
  834.     sets.WS['Penta Thrust'].HighACC = set_combine(sets.WS.Argosy.HighACC,{})
  835.     sets.WS['Penta Thrust'].MaxACC = set_combine(sets.WS.Argosy.MaxACC,{})
  836.                
  837.     sets.WS.StarDiver = set_combine(sets.WS.Argosy,{})
  838.     sets.WS.StarDiver.MidACC = set_combine(sets.WS.Argosy.MidACC,{})
  839.     sets.WS.StarDiver.HighACC = set_combine(sets.WS.Argosy.HighACC,{})
  840.     sets.WS.StarDiver.MaxACC = set_combine(sets.WS.Argosy.MaxACC,{})
  841.    
  842.     sets.WS['Sonic Thrust'] = set_combine(sets.WS.Argosy,{})
  843.     sets.WS['Sonic Thrust'].MidACC = set_combine(sets.WS.Argosy.MidACC,{})
  844.     sets.WS['Sonic Thrust'].HighACC = set_combine(sets.WS.Argosy.HighACC,{})
  845.     sets.WS['Sonic Thrust'].MaxACC = set_combine(sets.WS.Argosy.MaxACC,{})
  846.    
  847.     sets.WS['Wheeling Thrust'] = set_combine(sets.WS.OneHit,{})
  848.     sets.WS['Wheeling Thrust'].MidACC = set_combine(sets.WS.OneHit.MidACC,{})
  849.     sets.WS['Wheeling Thrust'].HighACC = set_combine(sets.WS.OneHit.HighACC,{})
  850.     sets.WS['Wheeling Thrust'].MaxACC = set_combine(sets.WS.OneHit.MaxACC,{})  
  851.    
  852.     -- Staff Weapon Skill Sets --
  853.    
  854.     sets.WS.Retribution = set_combine(sets.WS.OneHit,{})   
  855.     sets.WS.Retribution.MidACC = set_combine(sets.WS.OneHit.MidACC,{})
  856.     sets.WS.Retribution.HighACC = set_combine(sets.WS.OneHit.HighACC,{})
  857.     sets.WS.Retribution.MaxACC = set_combine(sets.WS.OneHit.MaxACC,{}) 
  858.                
  859.     sets.WS['Full Swing'] = set_combine(sets.WS.OneHit,{}) 
  860.     sets.WS['Full Swing'].MidACC = set_combine(sets.WS.OneHit.MidACC,{})
  861.     sets.WS['Full Swing'].HighACC = set_combine(sets.WS.OneHit.HighACC,{})
  862.     sets.WS['Full Swing'].MaxACC = set_combine(sets.WS.OneHit.MaxACC,{})
  863.                
  864.     -- Mighty Strikes WS Set --
  865.     sets.MS_WS = {
  866.             ammo="Yetshila +1",
  867.             feet="Boii Calligae +1"}
  868.  
  869.     ----------------------
  870.     -- Job Ability Sets --
  871.     ----------------------
  872.    
  873.     sets.JA = {}
  874.     sets.JA.Berserk = {body="Pumm. Lorica +3",feet="Agoge Calligae +3"}
  875.     sets.JA.Aggressor = {head="Pumm. Mask +1",body="Agoge Lorica +3"}
  876.     sets.JA["Blood Rage"] = {body="Boii Lorica +1"}
  877.     sets.JA.Warcry = {head="Agoge mask +3"}
  878.     sets.JA.Tomahawk = {ammo="Thr. Tomahawk",feet="Agoge Calligae +3"}
  879.     sets.JA["Mighty Strikes"] = {hands="Agoge Mufflers +1"}
  880.  
  881.     -- Waltz Set --
  882.     sets.Waltz = {}
  883.  
  884.     --------------------
  885.     -- Pre-Cast Sets --
  886.     --------------------
  887.  
  888.     sets.Precast = {
  889.             ammo="Impatiens",
  890.             neck="Orunmila's Torque",
  891.             ear1="Loquac. Earring",
  892.             ear2="Etiolation Earring",
  893.             body="Odyss. Chestplate",
  894.             hands="Leyline Gloves",
  895.             ring1="Lebeche Ring",
  896.             waist="Flume Belt +1",
  897.             legs="Eschite Cuisses"}
  898.     sets.Precast.FastCast = set_combine(sets.Precast,{})
  899.    
  900.     -------------------
  901.     -- Mid-Cast Sets --
  902.     -------------------
  903.  
  904.     sets.Midcast = {}
  905.     sets.Midcast.Haste = set_combine(sets.PDT,{})
  906.    
  907. end
  908.  
  909.     ----------------
  910.     -- Pre-Target --
  911.     ----------------
  912.  
  913. function pretarget(spell,action)
  914.     if spell.action_type == 'Magic' and buffactive.silence then -- Auto Use Echo Drops If You Are Silenced --
  915.         cancel_spell()
  916.         send_command('input /item "Echo Drops" <me>')
  917.     elseif spell.english == "Berserk" and buffactive.Berserk then -- Change Berserk To Aggressor If Berserk Is On --
  918.         cancel_spell()
  919.         send_command('Aggressor')
  920.     elseif spell.english == "Seigan" and buffactive.Seigan then -- Change Seigan To Third Eye If Seigan Is On --
  921.         cancel_spell()
  922.         send_command('ThirdEye')
  923.     elseif spell.english == "Meditate" and player.tp > 2900 then -- Cancel Meditate If TP Is Above 2900 --
  924.         cancel_spell()
  925.         add_to_chat(123, spell.name .. ' Canceled: ['..player.tp..' TP]')
  926.     elseif spell.type == 'WeaponSkill' and player.status == 'Engaged' then
  927.         if spell.english ~= 'Bora Axe' and spell.name ~= 'Mistral Axe' and spell.target.distance > target_distance then -- Cancel WS If You Are Out Of Range --
  928.             cancel_spell()
  929.             add_to_chat(123, spell.name..' Canceled: [Out of Range]')
  930.             return
  931.         end
  932.     end
  933. end
  934.  
  935.     --------------
  936.     -- Pre-Cast --
  937.     --------------
  938.  
  939. function precast(spell,action)
  940.         if spell.type == "WeaponSkill" then
  941.         if player.status ~= 'Engaged' then
  942.         return
  943.         else
  944.                 equipSet = sets.WS
  945.             if equipSet[spell.english] then
  946.                 equipSet = equipSet[spell.english]
  947.             end
  948.             if equipSet[AccArray[AccIndex]] then
  949.                 equipSet = equipSet[AccArray[AccIndex]]
  950.             end
  951.             if elements[spell.name] and elements[spell.name]:contains(world.day_element) then
  952.                 equipSet = set_combine(equipSet,elements.equip)
  953.             end
  954.             if buffactive["Mighty Strikes"] then -- Equip MS_WS Set When You Have Mighty Strikes On --
  955.                 equipSet = set_combine(equipSet,sets.MS_WS)
  956.             end
  957.             if buffactive['Reive Mark'] then -- Equip Ygnas's Resolve +1 During Reive --
  958.                 equipSet = set_combine(equipSet,{neck="Ygnas's Resolve +1"})
  959.             end
  960.             if player.tp > 2750 or (player.equipment.main == 'Chango' and player.tp > 2250) then
  961.                     equipSet = set_combine(equipSet,{ear1="Zwazo Earring"}) -- 3000 TP: Equip Zwazo Earring --
  962.             end
  963.             if world.time <= (7*60) or world.time >= (17*60) then
  964.                     equipSet = set_combine(equipSet,{ear2="Lugra Earring +1"}) -- Dusk til Dawn: Equip Lugra Earring +1 --
  965.             end
  966.             equip(equipSet)
  967.         end
  968.     elseif spell.type == "JobAbility" then
  969.         if sets.JA[spell.english] then
  970.             equip(sets.JA[spell.english])
  971.         end
  972.     elseif spell.type:endswith('Magic') or spell.type == "Ninjutsu" or spell.type == "Trust" then
  973.         if spell.english == 'Utsusemi: Ni' then
  974.             if buffactive['Copy Image (3)'] then
  975.                 cancel_spell()
  976.                 add_to_chat(123, spell.name .. ' Canceled: [3 Images]')
  977.                 return
  978.             else
  979.                 equip(sets.Precast.FastCast)
  980.             end
  981.         else
  982.             equip(sets.Precast.FastCast)
  983.         end
  984.     elseif spell.type == "Waltz" then
  985.         equip(sets.Waltz)
  986.     elseif spell.english == 'Spectral Jig' and buffactive.Sneak then
  987.         cast_delay(0.2)
  988.         send_command('cancel Sneak')
  989.     end
  990.     if Twilight == 'Twilight' then
  991.         equip(sets.Twilight)
  992.     end
  993. end
  994.  
  995.     --------------
  996.     -- Mid-Cast --
  997.     --------------
  998.        
  999. function midcast(spell,action)
  1000.     if spell.action_type == 'Magic' then
  1001.         if spell.english:startswith('Utsusemi') then
  1002.             if spell.english == 'Utsusemi: Ichi' and (buffactive['Copy Image'] or buffactive['Copy Image (2)'] or buffactive['Copy Image (3)']) then -- Cancel Copy Image 1, 2 & 3 For Utsusemi: Ichi --
  1003.                 send_command('@wait 1.7;cancel Copy Image*')
  1004.             end
  1005.             equip(sets.Midcast.Haste)
  1006.         elseif spell.english == 'Monomi: Ichi' then -- Cancel Sneak --
  1007.             if buffactive['Sneak'] then
  1008.                 send_command('@wait 1.7;cancel sneak')
  1009.             end
  1010.             equip(sets.Midcast.Haste)
  1011.         else
  1012.             equip(sets.Midcast.Haste)
  1013.         end
  1014.     end
  1015. end
  1016.  
  1017.     ----------------
  1018.     -- After-Cast --
  1019.     ----------------
  1020.  
  1021. function aftercast(spell,action)
  1022.     if not spell.interrupted then
  1023.         if spell.type == "WeaponSkill" then
  1024.             send_command('wait 0.2;gs c TP')
  1025.         elseif spell.english == "Blood Rage" then -- Blood Rage Timer/Countdown --
  1026.             timer_blood_rage()
  1027.             send_command('wait 50;input /echo '..spell.name..': [WEARING OFF IN 10 SEC.];wait 10;input /echo '..spell.name..': [OFF]')
  1028.         elseif spell.english == "Tomahawk" then -- Tomahawk Timer/Countdown --
  1029.             timer_tomahawk()
  1030.             send_command('wait 80;input /echo '..spell.name..': [WEARING OFF IN 10 SEC.];wait 10;timers delete "Tomahawk";input /echo '..spell.name..': [OFF]')
  1031.         end
  1032.     end
  1033.     status_change(player.status)
  1034. end
  1035.  
  1036.     -------------------
  1037.     -- Status Change --
  1038.     -------------------
  1039.  
  1040. function status_change(new,old)
  1041.     if Armor == 'PDT' or buffactive.Terror or buffactive.Stun or buffactive.Petrification or buffactive.Sleep then
  1042.         equip(sets.PDT)
  1043.     elseif Armor == 'MDT' then
  1044.         equip(sets.MDT)
  1045.     elseif Armor == 'Kiting' then
  1046.         equip(sets.Kiting)
  1047.     elseif new == 'Engaged' then
  1048.         equipSet = sets.TP
  1049.         if Armor == 'Hybrid' and equipSet["Hybrid"] then
  1050.             equipSet = equipSet["Hybrid"]
  1051.         end
  1052.         if equipSet[WeaponArray[WeaponIndex]] then
  1053.             equipSet = equipSet[WeaponArray[WeaponIndex]]
  1054.         end
  1055.         if equipSet[AccArray[AccIndex]] then
  1056.             equipSet = equipSet[AccArray[AccIndex]]
  1057.         end
  1058.         if buffactive["Samurai Roll"] and equipSet["STP"] and Samurai_Roll == 'ON' then
  1059.             equipSet = equipSet["STP"]
  1060.         end
  1061.         if buffactive["Mighty Strikes"] then -- Mighty Strikes TP Set --
  1062.             equipSet = set_combine(equipSet,sets.TP.MS)
  1063.         end
  1064.         if buffactive.Retaliation and Retaliation == 'ON' then -- Use Retaliation Toggle For Retaliation TP Set --
  1065.             equipSet = set_combine(equipSet,sets.TP.Retaliation)
  1066.         end
  1067.         equip(equipSet)
  1068.     else
  1069.         equipSet = sets.Idle
  1070.         if equipSet[IdleArray[IdleIndex]] then
  1071.             equipSet = equipSet[IdleArray[IdleIndex]]
  1072.         end
  1073.         if equipSet[WeaponArray[WeaponIndex]] then
  1074.             equipSet = equipSet[WeaponArray[WeaponIndex]]
  1075.         end
  1076.         if buffactive['Reive Mark'] then -- Equip Ygnas's Resolve +1 During Reive --
  1077.             equipSet = set_combine(equipSet,{neck="Ygnas's Resolve +1"})
  1078.         end
  1079.         equip(equipSet)
  1080.     end
  1081.     if Twilight == 'Twilight' then
  1082.         equip(sets.Twilight)
  1083.     end
  1084. end
  1085.  
  1086.     -----------------
  1087.     -- Buff Change --
  1088.     -----------------
  1089.  
  1090.  function buff_change(buff,gain,loss)
  1091.     buff = string.lower(buff)
  1092.     if gain then  
  1093.         add_to_chat(158,'--- Gained: ['..buff..']')
  1094.     elseif loss then
  1095.         add_to_chat(123,'--- Lost: ['..buff..']')
  1096.     end
  1097.     if not midaction() then
  1098.         status_change(player.status)
  1099.     end
  1100.  end
  1101.  
  1102.     -------------------------------------------------------------------------------------
  1103.     -- In Game: //gs c (command), Macro: /console gs c (command), Bind: gs c (command) --
  1104.     -------------------------------------------------------------------------------------
  1105.  
  1106.  function self_command(command)
  1107.     if command == 'acc' then -- Accuracy Toggle --
  1108.         AccIndex = (AccIndex % #AccArray) + 1
  1109.         add_to_chat(155,'Accuracy Level: ' .. AccArray[AccIndex])
  1110.         status_change(player.status)
  1111.     elseif command == 'weapon' then -- Main Weapon Toggle --
  1112.         WeaponIndex = (WeaponIndex % #WeaponArray) + 1
  1113.         add_to_chat(155,'Main Weapon: '..WeaponArray[WeaponIndex])
  1114.         status_change(player.status)
  1115.     elseif command == 'update' then -- Auto Update Gear Toggle --
  1116.         status_change(player.status)
  1117.         add_to_chat(155,'Auto Update Gear')
  1118.     elseif command == 'hybrid' then -- Hybrid Toggle --
  1119.         if Armor == 'Hybrid' then
  1120.             Armor = 'None'
  1121.             add_to_chat(123,'Hybrid Set: [Unlocked]')
  1122.         else
  1123.             Armor = 'Hybrid'
  1124.             add_to_chat(158,'Hybrid Set: '..AccArray[AccIndex])
  1125.         end
  1126.         status_change(player.status)
  1127.     elseif command == 'pdt' then -- PDT Toggle --
  1128.         if Armor == 'PDT' then
  1129.             Armor = 'None'
  1130.             add_to_chat(123,'PDT Set: [Unlocked]')
  1131.         else
  1132.             Armor = 'PDT'
  1133.             add_to_chat(158,'PDT Set: [Locked]')
  1134.         end
  1135.         status_change(player.status)
  1136.     elseif command == 'mdt' then -- MDT Toggle --
  1137.         if Armor == 'MDT' then
  1138.             Armor = 'None'
  1139.             add_to_chat(123,'MDT Set: [Unlocked]')
  1140.         else
  1141.             Armor = 'MDT'
  1142.             add_to_chat(158,'MDT Set: [Locked]')
  1143.         end
  1144.         status_change(player.status)
  1145.     elseif command == 'kiting' then -- Kiting Toggle --
  1146.         if Armor == 'Kiting' then
  1147.             Armor = 'None'
  1148.             add_to_chat(123,'Kiting Set: [Unlocked]')
  1149.         else
  1150.             Armor = 'Kiting'
  1151.             add_to_chat(158,'Kiting Set: [Locked]')
  1152.         end
  1153.         status_change(player.status)
  1154.     elseif command == 'retaliation' then -- Retaliation Toggle --
  1155.         if Retaliation == 'ON' then
  1156.             Retaliation = 'OFF'
  1157.             add_to_chat(123,'Retaliation Set: [Unlocked]')
  1158.         else
  1159.             Retaliation = 'ON'
  1160.             add_to_chat(158,'Retaliation Set: [Locked]')
  1161.         end
  1162.         status_change(player.status)
  1163.     elseif command == 'sam' then -- SAM Roll Toggle --
  1164.         if Samurai_Roll == 'ON' then
  1165.             Samurai_Roll = 'OFF'
  1166.             add_to_chat(123,'SAM Roll: [OFF]')
  1167.         else
  1168.             Samurai_Roll = 'ON'
  1169.             add_to_chat(158,'SAM Roll: [ON]')
  1170.         end
  1171.         status_change(player.status)
  1172.     elseif command == 'twilight' then -- Twilight Toggle --
  1173.         if Twilight == 'Twilight' then
  1174.             Twilight = 'None'
  1175.             add_to_chat(123,'Twilight Set: [Unlocked]')
  1176.         else
  1177.             Twilight = 'Twilight'
  1178.             add_to_chat(158,'Twilight Set: [locked]')
  1179.         end
  1180.         status_change(player.status)
  1181.     elseif command == 'distance' then -- Distance Toggle --
  1182.         if player.target.distance then
  1183.             target_distance = math.floor(player.target.distance*10)/10
  1184.             add_to_chat(155,'Distance: '..target_distance)
  1185.         else
  1186.             add_to_chat(123,'No Target Selected')
  1187.         end
  1188.     elseif command == 'idle' then -- Idle Toggle --
  1189.         IdleIndex = (IdleIndex % #IdleArray) + 1
  1190.         add_to_chat(155,'Idle Set: ' .. IdleArray[IdleIndex])
  1191.         status_change(player.status)
  1192.     elseif command == 'TP' then
  1193.         add_to_chat(155,'TP Return: ['..tostring(player.tp)..']')
  1194.     elseif command:match('^SC%d$') then
  1195.         send_command('//' .. sc_map[command])
  1196.     end
  1197. end
  1198.  
  1199.     -----------
  1200.     -- Misc. --
  1201.     -----------
  1202.  
  1203. function timer_blood_rage()
  1204.     local duration = 60
  1205.     send_command('timers create "Blood Rage" '..tostring(duration)..' down')
  1206. end
  1207.  
  1208. function timer_tomahawk()
  1209.     local duration = 90
  1210.     send_command('timers create "Tomahawk" '..tostring(duration)..' down')
  1211. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement