Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ------------------------------------------
- -- ** Arnan Thief Gearswap Lua File *** --
- ------------------------------------------
- -- Commands --
- -- In Game: //gs c, Macro: /console gs c, Bind: gs c --
- -- gs c acc Toggle accuracy tier for TP/WS
- -- gs c idle Toggle idle sets
- -- gs c pdt PDT on/off
- -- gs c mdt MDT on/off
- -- gs c kiting Kiting on/off
- -- gs c hybrid Hybrid on/off
- -- gs c th Treasure Hunter TP gear on/off
- -- gs c evasion Evasion on/off
- -- gs c rancor Rancor TP on/off
- ----------
- -- Sets --
- ----------
- function get_sets()
- AccIndex = 1
- AccArray = {"LowACC","MidACC","HighACC"} -- 3 Levels Of Accuracy Sets For TP/WS/Hybrid. Default ACC Set Is LowACC. The First TP Set Of Your Main Weapon Is LowACC. Add More ACC Sets If Needed Then Create Your New ACC Below --
- IdleIndex = 1
- IdleArray = {"Full","DT","Warp"} -- Default Idle Set Is Movement --
- SA = false
- TA = false
- TH = 'OFF' -- Set Default Full TH ON or OFF Here --
- Rancor = 'OFF' -- Set Default Rancor ON or OFF Here --
- target_distance = 6 -- Set Default Distance Here --
- send_command('input /macro book 5;wait .1;input /macro set 1') -- Change Default Macro Book Here --
- add_to_chat(158,'-[Thief Lua Loaded]-')
- add_to_chat(155,'Accuracy Level: ' .. AccArray[AccIndex])
- add_to_chat(155,'Idle Set: ' .. IdleArray[IdleIndex])
- add_to_chat(158,'-----[Weapon Skill Keybinds]-----')
- add_to_chat(155,'F9 - Mandalic Stab, F10 - Exenterator, F11 - Evisceration, Delete - Rudras Storm')
- add_to_chat(155,'F12 - Last Stand (mule), Alt+F12 - Leaden Salute (mule), Alt+Delete - Savage Blade (mule)')
- -- Toutatis's Cape Augments --
- STPCape={ name="Toutatis's Cape", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','"Store TP"+10','Phys. dmg. taken-10%',}}
- WSDCape={ name="Toutatis's Cape", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','Weapon skill damage +10%',}}
- CritCape={ name="Toutatis's Cape", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','Crit.hit rate+10',}}
- --------------------
- -- Key Binds Load --
- --------------------
- -- Key Bind Toggles (The Same for all my job files) (Ctrl Key) --
- send_command('bind ^A input //gs c acc')
- send_command('bind ^D input //gs c pdt')
- send_command('bind ^H input //gs c hybrid')
- send_command('bind ^I input //gs c idle')
- send_command('bind ^K input //gs c kiting')
- -- Stuff to control both Mules (Ctrl Key) --
- send_command('bind ^X input /pcmd add ojomo;pause 5;input /pcmd add oeogo')
- send_command('bind ^3 input //send oeogo //ma Cure 3 Arnan')
- send_command('bind ^4 input //send oeogo //ma Cure 4 Arnan')
- send_command('bind ^5 input //send oeogo //ma Refresh Arnan')
- send_command('bind ^7 input //send oeogo //ma haste ojomo')
- send_command('bind ^8 input //send oeogo //ma Dia 2 <t>;pause 2;input //send ojomo //ja Light Shot <t>')
- send_command('bind ^9 input //send ojomo //follow arnan;pause 0.1;input //send oeogo //follow arnan')
- send_command('bind ^0 input //send ojomo //assist arnan;pause 0.1;input //send oeogo //assist arnan')
- send_command('bind ^- input //send ojomo /attack <t>;pause 0.1;input //send oeogo /attack <t>')
- -- COR (Mule) Job Ability Key Binds (Alt Key) --
- send_command('bind !7 input //send ojomo //ja Crooked Cards <me>')
- send_command('bind !8 input //send ojomo //ja Snake Eye <me>')
- send_command('bind !9 input //send ojomo //ja Fold <me>')
- send_command('bind !0 input //send ojomo //ja Random Deal <me>')
- -- COR (mule) Phantom Roll Key Binds (Alt Key) --
- send_command('bind !A input //send ojomo //ja Allies\' Roll <me>')
- send_command('bind !B input //send ojomo //ja Bolter\'s Roll <me>')
- send_command('bind !C input //send ojomo //ja Chaos Roll <me>')
- send_command('bind !D input //send ojomo //ja Dancer\'s Roll <me>')
- send_command('bind !E input //send ojomo //ja Evoker\s Roll <me>')
- send_command('bind !F input //send ojomo //ja Fighter\'s Roll <me>')
- send_command('bind !G input //send ojomo //ja Gallant\'s Roll <me>')
- send_command('bind !H input //send ojomo //ja Hunter\'s Roll <me>')
- send_command('bind !Q input //send ojomo //ja Warlock\'s Roll <me>')
- send_command('bind !R input //send ojomo //ja Rogue\'s Roll <me>')
- send_command('bind !S input //send ojomo //ja Samurai Roll <me>')
- send_command('bind !T input //send ojomo //ja Tactician\'s Roll <me>')
- send_command('bind !W input //send ojomo //ja Wizard\'s Roll <me>')
- send_command('bind !X input //send ojomo //ja Corsair\'s Roll <me>')
- -- GEO (Mule) Job Ability Key Binds (Win Key) --
- send_command('bind @3 input //send oeogo //ja Radial Arcana <me>')
- send_command('bind @5 input //send oeogo //ma Refresh <me>')
- send_command('bind @7 input //send oeogo //ja Blaze of Glory <me>')
- send_command('bind @8 input //send oeogo //ja Ecliptic Attrition <me>')
- send_command('bind @9 input //send oeogo //ja Life Cycle <me>')
- send_command('bind @0 input //send oeogo //ja Lasting Emanation <me>')
- -- GEO (Mule) Nuke Key Binds (Win Key) --
- 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>;')
- 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>;')
- 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>;')
- 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>;')
- 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>;')
- 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>;')
- -- GEO (Mule) Indicolure Spells (Win Key) --
- send_command('bind @1 input //send oeogo /ma Indi-Regen <me>')
- send_command('bind @2 input //send oeogo /ma Indi-Refresh <me>')
- send_command('bind @D input //send oeogo /ma Indi-DEX <me>')
- send_command('bind @A input //send oeogo /ma Indi-Acumen <me>')
- send_command('bind @F input //send oeogo /ma Indi-Fury <me>')
- send_command('bind @H input //send oeogo /ma Indi-Haste <me>')
- send_command('bind @K input //send oeogo /ma Indi-Focus <me>')
- send_command('bind @P input //send oeogo /ma Indi-Precision <me>')
- send_command('bind @Q input //send oeogo /ma Indi-Barrier <me>')
- send_command('bind @S input //send oeogo /ma Indi-STR <me>')
- send_command('bind @V input //send oeogo /ma Indi-Attunement <me>')
- -- GEO (Mule) Geocolure Spells (Alt+Win Keys) --
- send_command('bind !@1 input //send oeogo /ma Geo-Regen <me>')
- send_command('bind !@2 input //send oeogo /ma Geo-Refresh <me>')
- send_command('bind !@A input //send oeogo /ma Geo-Malaise <t>')
- send_command('bind !@D input //send oeogo /ma Geo-DEX <me>')
- send_command('bind !@F input //send oeogo /ma Geo-Frailty <t>')
- send_command('bind !@H input //send oeogo /ma Geo-Haste <me>')
- send_command('bind !@K input //send oeogo /ma Geo-Languor <t>')
- send_command('bind !@P input //send oeogo /ma Geo-Torpor <t>') --
- send_command('bind !@Q input //send oeogo /ma Geo-Wilt <t>') --
- send_command('bind !@S input //send oeogo /ma Geo-STR <me>')
- send_command('bind !@V input //send oeogo /ma Geo-Vex <t>')
- -- GEO (Mule) Entrust Indicolure Spells (Ctrl+Win Keys) --
- send_command('bind ^@1 input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Regen Arnan')
- send_command('bind ^@2 input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Refresh Arnan')
- send_command('bind ^@A input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Acumen Arnan')
- send_command('bind ^@D input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-DEX Arnan')
- send_command('bind ^@F input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Fury Arnan')
- send_command('bind ^@H input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Haste Arnan')
- send_command('bind ^@K input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Focus Arnan')
- send_command('bind ^@P input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Precision Arnan')
- send_command('bind ^@Q input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Barrier Arnan')
- send_command('bind ^@S input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-STR Arnan')
- send_command('bind ^@V input //send oeogo //ja Entrust <me>;pause 2;input //send oeogo /ma Indi-Attunement Arnan')
- -- Thief Job Key Binds (Ctrl & Ctrl+Alt Keys) --
- send_command('bind ^P input //ja Provoke <t>')
- send_command('bind ^Z input //ja Berserk <me>')
- -- Thief Weapon Skill Key Binds --
- send_command('bind F9 input /ws "Mandalic Stab" <t>')
- send_command('bind F10 input /ws "Exenterator" <t>')
- send_command('bind F11 input /ws "Evisceration" <t>')
- send_command('bind Delete input /ws "Rudra\'s Storm" <t>')
- -- COR (mule) Weapon Skill Key Binds --
- send_command('bind F12 input //send ojomo /ws "Last Stand" <t>')
- send_command('bind !F12 input //send ojomo "Leaden Salute" <t>')
- send_command('bind !Delete input //send ojomo /ws "Savage Blade" <t>')
- ----------------------
- -- Key Binds Unload --
- ----------------------
- function file_unload()
- -- Unbind Toggles --
- send_command('unbind ^A')
- send_command('unbind ^D')
- send_command('unbind ^H')
- send_command('unbind ^I')
- send_command('unbind ^K')
- -- Unbind Stuff to control both Mules --
- send_command('unbind ^X')
- send_command('unbind ^3')
- send_command('unbind ^4')
- send_command('unbind ^4')
- send_command('unbind ^7')
- send_command('unbind ^8')
- send_command('unbind ^9')
- send_command('unbind ^0')
- send_command('unbind ^-')
- -- Unbind COR JA's --
- send_command('unbind !7')
- send_command('unbind !8')
- send_command('unbind !9')
- send_command('unbind !0')
- -- Unbind COR Rolls --
- send_command('unbind !A')
- send_command('unbind !B')
- send_command('unbind !C')
- send_command('unbind !D')
- send_command('unbind !E')
- send_command('unbind !F')
- send_command('unbind !G')
- send_command('unbind !H')
- send_command('unbind !Q')
- send_command('unbind !R')
- send_command('unbind !S')
- send_command('unbind !T')
- send_command('unbind !W')
- send_command('unbind !X')
- -- Unbind GEO JA's --
- send_command('unbind @3')
- send_command('unbind @5')
- send_command('unbind @7')
- send_command('unbind @8')
- send_command('unbind @9')
- send_command('unbind @0')
- -- Unbind GEO Nukes --
- send_command('unbind @F1')
- send_command('unbind @F2')
- send_command('unbind @F3')
- send_command('unbind @F4')
- send_command('unbind @F5')
- send_command('unbind @F6')
- -- Unbind GEO Indi Spells --
- send_command('unbind @1')
- send_command('unbind @2')
- send_command('unbind @A')
- send_command('unbind @D')
- send_command('unbind @F')
- send_command('unbind @H')
- send_command('unbind @K')
- send_command('unbind @P')
- send_command('unbind @Q')
- send_command('unbind @S')
- send_command('unbind @V')
- -- Unbind GEO Geocolure Spells --
- send_command('unbind !@1')
- send_command('unbind !@2')
- send_command('unbind !@A')
- send_command('unbind !@D')
- send_command('unbind !@F')
- send_command('unbind !@H')
- send_command('unbind !@K')
- send_command('unbind !@P')
- send_command('unbind !@Q')
- send_command('unbind !@S')
- send_command('unbind !@V')
- -- Unbind GEO Entrust Spells --
- send_command('unbind ^@1')
- send_command('unbind ^@2')
- send_command('unbind ^@A')
- send_command('unbind ^@D')
- send_command('unbind ^@F')
- send_command('unbind ^@H')
- send_command('unbind ^@K')
- send_command('unbind ^@P')
- send_command('unbind ^@Q')
- send_command('unbind ^@S')
- send_command('unbind ^@V')
- -- Unbind THF Job Binds --
- send_command('unbind ^P')
- send_command('unbind ^Z')
- -- Unload Weapon Skill Key Binds --
- send_command('unbind F9')
- send_command('unbind F10')
- send_command('unbind F11')
- send_command('unbind F12')
- send_command('unbind !F12')
- send_command('unbind Delete')
- send_command('unbind !Delete')
- end
- --------------------
- -- Idle/Town Sets --
- --------------------
- sets.Idle = {
- ammo="Staunch Tathlum +1",
- head="Turms Cap",
- neck="Bathy Choker +1",
- ear1="Infused Earring",
- ear2="Odnowa Earring +1",
- body="Meg. Cuirie +2",
- hands="Meg. Gloves +2",
- ring1="Defending Ring",
- ring2="Meghanada Ring",
- back="Moonlight Cape",
- waist="Flume Belt +1",
- legs="Meg. Chausses +2",
- feet="Jute Boots +1"}
- sets.Idle.Full = set_combine(sets.Idle,{})
- sets.Idle.DT = set_combine(sets.Idle,{
- neck="Loricate Torque +1"})
- sets.Idle.Warp = set_combine(sets.Idle,{
- ring2="Warp Ring"})
- -------------
- -- TP Sets --
- -------------
- -- Normal TP Sets --
- sets.TP = {
- ammo="Yetshila +1",
- head="Adhemar Bonnet +1",
- neck="Anu Torque",
- ear1="Suppanomimi",
- ear2="Eabani Earring",
- body="Adhemar Jacket +1",
- hands="Adhemar Wrist. +1",
- ring1="Hetairoi Ring",
- ring2="Epona's Ring",
- back=STPCape,
- waist="Reiki Yotai",
- legs="Pill. Culottes +3",
- feet="Plun. Poulaines +3"}
- sets.TP.MidACC = set_combine(sets.TP,{
- ammo="Yamarang",
- head="Dampening Tam",
- ring1="Regal Ring"})
- sets.TP.HighACC = set_combine(sets.TP.MidACC,{
- neck="Combatant's Torque",
- ear2="Mache Earring +1",
- ring2="Chirich Ring +1",
- waist="Olseni Belt"})
- -- Capped Magic Haste --
- sets.TP.MidHaste = {
- ammo="Yetshila +1",
- head="Adhemar Bonnet +1",
- neck="Anu Torque",
- ear1="Suppanomimi",
- ear2="Sherida Earring",
- body="Pillager's Vest +3",
- hands="Adhemar Wrist. +1",
- ring1="Hetairoi Ring",
- ring2="Epona's Ring",
- back=STPCape,
- waist="Windbuffet Belt +1",
- legs="Pill. Culottes +3",
- feet="Plun. Poulaines +3"}
- sets.TP.MidACC.MidHaste = set_combine(sets.TP.MidHaste,{
- head="Dampening Tam",
- ring1="Regal Ring"})
- sets.TP.HighACC.MidHaste = set_combine(sets.TP.MidACC.MidHaste,{
- neck="Combatant's Torque",
- ear1="Mache Earring +1",
- ear2="Mache Earring +1",
- waist="Olseni Belt"})
- -- Capped Magic Haste + Samba --
- sets.TP.HighHaste = {
- ammo="Yetshila +1",
- head="Adhemar Bonnet +1",
- neck="Anu Torque",
- ear1="Cessance Earring",
- ear2="Sherida Earring",
- body="Pillager's Vest +3",
- hands="Adhemar Wrist. +1",
- ring1="Hetairoi Ring",
- ring2="Epona's Ring",
- back=STPCape,
- waist="Windbuffet Belt +1",
- legs="Pill. Culottes +3",
- feet="Plun. Poulaines +3"}
- sets.TP.MidACC.HighHaste = set_combine(sets.TP.HighHaste,{
- head="Dampening Tam",
- ring1="Regal Ring"})
- sets.TP.HighACC.HighHaste = set_combine(sets.TP.MidACC.HighHaste,{
- neck="Combatant's Torque",
- ear2="Mache Earring +1",
- waist="Olseni Belt"})
- -- Full TH TP Set --
- sets.TP.TH = {feet="Skulk. Poulaines +1"}
- -- TP Rancor --
- sets.TP.Rancor = {}
- -----------------------
- -- Damage Taken Sets --
- -----------------------
- -- PDT Set --
- sets.PDT = {
- ammo="Staunch Tathlum +1",
- head="Meghanada Visor +2",
- neck="Loricate Torque +1",
- ear1="Genmei Earring",
- ear2="Odnowa Earring +1",
- body="Meg. Cuirie +2",
- hands="Meg. Gloves +2",
- ring1="Defending Ring",
- ring2="Moonlight Ring",
- back="Moonlight Cape",
- waist="Flume Belt +1",
- legs="Mummu Kecks +2",
- feet="Meg. Jam. +2"}
- -- MDT Set --
- sets.MDT = set_combine(sets.PDT,{})
- -- Kiting Set --
- sets.Kiting = set_combine(sets.PDT,{feet="Jute Boots +1"})
- -- Hybrid/Evasion Sets --
- sets.TP.Hybrid = set_combine(sets.PDT,{})
- sets.TP.Hybrid.MidACC = set_combine(sets.TP.Hybrid,{})
- sets.TP.Hybrid.HighACC = set_combine(sets.TP.Hybrid.MidACC,{})
- sets.Evasion = set_combine(sets.PDT,{})
- -----------------------
- -- Weapon Skill Sets --
- -----------------------
- -- WS Base Set --
- sets.WS = {}
- -- WS Sets --
- sets.WS.Evisceration = {
- ammo="Yetshila +1",
- head="Adhemar Bonnet +1",
- neck="Fotia Gorget",
- ear1="Moonshade Earring",
- ear2="Sherida Earring",
- body="Adhemar Jacket +1",
- hands="Adhemar Wrist. +1",
- ring1="Begrudging Ring",
- ring2="Epona's Ring",
- back=CritCape,
- waist="Fotia Belt",
- legs="Pill. Culottes +3",
- feet="Adhe. Gamashes +1"}
- sets.WS.Evisceration.SA = set_combine(sets.WS.Evisceration,{})
- sets.WS.Evisceration.TA = set_combine(sets.WS.Evisceration,{})
- sets.WS["Rudra's Storm"] = {
- ammo="Falcon Eye",
- head="Pill. Bonnet +3",
- neck="Caro Necklace",
- ear1="Moonshade Earring",
- ear2="Ishvara Earring",
- body="Adhemar Jacket +1",
- hands="Meg. Gloves +2",
- ring1="Regal Ring",
- ring2="Ilabrat Ring",
- back=WSDCape,
- waist="Artful Belt +1",
- legs="Lustr. Subligar +1",
- feet="Lustra. Leggings +1"}
- sets.WS["Rudra's Storm"].SA = set_combine(sets.WS["Rudra's Storm"],{
- ammo="Yetshila +1",
- body="Meg. Cuirie +2"})
- sets.WS["Rudra's Storm"].TA = set_combine(sets.WS["Rudra's Storm"],{
- ammo="Yetshila +1",
- body="Meg. Cuirie +2"})
- sets.WS.Exenterator = {
- ammo="Falcon Eye",
- head="Meghanada Visor +2",
- neck="Fotia Gorget",
- ear1="Brutal Earring",
- ear2="Sherida Earring",
- body="Pillager's Vest +3",
- hands="Meg. Gloves +2",
- ring1="Regal Ring",
- ring2="Epona's Ring",
- back=STPCape,
- waist="Fotia Belt",
- legs="Meg. Chausses +2",
- feet="Plun. Poulaines +3"}
- sets.WS.Exenterator.SA = set_combine(sets.WS.Exenterator,{})
- sets.WS.Exenterator.TA = set_combine(sets.WS.Exenterator,{})
- sets.WS["Aeolian Edge"] = {}
- sets.WS["Mandalic Stab"] = set_combine(sets.WS["Rudra's Storm"],{})
- sets.WS["Mandalic Stab"].SA = set_combine(sets.WS["Rudra's Storm"].SA,{})
- sets.WS["Mandalic Stab"].TA = set_combine(sets.WS["Rudra's Storm"].TA,{})
- -------------
- -- JA Sets --
- -------------
- sets.JA = {}
- TH_Gear = {feet="Skulk. Poulaines +1"}
- sets.JA.Conspirator = {body="Skulker's Vest +1"}
- sets.JA.Accomplice = {head="Skulker's Bonnet +1"}
- sets.JA.Collaborator = {head="Skulker's Bonnet +1"}
- sets.JA["Perfect Dodge"] = {hands="Plun. Armlets +1"}
- sets.JA.Steal = {head="Plun. Bonnet +1",hands="Pill. Armlets +1",feet="Pill. Poulaines +1"}
- sets.JA.Flee = {feet="Pill. Poulaines +1"}
- sets.JA.Feint = {legs="Plun. Culottes +1"}
- sets.JA.Despoil = {feet="Skulk. Poulaines +1"}
- sets.JA.Mug = {head="Plun. Bonnet +1"}
- sets.JA.Hide = {body="Pillager's Vest +3"}
- sets.JA.Provoke = TH_Gear
- sets.JA["Sneak Attack"] = {}
- sets.JA["Trick Attack"] = set_combine(sets.JA["Sneak Attack"],{})
- -- Step Set --
- sets.Step = set_combine({},TH_Gear)
- -- Flourish Set --
- sets.Flourish = set_combine({},TH_Gear)
- -- Waltz Set --
- sets.Waltz = {}
- ----------------
- -- Magic Sets --
- ----------------
- -- Precast Sets --
- sets.Precast = {
- ammo="Impatiens",
- neck="Orunmila's Torque",
- ear1="Loquac. Earring",
- ear2="Odnowa Earring +1",
- body="Taeon Tabard",
- hands="Leyline Gloves",
- ring1="Lebeche Ring",
- ring2="Kishar Ring",
- back="Moonlight Cape",
- waist="Flume Belt +1"}
- -- Fastcast Set --
- sets.Precast.FastCast = {
- ammo="Impatiens",
- neck="Orunmila's Torque",
- ear1="Loquac. Earring",
- ear2="Odnowa Earring +1",
- body="Taeon Tabard",
- hands="Leyline Gloves",
- ring1="Lebeche Ring",
- ring2="Kishar Ring",
- back="Moonlight Cape",
- waist="Flume Belt +1"}
- -- Utsusemi Precast Set --
- sets.Precast.Utsusemi = set_combine(sets.Precast.FastCast,{})
- -- Midcast Base Set --
- sets.Midcast = set_combine(sets.PDT,{
- ammo="Staunch Tathlum +1",
- neck="Orunmila's Torque",
- ear1="Loquac. Earring",
- ear2="Odnowa Earring +1",
- body="Taeon Tabard",
- hands="Plun. Armlets +1",
- ring1="Defending Ring",
- ring2="Kishar Ring",
- back="Moonlight Cape",
- waist="Flume Belt +1",
- feet="Skulk. Poulaines +1"})
- -- Magic Haste Set --
- sets.Midcast.Haste = set_combine(sets.PDT,{
- ammo="Staunch Tathlum +1",
- neck="Orunmila's Torque",
- ear1="Loquac. Earring",
- ear2="Odnowa Earring +1",
- body="Taeon Tabard",
- hands="Leyline Gloves",
- ring1="Defending Ring",
- ring2="Kishar Ring",
- back="Moonlight Cape",
- waist="Flume Belt +1"})
- -- Sleepga --
- sets.Midcast.Sleepga = {hands="Plun. Armlets +1",feet="Skulk. Poulaines +1"}
- end
- ----------------
- -- Pre-Target --
- ----------------
- function pretarget(spell,action)
- if (spell.type:endswith('Magic') or spell.type == "Ninjutsu") and buffactive.silence then -- Auto Use Echo Drops If You Are Silenced --
- cancel_spell()
- send_command('input /item "Echo Drops" <me>')
- elseif spell.english == "Berserk" and buffactive.Berserk then -- Change Berserk To Aggressor If Berserk Is On --
- cancel_spell()
- send_command('Aggressor')
- elseif (spell.english == 'Ranged' and spell.target.distance > 24.9) or (spell.type == "WeaponSkill" and spell.target.distance > target_distance and player.status == 'Engaged') then -- Cancel Ranged Attack or WS If You Are Out Of Range --
- cancel_spell()
- add_to_chat(123, spell.name..' Canceled: [Out of Range]')
- return
- end
- end
- --------------
- -- Pre-Cast --
- --------------
- function precast(spell,action)
- if spell.type == "WeaponSkill" then
- if player.status ~= 'Engaged' then
- return
- else
- equipSet = sets.WS
- if equipSet[spell.english] then
- equipSet = equipSet[spell.english]
- end
- if SA and equipSet["SA"] then
- equipSet = equipSet["SA"]
- end
- if TA and equipSet["TA"] then
- equipSet = equipSet["TA"]
- end
- if spell.english == "Evisceration" and (player.tp > 2750 or (player.equipment.main == 'Aeneas' and player.tp > 2250)) then
- equipSet = set_combine(equipSet,{ear1="Mache Earring +1"})
- elseif spell.english == "Rudra's Storm" and (player.tp > 2750 or (player.equipment.main == 'Aeneas' and player.tp > 2250)) then
- equipSet = set_combine(equipSet,{ear1="Mache Earring +1"})
- end
- equip(equipSet)
- end
- elseif spell.type=="JobAbility" then
- if sets.JA[spell.english] then
- equip(sets.JA[spell.english])
- end
- if spell.english=="Sneak Attack" then
- SA = true
- end
- if spell.english=="Trick Attack" then
- TA = true
- end
- elseif spell.type:endswith('Magic') or spell.type == "Ninjutsu" or spell.type == "Trust" then
- if string.find(spell.english,'Utsusemi') then
- if buffactive['Copy Image (3)'] or buffactive['Copy Image (4)'] then
- cancel_spell()
- add_to_chat(123, spell.name .. ' Canceled: [3+ Images]')
- return
- else
- equip(sets.Precast.Utsusemi)
- end
- else
- equip(sets.Precast.FastCast)
- end
- elseif spell.type == 'Step' then
- equip(sets.Step)
- elseif string.find(spell.type,'Flourish') then
- equip(sets.Flourish)
- elseif spell.type == "Waltz" then
- equip(sets.Waltz)
- elseif spell.english == 'Spectral Jig' and buffactive.Sneak then
- cast_delay(0.2)
- send_command('cancel Sneak')
- end
- end
- --------------
- -- Mid-Cast --
- --------------
- function midcast(spell,action)
- if spell.english == 'Ranged' then
- equip(TH_Gear)
- elseif spell.type:endswith('Magic') or spell.type == "Ninjutsu" or spell.type == "Trust" then
- if string.find(spell.english,'Utsusemi') then
- if spell.english == 'Utsusemi: Ichi' and (buffactive['Copy Image'] or buffactive['Copy Image (2)']) then
- send_command('@wait 1.7;cancel Copy Image*')
- end
- equip(sets.Midcast.Haste)
- elseif spell.english == 'Monomi: Ichi' then
- if buffactive['Sneak'] then
- send_command('@wait 1.7;cancel sneak')
- end
- equip(sets.Midcast.Haste)
- else
- equip(sets.Midcast.Haste)
- end
- end
- end
- ----------------
- -- After-Cast --
- ----------------
- function aftercast(spell,action)
- if spell.type == "WeaponSkill" and not spell.interrupted then
- send_command('wait 0.2;gs c TP')
- end
- status_change(player.status)
- end
- -------------------
- -- Status Change --
- -------------------
- function status_change(new,old)
- if player.equipment.range ~= 'empty' then
- disable('range','ammo')
- else
- enable('range','ammo')
- end
- if Armor == 'PDT' or buffactive.Terror or buffactive.Stun or buffactive.Petrification or buffactive.Sleep then
- equip(sets.PDT)
- elseif Armor == 'MDT' then
- equip(sets.MDT)
- elseif Armor == 'Kiting' then
- equip(sets.Kiting)
- elseif Armor == 'EVA' then
- equip(sets.Evasion)
- elseif new == 'Engaged' then
- equipSet = sets.TP
- if Armor == 'Hybrid' and equipSet["Hybrid"] then
- equipSet = equipSet["Hybrid"]
- end
- if equipSet[AccArray[AccIndex]] then
- equipSet = equipSet[AccArray[AccIndex]]
- end
- if buffactive.March and buffactive['Haste Samba'] and (buffactive.Embrava or buffactive.Haste) or (buffactive.Haste == 2) and buffactive['Haste Samba'] and equipSet["HighHaste"] then
- equipSet = equipSet["HighHaste"]
- end
- if buffactive.March and (buffactive.Embrava or buffactive.Haste) or (buffactive.Haste == 2) and equipSet["MidHaste"] then
- equipSet = equipSet["MidHaste"]
- end
- if SA then
- equipSet = set_combine(equipSet,sets.JA["Sneak Attack"])
- end
- if TA then
- equipSet = set_combine(equipSet,sets.JA["Trick Attack"])
- end
- if Rancor == 'ON' then -- Use Rancor Toggle For Rancor Collar --
- equipSet = set_combine(equipSet,sets.TP.Rancor)
- end
- if TH == 'ON' then -- Use TH Toggle To Lock Full TH Set --
- equipSet = set_combine(equipSet,sets.TP.TH)
- end
- equip(equipSet)
- else
- equip(sets.Idle[IdleArray[IdleIndex]])
- end
- end
- -----------------
- -- Buff Change --
- -----------------
- function buff_change(buff,gain,loss)
- buff = string.lower(buff)
- if gain then
- add_to_chat(158,'--- Gained: ['..buff..']')
- elseif loss then
- add_to_chat(123,'--- Lost: ['..buff..']')
- elseif buff == "sneak attack" then
- SA = gain
- elseif buff == "trick attack" then
- TA = gain
- end
- if not midaction() then
- status_change(player.status)
- end
- end
- -------------------------------------------------------------------------------------
- -- In Game: //gs c (command), Macro: /console gs c (command), Bind: gs c (command) --
- -------------------------------------------------------------------------------------
- function self_command(command)
- if command == 'acc' then -- Accuracy Level Toggle --
- AccIndex = (AccIndex % #AccArray) + 1
- status_change(player.status)
- add_to_chat(155,'Accuracy Level: ' .. AccArray[AccIndex])
- elseif command == 'update' then -- Auto Update Gear Toggle --
- status_change(player.status)
- add_to_chat(155,'Auto Update Gear')
- elseif command == 'hybrid' then -- Hybrid Toggle --
- if Armor == 'Hybrid' then
- Armor = 'None'
- add_to_chat(123,'Hybrid Set: [Unlocked]')
- else
- Armor = 'Hybrid'
- add_to_chat(158,'Hybrid Set: '..AccArray[AccIndex])
- end
- status_change(player.status)
- elseif command == 'th' then -- Full TH Set Toggle --
- if TH == 'ON' then
- TH = 'OFF'
- add_to_chat(123,'Full TH Set: [Unlocked]')
- else
- TH = 'ON'
- add_to_chat(158,'Full TH Set: [Locked]')
- end
- status_change(player.status)
- elseif command == 'pdt' then -- PDT Toggle --
- if Armor == 'PDT' then
- Armor = 'None'
- add_to_chat(123,'PDT Set: [Unlocked]')
- else
- Armor = 'PDT'
- add_to_chat(158,'PDT Set: [Locked]')
- end
- status_change(player.status)
- elseif command == 'mdt' then -- MDT Toggle --
- if Armor == 'MDT' then
- Armor = 'None'
- add_to_chat(123,'MDT Set: [Unlocked]')
- else
- Armor = 'MDT'
- add_to_chat(158,'MDT Set: [Locked]')
- end
- status_change(player.status)
- elseif command == 'kiting' then -- Kiting Toggle --
- if Armor == 'Kiting' then
- Armor = 'None'
- add_to_chat(123,'Kiting Set: [Unlocked]')
- else
- Armor = 'Kiting'
- add_to_chat(158,'Kiting Set: [Locked]')
- end
- status_change(player.status)
- elseif command == 'evasion' then -- Evasion Toggle --
- if Armor == 'EVA' then
- Armor = 'None'
- add_to_chat(123,'Evasion Set: [Unlocked]')
- else
- Armor = 'EVA'
- add_to_chat(158,'Evasion Set: [Locked]')
- end
- status_change(player.status)
- elseif command == 'rancor' then -- Rancor Toggle --
- if Rancor == 'ON' then
- Rancor = 'OFF'
- add_to_chat(123,'Rancor: [OFF]')
- else
- Rancor = 'ON'
- add_to_chat(158,'Rancor: [ON]')
- end
- status_change(player.status)
- elseif command == 'distance' then -- Distance Toggle --
- if player.target.distance then
- target_distance = math.floor(player.target.distance*10)/10
- add_to_chat(155,'Distance: '..target_distance)
- else
- add_to_chat(123,'No Target Selected')
- end
- elseif command == 'idle' then -- Idle Toggle --
- IdleIndex = (IdleIndex % #IdleArray) + 1
- status_change(player.status)
- add_to_chat(155,'Idle Set: ' .. IdleArray[IdleIndex])
- elseif command == 'TP' then
- add_to_chat(155,'TP Return: ['..tostring(player.tp)..']')
- elseif command:match('^SC%d$') then
- send_command('//' .. sc_map[command])
- end
- end
- -----------
- -- Misc. --
- -----------
- function find_player_in_alliance(name)
- for i,v in ipairs(alliance) do
- for k,p in ipairs(v) do
- if p.name == name then
- return p
- end
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement