Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- include('organizer-lib')
- -- *** Credit goes to Flippant for helping me with Gearswap *** --
- -- ** I Use Some of Motenten's Functions ** --
- -- Last Updated: 05/02/14 10:00 PM *Advanced Version* --
- 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 --
- WeaponIndex = 1
- WeaponArray = {"Taming","Sandung","Octant",} -- Default Sub Weapon Is Sandung. Can Delete Any Weapons/Sets That You Don't Need Or Replace/Add The New Weapons That You Want To Use. --
- IdleIndex = 1
- IdleArray = {"Movement","Regen"} -- 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 = 5 -- Set Default Distance Here --
- select_default_macro_book() -- Change Default Macro Book At The End --
- sc_map = {SC1="Exenterator",SC2="Ranged"} -- 3 Additional Binds. Can Change Whatever JA/WS/Spells You Like Here. Remember Not To Use Spaces. --
- organizer_items = {
- Dup="Duplus Grip",
- For="Pitchfork +1",
- Asyte="Ark Scythe",
- Twikniv="Twilight Knife",
- ISwod="Iron Sword",
- Watastaff="Water Staff",
- Tkniv="Thief's Knife",
- QuatreVingt="Kraken Club",
- Wring="Warp Ring",
- Xbo="Octant",
- Yla="Yetshila",}
- -- Idle/Town Sets --
- sets.Idle = {}
- sets.Idle.Regen = {
- range="Octant",
- head="Turms Cap",
- neck="Loricate Torque +1",
- ear1="Black Earring",
- ear2="Reraise Earring",
- body="Iuitl Vest +1",
- hands="plunderer's armlets +1",
- ring1="Dark Ring",
- ring2="Defending Ring",
- back="Solemnity Cape",
- waist="Flume belt",
- legs="Mummu Kecks +1",
- feet="Jute Boots +1"}
- sets.Idle.Regen.Taming = set_combine(sets.Idle.Regen,{
- main="Taming Sari",
- sub="Sandung",
- range="Octant"})
- sets.Idle.Regen.Sandung = set_combine(sets.Idle.Regen,{
- main="Taming Sari",
- sub="Sandung",
- range="Octant"})
- sets.Idle.Movement = set_combine(sets.Idle.Regen,{
- head="Turms Cap",
- neck="Loricate Torque +1",
- ear1="Black Earring",
- eart2="Reraise Earring",
- ring1="Dark Ring",
- ring2="Defending Ring",
- back="Solemnity Cape"})
- sets.Idle.Movement.Taming = set_combine(sets.Idle.Movement,{
- main="Taming Sari",
- sub="Sandung",
- range="Octant"})
- sets.Idle.Movement.Sandung = set_combine(sets.Idle.Movement,{
- main="Taming Sari",
- sub="Sandung",
- range="Octant"})
- -- Preshot --
- sets.Preshot = {
- head="Taeon Chapeau",
- neck="Loricate Torque +1",
- ear1="Dedition Earring",
- ear2="Suppanomimi",
- body="Taeon Tabard",
- hands="Taeon Gloves",
- ring1="Moonbeam Ring",
- ring2="Moonbeam Ring",
- back="Lupine Cape",
- waist="Goading Belt",
- legs="Nahtirah Trousers",
- feet="Adhemar Gamashes"}
- -- Shooting Base Set --
- sets.Midshot = {
- head="Taeon Chapeau",
- neck="Loricate Torque +1",
- ear1="Volley Earring",
- ear2="Enervating Earring",
- body="Taeon Tabard",
- hands="Taeon Gloves",
- ring1="Moonbeam Ring",
- ring2="Moonbeam Ring",
- back="Lupine Cape",
- waist="Goading Belt",
- legs="Nahtirah Trousers",
- feet="Adhemar Gamashes"}
- -- Normal TP Sets --
- sets.TP = {
- head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+3 Pet: "Mag.Atk.Bns."+3','Accuracy+22 Attack+22','"Store TP"+5',}},
- neck="Asperity necklace",
- ear1="Brutal Earring",
- ear2="Suppanomimi",
- body="Rawhide Vest",
- hands="Adhemar Wristbands",
- ring1="Rajas Ring",
- ring2="Epona's Ring",
- back="Canny cape",
- waist="Shetal stone",
- legs="Mummu Kecks +1",
- feet="Herculean Boots",
- main="Taming Sari",
- sub="Sandung",
- range="Octant"}
- sets.TP.MidACC = set_combine(sets.TP,{
- head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+3 Pet: "Mag.Atk.Bns."+3','Accuracy+22 Attack+22','"Store TP"+5',}},
- neck="Loricate Torque +1",
- ear1="Tripudio Earring",
- ear2="Suppanomimi",
- body="Adhemar Jacket",
- hands="Floral Gauntlets",
- ring1="Moonbeam Ring",
- ring2="Moonbeam Ring",
- back={ name="Toutatis's Cape", augments={'DEX+10','Accuracy+20 Attack+20','"Dual Wield"+10',}},
- waist="Shetal Stone",
- legs="Sombra Tights +1",
- feet="Taeon Boots",
- main="Taming Sari",
- sub="Sandung",
- range="Octant"})
- sets.TP.HighACC = set_combine(sets.TP.MidACC,{
- head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+3 Pet: "Mag.Atk.Bns."+3','Accuracy+22 Attack+22','"Store TP"+5',}},
- neck="Ej Necklace",
- ear1="Zennaroi Earring",
- ear2="Suppanomimi",
- body="Rawhide Vest",
- hands="Adhemar Wristbands",
- ring1="Cacoethic ring",
- ring2="Cacoethic ring +1",
- back="Canny cape",
- waist="Shetal stone",
- legs="Mummu Kecks +1",
- feet="Herculean Boots",
- main="Taming Sari",
- sub="Sandung",
- range="Octant"})
- -- March x2 + Haste --
- sets.TP.MidHaste = set_combine(sets.TP,{
- head="Skormoth Mask",
- neck="Asperity necklace",
- ear1="Brutal Earring",
- ear2="Suppanomimi",
- body="Rawhide Vest",
- hands="Adhemar Wristbands",
- ring1="Rajas Ring",
- ring2="Epona's Ring",
- back="Canny cape",
- waist="Shetal stone",
- legs="Mummu Kecks +1",
- feet="Herculean Boots",
- main="Taming Sari",
- sub="Sandung",
- range="Octant"})
- sets.TP.MidACC.MidHaste = set_combine(sets.TP.MidHaste,{
- head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+3 Pet: "Mag.Atk.Bns."+3','Accuracy+22 Attack+22','"Store TP"+5',}},
- neck="Loricate Torque +1",
- ear1="Dedition Earring",
- ear2="Suppanomimi",
- body="Herculean Vest",
- hands="Adhemar Wristbands",
- ring1="Rajas Ring",
- ring2="Defending Ring",
- back={ name="Canny Cape", augments={'DEX+3','AGI+1','"Dual Wield"+1',}},
- waist="Windbuffet Belt +1",
- legs={ name="Herculean Trousers", augments={'"Store TP"+6','Accuracy+15','Attack+1',}},
- feet="Skulker's Poulaines +1",
- main="Taming Sari",
- sub="Sandung",
- range="Octant"})
- sets.TP.HighACC.MidHaste = set_combine(sets.TP.MidACC.MidHaste,{
- head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+3 Pet: "Mag.Atk.Bns."+3','Accuracy+22 Attack+22','"Store TP"+5',}},
- neck="Ej Necklace",
- ear1="Zennaroi Earring",
- ear2="Suppanomimi",
- body="Rawhide Vest",
- hands="Adhemar Wristbands",
- ring1="Cacoethic ring",
- ring2="Cacoethic ring +1",
- back="Canny cape",
- waist="Shetal stone",
- legs="Mummu Kecks +1",
- feet="Herculean Boots",
- main="Taming Sari",
- sub="Sandung",
- range="Octant"})
- -- March x2 + Haste + Samba --
- sets.TP.HighHaste = set_combine(sets.TP.MidHaste,{
- head="Skormoth Mask",
- neck="Asperity necklace",
- ear1="Brutal Earring",
- ear2="Suppanomimi",
- body="Rawhide Vest",
- hands="Adhemar Wristbands",
- ring1="Rajas Ring",
- ring2="Epona's Ring",
- back="Canny cape",
- waist="Shetal stone",
- legs="Mummu Kecks +1",
- feet="Herculean Boots",
- main="Taming Sari",
- sub="Sandung",
- range="Octant"})
- sets.TP.MidACC.HighHaste = set_combine(sets.TP.HighHaste,{
- head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+3 Pet: "Mag.Atk.Bns."+3','Accuracy+22 Attack+22','"Store TP"+5',}},
- neck="Loricate Torque +1",
- ear1="Dedition Earring",
- ear2="Suppanomimi",
- body="Herculean Vest",
- hands="Adhemar Wristbands",
- ring1="Rajas Ring",
- ring2="Defending Ring",
- back={ name="Canny Cape", augments={'DEX+3','AGI+1','"Dual Wield"+1',}},
- waist="Windbuffet Belt +1",
- legs={ name="Herculean Trousers", augments={'"Store TP"+6','Accuracy+15','Attack+1',}},
- feet="Skulker's Poulaines +1",
- main="Taming Sari",
- sub="Sandung",
- range="Octant"})
- sets.TP.HighACC.MidHaste = set_combine(sets.TP.MidACC.MidHaste,{
- head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+3 Pet: "Mag.Atk.Bns."+3','Accuracy+22 Attack+22','"Store TP"+5',}},
- neck="Ej Necklace",
- ear1="Zennaroi Earring",
- ear2="Suppanomimi",
- body="Rawhide Vest",
- hands="Adhemar Wristbands",
- ring1="Cacoethic ring",
- ring2="Cacoethic ring +1",
- back="Canny cape",
- waist="Shetal stone",
- legs="Mummu Kecks +1",
- feet="Herculean Boots",
- main="Taming Sari",
- sub="Sandung",
- range="Octant"})
- -- Full TH TP Set --
- sets.TP.TH = {
- range="Octant",
- head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+3 Pet: "Mag.Atk.Bns."+3','Accuracy+22 Attack+22','"Store TP"+5',}},
- neck="Loricate Torque +1",
- ear1="Dedition Earring",
- ear2="Suppanomimi",
- body="Adhemar Jacket",
- hands="Floral Gauntlets",
- ring1="Moonbeam Ring",
- ring2="Moonbeam Ring",
- back={ name="Toutatis's Cape", augments={'DEX+10','Accuracy+20 Attack+20','"Dual Wield"+10',}},
- waist="Shetal Stone",
- legs="Sombra Tights +1",
- feet="Taeon Boots"}
- -- TP Rancor ON Neck --
- sets.TP.Rancor = {neck="Rancor Collar"}
- -- PDT/MDT Sets --
- sets.PDT = {
- head="Meghanada Visor +1",
- neck="Loricate Torque +1",
- ear1="Black Earring",
- body="Meghanada Cuirie +1",
- hands="Meghanada Gloves +1",
- back="Mubvumbamiri Mantle",
- waist="Flume Belt",
- legs="Meghanada Chausses +1",
- feet="Meghanada Jambeaux +1"}
- sets.MDT = set_combine(sets.PDT,{})
- -- 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,{})
- -- WS Base Set --
- sets.WS = {}
- -- WS Sets --
- sets.WS["Mercy Stroke"] = {
- head="Lustratio Cap",
- neck="Fotia gorget",
- ear1="Steelflash Earring",
- ear2="Bladeborn Earring",
- body="Taeon Tabard",
- hands="Meghanada Gloves +1",
- ring1="Rajas Ring",
- ring2="Begrudging Ring",
- back="Bleating Mantle",
- waist="Fotia Belt",
- legs="Lustratio Subligar",
- feet={ name="Herculean Boots", augments={'Accuracy+19','Weapon skill damage +5%',}}}
- sets.WS["Mercy Stroke"].SA = {
- head="Lustratio Cap",
- neck="Fotia gorget",
- ear1="Steelflash Earring",
- ear2="Bladeborn Earring",
- body="Taeon Tabard",
- hands="Meghanada Gloves +1",
- ring1="Rajas Ring",
- ring2="Begrudging Ring",
- back="Bleating Mantle",
- waist="Fotia Belt",
- legs="Lustratio Subligar",
- feet={ name="Herculean Boots", augments={'Accuracy+19','Weapon skill damage +5%',}}}
- sets.WS["Mercy Stroke"].TA = {
- head="Lustratio Cap",
- neck="Fotia gorget",
- ear1="Steelflash Earring",
- ear2="Bladeborn Earring",
- body="Taeon Tabard",
- hands="Meghanada Gloves +1",
- ring1="Rajas Ring",
- ring2="Begrudging Ring",
- back="Bleating Mantle",
- waist="Fotia Belt",
- legs="Lustratio Subligar",
- feet={ name="Herculean Boots", augments={'Accuracy+19','Weapon skill damage +5%',}}}
- sets.WS.Exenterator = {
- head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+3 Pet: "Mag.Atk.Bns."+3','Accuracy+22 Attack+22','"Store TP"+5',}},
- neck="Ej Necklace",
- ear1="Brutal Earring",
- ear2="Suppanomimi",
- body="Taeon Tabard",
- hands="Adhemar Wristbands",
- ring1="Cacoethic ring",
- ring2="Cacoethic ring +1",
- back="Bleating Mantle",
- waist="Shetal stone",
- legs="Mummu Kecks +1",
- feet={ name="Herculean Boots", augments={'Accuracy+19','Weapon skill damage +5%',}}}
- sets.WS.Exenterator.SA = set_combine(sets.WS.Exenterator,{})
- sets.WS.Exenterator.TA = set_combine(sets.WS.Exenterator,{})
- sets.WS.Evisceration = {
- range="Octant",
- head="Sukeroku Hachimaki",
- neck="Fotia gorget",
- ear1="Raider's Earring",
- ear2="Tati Earring",
- body="Rawhide Vest",
- hands={ name="Herculean Gloves", augments={'Accuracy+30','Weapon skill damage +4%','DEX+7','Attack+6',}},
- ring1="Mujin Band",
- ring2="Epona's Ring",
- back="Bleating Mantle",
- waist="Shadow Belt",
- legs="Taeon Tights",
- feet="Plunderer's Poulaines +1"}
- sets.WS.Evisceration.SA = set_combine(sets.WS.Evisceration,{})
- sets.WS.Evisceration.TA = set_combine(sets.WS.Evisceration,{})
- sets.WS["Rudra's Storm"] = {
- range="Octant",
- head="Sukeroku Hachimaki",
- neck="Fotia Gorget",
- ear1="Ishvara Earring",
- ear2="Moonshade earring",
- body="Herculean Vest",
- hands="Skulker's Armlets +1",
- ring1="Mujin Band",
- ring2="Ramuh Ring",
- back={ name="Toutatis's Cape", augments={'DEX+10','Accuracy+20 Attack+20','"Dual Wield"+10',}},
- waist="Shadow Belt",
- legs={ name="Herculean Trousers", augments={'Sklchn.dmg.+5%','Rng.Atk.+5',}},
- feet={ name="Herculean Boots", augments={'Accuracy+19','Weapon skill damage +5%',}}}
- sets.WS["Rudra's Storm"].SA = set_combine(sets.WS["Rudra's Storm"],{hands="Skulker's Armlets +1"})
- sets.WS["Rudra's Storm"].TA = set_combine(sets.WS["Rudra's Storm"],{})
- sets.WS["Aeolian Edge"] = {
- head="Taeon Chapeau",
- neck="Fotia gorget",
- ear1="Ishvara Earring",
- ear2="Friomisi earring",
- body="Taeon Tabard",
- hands={ name="Herculean Gloves", augments={'Accuracy+30','Weapon skill damage +4%','DEX+7','Attack+6',}},
- ring1="Shiva Ring +1",
- ring2="Ramuh Ring",
- back="Toro Cape",
- waist="Fotia Belt",
- legs="Taeon Tights",
- feet={ name="Herculean Boots", augments={'Accuracy+19','Weapon skill damage +5%',}}}
- sets.WS["Mandalic Stab"] = {
- head="Sukeroku Hachimaki",
- neck="Fotia Gorget",
- ear1="Ishvara Earring",
- ear2="Moonshade earring",
- body="Abnoba Kaftan",
- hands="Skulker's Armlets +1",
- ring1="Mujin Band",
- ring2="Ramuh Ring",
- waist="Fotia Belt",
- legs="Taeon Tights",
- feet={ name="Herculean Boots", augments={'Accuracy+19','Weapon skill damage +5%',}}}
- sets.WS["Last Stand"] = {
- head="Taeon Chapeau",
- neck="Fotia gorget",
- ear1="Ishvara Earring",
- ear2="Enervating Earring",
- body="Taeon Tabard",
- hands={ name="Herculean Gloves", augments={'Accuracy+30','Weapon skill damage +4%','DEX+7','Attack+6',}},
- ring1="Garuda Ring +1",
- back="Libeccio mantle",
- waist="Fotia Belt",
- legs="Taeon Tights",
- feet={ name="Herculean Boots", augments={'Accuracy+19','Weapon skill damage +5%',}}}
- -- JA Sets --
- sets.JA = {}
- TH_Gear = {
- range="Octant",
- head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+3 Pet: "Mag.Atk.Bns."+3','Accuracy+22 Attack+22','"Store TP"+5',}},
- neck="Loricate Torque +1",
- ear1="Dedition Earring",
- ear2="Suppanomimi",
- body="Adhemar Jacket",
- hands="Floral Gauntlets",
- ring1="Moonbeam Ring",
- ring2="Moonbeam Ring",
- back={ name="Toutatis's Cape", augments={'DEX+10','Accuracy+20 Attack+20','"Dual Wield"+10',}},
- waist="Shetal Stone",
- legs="Sombra Tights +1",
- feet="Taeon Boots"}
- sets.JA.Feint = {legs="Plunderer's Culottes +1"}
- sets.JA.Conspirator = {body="Skulker's Vest"}
- sets.JA.Accomplice = {head="Skulker's Bonnet"}
- sets.JA.Collaborator = {head="Skulker's Bonnet"}
- sets.JA["Perfect Dodge"] = {hands="Plun. Armlets +1"}
- sets.JA.Steal = {head="Plunderer's Bonnet",feet="Pillager's Poulaines"}
- sets.JA.Flee = {feet="Pillager's Poulaines"}
- sets.JA.Despoil = {legs="Skulker's Culottes",feet="Skulker's Poulaines +1"}
- sets.JA.Mug = {head="Plunderer's Bonnet"}
- sets.JA.Hide = {body="Pillager's Vest +1"}
- sets.JA["Assassin's Charge"] = {feet="Plunderer's Poulaines +1"}
- sets.JA.Provoke = TH_Gear
- sets.JA["Sneak Attack"] = {back="Toutatis's Cape"}
- sets.JA["Trick Attack"] = set_combine(sets.JA["Sneak Attack"],{back="Toutatis's Cape"})
- -- Step Set --
- sets.Step = set_combine({},TH_Gear)
- -- Flourish Set --
- sets.Flourish = set_combine({},TH_Gear)
- -- Waltz Set --
- sets.Waltz = {ring1="Dark Ring",}
- sets.Precast = {}
- -- Fastcast Set --
- sets.Precast.FastCast = {
- head="Haruspex Hat +1",
- neck="Orunmila's Torque",
- ear1="Loquac. Earring",
- ring1="Prolix Ring",
- legs="Enif Cosciales"}
- -- Utsusemi Precast Set --
- sets.Precast.Utsusemi = set_combine(sets.Precast.FastCast,{neck="Magoraga Beads"})
- sets.Midcast = {}
- -- Magic Haste Set --
- sets.Midcast.Haste = set_combine(sets.PDT,{})
- end
- 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')
- return
- end
- end
- function precast(spell,action)
- if spell.action_type == 'Ranged Attack' then
- equip(sets.Preshot)
- end
- if spell.type == "WeaponSkill" then
- if player.status ~= 'Engaged' then -- Cancel WS If You Are Not Engaged. Can Delete It If You Don't Need It --
- cancel_spell()
- add_to_chat(123,'Unable To Use WeaponSkill: [Disengaged]')
- 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
- 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" 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 string.find(spell.type,'Waltz') then
- equip(sets.Waltz)
- end
- end
- function midcast(spell,action)
- if spell.action_type == 'Ranged Attack' then
- equip(sets.Midshot)
- end
- if spell.type:endswith('Magic') or spell.type == "Ninjutsu" 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
- 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
- function status_change(new,old)
- if player.equipment.range ~= 'empty' then
- disable('range','ammo')
- else
- enable('range','ammo')
- end
- if Armor == 'PDT' then
- equip(sets.PDT)
- elseif Armor == 'MDT' then
- equip(sets.MDT)
- 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 == 2 and buffactive.Haste and equipSet["HighHaste"] then
- equipSet = equipSet["HighHaste"]
- end
- if buffactive.March == 1 and buffactive.Haste 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
- equipSet = sets.Idle
- if equipSet[IdleArray[IdleIndex]] then
- equipSet = equipSet[IdleArray[IdleIndex]]
- end
- if equipSet[WeaponArray[WeaponIndex]] then
- equipSet = equipSet[WeaponArray[WeaponIndex]]
- end
- equip(equipSet)
- end
- end
- function buff_change(buff,gain)
- buff = string.lower(buff)
- if buff == "sneak attack" then
- SA = gain
- elseif buff == "trick attack" then
- TA = gain
- elseif buff == 'weakness' then -- Weakness Timer --
- if gain then
- send_command('timers create "Weakness" 300 up')
- else
- send_command('timers delete "Weakness"')
- end
- 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 == 'C1' then -- Accuracy Level Toggle --
- AccIndex = (AccIndex % #AccArray) + 1
- status_change(player.status)
- add_to_chat(158,'Accuracy Level: ' .. AccArray[AccIndex])
- elseif command == 'C17' then -- Main Weapon Toggle --
- WeaponIndex = (WeaponIndex % #WeaponArray) + 1
- add_to_chat(158,'Main Weapon: '..WeaponArray[WeaponIndex])
- status_change(player.status)
- elseif command == 'C5' then -- Auto Update Gear Toggle --
- status_change(player.status)
- add_to_chat(158,'Auto Update Gear')
- elseif command == 'C2' 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 == 'C9' 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 == 'C7' 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 == 'C15' 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 == 'C3' 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 == 'C16' 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 == 'C8' then -- Distance Toggle --
- if player.target.distance then
- target_distance = math.floor(player.target.distance*10)/10
- add_to_chat(158,'Distance: '..target_distance)
- else
- add_to_chat(123,'No Target Selected')
- end
- elseif command == 'C6' then -- Idle Toggle --
- IdleIndex = (IdleIndex % #IdleArray) + 1
- status_change(player.status)
- add_to_chat(158,'Idle Set: ' .. IdleArray[IdleIndex])
- elseif command == 'TP' then
- add_to_chat(158,'TP Return: ['..tostring(player.tp)..']')
- elseif command:match('^SC%d$') then
- send_command('//' .. sc_map[command])
- end
- end
- function refine_waltz(spell,action)
- if spell.type ~= 'Waltz' then
- return
- end
- if spell.name == "Healing Waltz" or spell.name == "Divine Waltz" or spell.name == "Divine Waltz II" then
- return
- end
- local newWaltz = spell.english
- local waltzID
- local missingHP
- if spell.target.type == "SELF" then
- missingHP = player.max_hp - player.hp
- elseif spell.target.isallymember then
- local target = find_player_in_alliance(spell.target.name)
- local est_max_hp = target.hp / (target.hpp/100)
- missingHP = math.floor(est_max_hp - target.hp)
- end
- if missingHP ~= nil then
- if player.sub_job == 'DNC' then
- if missingHP < 40 and spell.target.name == player.name then
- add_to_chat(123,'Full HP!')
- cancel_spell()
- return
- elseif missingHP < 150 then
- newWaltz = 'Curing Waltz'
- waltzID = 190
- elseif missingHP < 300 then
- newWaltz = 'Curing Waltz II'
- waltzID = 191
- else
- newWaltz = 'Curing Waltz III'
- waltzID = 192
- end
- else
- return
- end
- end
- local waltzTPCost = {['Curing Waltz'] = 20, ['Curing Waltz II'] = 35, ['Curing Waltz III'] = 50, ['Curing Waltz IV'] = 65, ['Curing Waltz V'] = 80}
- local tpCost = waltzTPCost[newWaltz]
- local downgrade
- if player.tp < tpCost and not buffactive.trance then
- if player.tp < 20 then
- add_to_chat(123, 'Insufficient TP ['..tostring(player.tp)..']. Cancelling.')
- cancel_spell()
- return
- elseif player.tp < 35 then
- newWaltz = 'Curing Waltz'
- elseif player.tp < 50 then
- newWaltz = 'Curing Waltz II'
- elseif player.tp < 65 then
- newWaltz = 'Curing Waltz III'
- elseif player.tp < 80 then
- newWaltz = 'Curing Waltz IV'
- end
- downgrade = 'Insufficient TP ['..tostring(player.tp)..']. Downgrading to '..newWaltz..'.'
- end
- if newWaltz ~= spell.english then
- send_command('@input /ja "'..newWaltz..'" '..tostring(spell.target.raw))
- if downgrade then
- add_to_chat(158, downgrade)
- end
- cancel_spell()
- return
- end
- if missingHP > 0 then
- add_to_chat(158,'Trying to cure '..tostring(missingHP)..' HP using '..newWaltz..'.')
- end
- end
- 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
- function sub_job_change(newSubjob, oldSubjob)
- select_default_macro_book()
- end
- function set_macro_page(set,book)
- if not tonumber(set) then
- add_to_chat(123,'Error setting macro page: Set is not a valid number ('..tostring(set)..').')
- return
- end
- if set < 1 or set > 10 then
- add_to_chat(123,'Error setting macro page: Macro set ('..tostring(set)..') must be between 1 and 10.')
- return
- end
- if book then
- if not tonumber(book) then
- add_to_chat(123,'Error setting macro page: book is not a valid number ('..tostring(book)..').')
- return
- end
- if book < 1 or book > 20 then
- add_to_chat(123,'Error setting macro page: Macro book ('..tostring(book)..') must be between 1 and 20.')
- return
- end
- send_command('@input /macro book '..tostring(book)..';wait .1;input /macro set '..tostring(set))
- else
- send_command('@input /macro set '..tostring(set))
- end
- end
- function select_default_macro_book()
- -- Default macro set/book
- if player.sub_job == 'WAR' then
- set_macro_page(1, 11)
- elseif player.sub_job == 'DNC' then
- set_macro_page(1, 11)
- elseif player.sub_job == 'NIN' then
- set_macro_page(7, 11)
- else
- set_macro_page(1, 11)
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement