Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- *** Credit goes to Flippant for helping me with Gearswap *** --
- -- ** I Use Some of Motenten's Functions ** --
- -- Last Updated: 05/02/14 10:00 PM *Fixed Aftercast Issue* --
- function get_sets()
- AccIndex = 1
- AccArray = {"LowACC","MidACC","HighACC","MaxACC"} -- 4 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 = {"Movement","Regen"} -- Default Idle Set Is Movement --
- Armor = 'None'
- Skillchain = false
- include('organizer-lib.lua')
- target_distance = 5 -- Set Default Distance Here --
- select_default_macro_book() -- Change Default Macro Book At The End --
- RfCape = {name="Toetapper Mantle",augments={"Store TP +1","Dual Wield +3","Rev. Flourish +30"}}
- sc_map = {SC1="Exenterator", SC2="FeatherStep", SC3="HasteSamba"} -- 3 Additional Binds. Can Change Whatever JA/WS/Spells You Like Here. Remember Not To Use Spaces. --
- -- Idle/Town Sets --
- sets.Idle = {ammo="Staunch Tathlum",
- head="Turms Cap",
- body="Horos Casaque +1",
- hands="Meghanada Gloves +2",
- legs="Meghanada Chausses +2",
- feet="Skadi's Jambeaux +1",
- neck="Loricate Torque +1",
- waist="Flume Belt +1",
- left_ear="Sanare Earring",
- right_ear="Genmei Earring",
- ring2="Defending Ring",
- ring1="Gelatinous Ring +1",
- back="Moonbeam Cape"}
- sets.Idle.Regen = { ammo="Staunch Tathlum",
- head="Turms Cap",
- body="Horos Casaque +1",
- hands="Meghanada Gloves +2",
- legs="Meghanada Chausses +2",
- feet="Skadi's Jambeaux +1",
- neck="Loricate Torque +1",
- waist="Flume Belt +1",
- left_ear="Sanare Earring",
- right_ear="Genmei Earring",
- ring2="Defending Ring",
- ring1="Gelatinous Ring +1",
- back="Moonbeam Cape"}
- sets.Idle.Movement = set_combine(sets.Idle.Regen,{
- ammo="Staunch Tathlum",
- head="Turms Cap",
- body="Horos Casaque +1",
- hands="Meghanada Gloves +2",
- legs="Meghanada Chausses +2",
- feet="Skadi's Jambeaux +1",
- neck="Loricate Torque +1",
- waist="Flume Belt +1",
- left_ear="Sanare Earring",
- right_ear="Genmei Earring",
- ring2="Defending Ring",
- ring1="Gelatinous Ring +1",
- back="Moonbeam Cape"})
- -- Normal TP Sets --
- sets.TP = {
- ammo="Yamarang",
- head="Dampening Tam",
- body="Adhemar Jacket +1",
- hands="Adhemar Wristbands +1",
- legs="Samnuha Tights",
- feet={ name="Herculean Boots", augments={'Accuracy+30','"Triple Atk."+4',}},
- neck="Clotharius Torque",
- waist="Windbuffet Belt +1",
- left_ear="Sherida Earring",
- right_ear="Telos Earring",
- left_ring="Hetairoi Ring",
- back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Store TP"+10',}},
- right_ring="Epona's Ring"}
- sets.TP.MidACC = set_combine(sets.TP,{})
- sets.TP.HighACC = set_combine(sets.TP.MidACC,{})
- sets.TP.MaxACC = set_combine(sets.TP.HighACC,{})
- -- Haste --
- sets.TP.LowHaste = set_combine(sets.TP,{
- ammo="Yamarang",
- head="Dampening Tam",
- body="Adhemar Jacket +1",
- hands="Adhemar Wristbands +1",
- legs="Samnuha Tights",
- feet={ name="Herculean Boots", augments={'Accuracy+30','"Triple Atk."+4',}},
- neck="Clotharius Torque",
- waist="Windbuffet Belt +1",
- left_ear="Sherida Earring",
- right_ear="Telos Earring",
- back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Store TP"+10',}},
- left_ring="Hetairoi Ring",
- right_ring="Epona's Ring"})
- sets.TP.MidACC.LowHaste = set_combine(sets.TP.LowHaste,{})
- sets.TP.HighACC.LowHaste = set_combine(sets.TP.MidACC.LowHaste,{})
- sets.TP.MaxACC.LowHaste = set_combine(sets.TP.HighACC.LowHaste,{})
- -- March x2 + Haste --
- sets.TP.MidHaste = set_combine(sets.TP.LowHaste,{
- ammo="Yamarang",
- head="Dampening Tam",
- body="Herculean Vest",
- hands="Adhemar Wristbands +1",
- legs="Samnuha Tights",
- feet={ name="Herculean Boots", augments={'Accuracy+30','"Triple Atk."+4',}},
- neck="Clotharius Torque",
- waist="Windbuffet Belt +1",
- left_ear="Sherida Earring",
- right_ear="Telos Earring",
- left_ring="Hetairoi Ring",
- back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Store TP"+10',}},
- right_ring="Epona's Ring"})
- sets.TP.MidACC.MidHaste = set_combine(sets.TP.MidHaste,{})
- sets.TP.HighACC.MidHaste = set_combine(sets.TP.MidACC.MidHaste,{})
- sets.TP.MaxACC.MidHaste = set_combine(sets.TP.HighACC.MidHaste,{})
- -- March x2 + Haste + Samba --
- sets.TP.HighHaste = set_combine(sets.TP.MidHaste,{ammo="Yamarang",
- head="Dampening Tam",
- body="Herculean Vest",
- hands="Adhemar Wristbands +1",
- legs="Samnuha Tights",
- feet={ name="Herculean Boots", augments={'Accuracy+30','"Triple Atk."+4',}},
- neck="Clotharius Torque",
- waist="Windbuffet Belt +1",
- left_ear="Sherida Earring",
- right_ear="Telos Earring",
- left_ring="Hetairoi Ring",
- back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Store TP"+10',}},
- right_ring="Epona's Ring"})
- sets.TP.MidACC.HighHaste = set_combine(sets.TP.HighHaste,{})
- sets.TP.HighACC.HighHaste = set_combine(sets.TP.MidACC.HighHaste,{})
- sets.TP.MaxACC.HighHaste = set_combine(sets.TP.HighACC.HighHaste,{})
- -- Climactic Flourish TP Set --
- sets.TP['Climactic Flourish'] = {head="Maculele Tiara +1"}
- -- PDT/MDT Sets --
- sets.PDT = {ammo="Staunch Tathlum",
- head="Turms Cap",
- body="Horos Casaque +1",
- hands="Meghanada Gloves +2",
- legs="Meghanada Chausses +2",
- feet="Skadi's Jambeaux +1",
- neck="Loricate Torque +1",
- waist="Flume Belt +1",
- left_ear="Sanare Earring",
- right_ear="Genmei Earring",
- ring2="Defending Ring",
- ring1="Gelatinous Ring +1",
- back="Moonbeam Cape"}
- 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 = {
- ammo="Charis Feather",
- head="Maculele Tiara +1",
- body="Meghanada Cuirie +2",
- hands="Meghanada Gloves +2",
- legs="Samnuha Tights",
- feet={ name="Herculean Boots", augments={'Accuracy+4 Attack+4','Weapon skill damage +5%','DEX+8','Accuracy+12','Attack+13',}},
- neck="Fotia Gorget",
- waist="Fotia Belt",
- left_ear="Ishvara Earring",
- right_ear="Moonshade Earring",
- left_ring="Regal Ring",
- back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','Weapon skill damage +10%',}},
- right_ring="Ilabrat Ring"}
- -- WS Sets --
- sets.WS.Exenterator = {
- head="Meghanada Visor +2",
- neck="Fotia Gorget",
- ear1="Sherida Earring",
- ear2="Cessance Earring",
- body="Meg. Cuirie +2",
- hands="Meg. Gloves +2",
- ring1="Epona's Ring",
- ring2="Regal Ring",
- waist="Fotia Belt",
- back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','Weapon skill damage +10%',}},
- feet={ name="Herculean Boots", augments={'Accuracy+30','"Triple Atk."+4',}}, }
- sets.WS.Exenterator.MidACC = set_combine(sets.WS.Exenterator,{})
- sets.WS.Exenterator.HighACC = set_combine(sets.WS.Exenterator.MidACC,{})
- sets.WS["Pyrrhic Kleos"] = {
- ammo="Charis Feather",
- head="Adhemar Bonnet +1",
- neck="Fotia Gorget",
- ear2="Telos Earring",
- ear1="Sherida Earring",
- body="Meghanada Cuirie +2",
- hands={ name="Herculean Gloves", augments={'Accuracy+23 Attack+23','Crit. hit damage +4%','STR+10','Accuracy+10','Attack+1',}},
- ring1="Epona's Ring",
- ring2="Ilabrat Ring",
- waist="Fotia Belt",
- back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','Weapon skill damage +10%',}},
- feet={ name="Herculean Boots", augments={'Accuracy+30','"Triple Atk."+4',}},
- legs="Samnuha Tights"}
- sets.WS["Pyrrhic Kleos"].MidACC = set_combine(sets.WS["Pyrrhic Kleos"],{})
- sets.WS["Pyrrhic Kleos"].HighACC = set_combine(sets.WS["Pyrrhic Kleos"].MidACC,{})
- sets.WS["Pyrrhic Kleos"].MaxACC = set_combine(sets.WS["Pyrrhic Kleos"].HighACC,{})
- sets.WS["Rudra's Storm"] = {
- ammo="Charis Feather",
- head="Lilitu Headpiece",
- body="Meghanada Cuirie +2",
- hands="Meghanada Gloves +2",
- legs="Lusratio Subligar +1",
- feet={ name="Herculean Boots", augments={'Accuracy+4 Attack+4','Weapon skill damage +5%','DEX+8','Accuracy+12','Attack+13',}},
- neck="Fotia Gorget",
- waist="Fotia Belt",
- left_ear="Ishvara Earring",
- right_ear="Moonshade Earring",
- left_ring="Regal Ring",
- back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','Weapon skill damage +10%',}},
- right_ring="Ilabrat Ring"}
- sets.WS["Rudra's Storm"].MidACC = set_combine(sets.WS["Rudra's Storm"],{})
- sets.WS["Rudra's Storm"].HighACC = set_combine(sets.WS["Rudra's Storm"].MidACC,{})
- sets.WS["Rudra's Storm"].MaxACC = set_combine(sets.WS["Rudra's Storm"].HighACC,{})
- sets.WS.Evisceration = {
- ammo="Charis Feather",
- head="Adhemar Bonnet +1",
- neck="Fotia Gorget",
- ear2="Telos Earring",
- ear1="Sherida Earring",
- body="Abnoba Kaftan",
- hands={ name="Herculean Gloves", augments={'Accuracy+23 Attack+23','Crit. hit damage +4%','STR+10','Accuracy+10','Attack+1',}},
- ring1="Begrudging Ring",
- ring2="Regal Ring",
- back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','Weapon skill damage +10%',}},
- waist="Fotia Belt",
- feet={ name="Herculean Boots", augments={'Accuracy+30','"Triple Atk."+4',}},
- legs="Lusratio Subligar +1"}
- sets.WS.Evisceration.MidACC = set_combine(sets.WS.Evisceration,{})
- sets.WS.Evisceration.HighACC = set_combine(sets.WS.Evisceration.MidACC,{})
- sets.WS.Evisceration.MaxACC = set_combine(sets.WS.Evisceration.HighACC,{})
- sets.WS["Aeolian Edge"] = {
- ammo="Pemphredo Tathlum",
- head={ name="Herculean Helm", augments={'Mag. Acc.+20 "Mag.Atk.Bns."+20','Weapon skill damage +4%','STR+4','"Mag.Atk.Bns."+11',}},
- body={ name="Samnuha Coat", augments={'Mag. Acc.+15','"Mag.Atk.Bns."+15','"Fast Cast"+5','"Dual Wield"+5',}},
- hands={ name="Leyline Gloves", augments={'Accuracy+15','Mag. Acc.+15','"Mag.Atk.Bns."+15','"Fast Cast"+3',}},
- legs={ name="Herculean Trousers", augments={'Mag. Acc.+20 "Mag.Atk.Bns."+20','Crit. hit damage +4%','INT+3','Mag. Acc.+14','"Mag.Atk.Bns."+14',}},
- feet={ name="Herculean Boots", augments={'Mag. Acc.+20 "Mag.Atk.Bns."+20','Crit. hit damage +1%','INT+8','Mag. Acc.+5','"Mag.Atk.Bns."+4',}},
- neck="Sanctity Necklace",
- waist="Eschan Stone",
- left_ear="Friomisi Earring",
- right_ear="Crematio Earring",
- left_ring="Regal Ring",
- right_ring="Shiva Ring +1",
- back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','Weapon skill damage +10%',}}}
- sets.WS["Aeolian Edge"].MidACC = set_combine(sets.WS["Aeolian Edge"],{})
- sets.WS["Aeolian Edge"].HighACC = set_combine(sets.WS["Aeolian Edge"].MidACC,{})
- -- JA Sets --
- sets.JA = {
- neck="Unmoving Collar",
- body="Horos Casaque +1",
- hands="Macu. Bangles +1",
- ring1="Epona's Ring",
- ring2="Patricius Ring",
- feet="Horos Toe Shoes +1"}
- sets.JA.Trance = {head="Horos Tiara +1"}
- sets.JA['No Foot Rise'] = {body="Horos Casaque +1"}
- -- Jig Set --
- sets.Jig = {legs="Horos Tights",feet="Maxixi Toeshoes +3"}
- -- Step Base Set --
- sets.Step = {ammo="Yamarang",
- head="Maxixi Tiara +2",
- body="Maxixi Casaque +3",
- hands="Maxixi Bangles +2",
- legs="Maxixi Tights +1",
- feet="Maxixi Toeshoes +3",
- neck="Sanctity Necklace",
- waist="Eschan Stone",
- left_ear="Dignitary's Earring",
- right_ear="Telos Earring",
- left_ring="Regal Ring",
- back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Store TP"+10',}},
- right_ring="Varar Ring +1"}
- sets.Step['Feather Step'] = set_combine(sets.Step,{feet="Charis Shoes +2"})
- -- Samba Set --
- sets.Samba = {
- head="Maxixi Tiara +2",
- back="Senuna's Mantle"}
- -- Flourish Base Set --
- sets.Flourish = {}
- sets.Flourish['Reverse Flourish'] = set_combine(sets.Flourish,{hands="Macu. Bangles +1", back="Toetapper mantle"})
- sets.Flourish['Climactic Flourish'] = set_combine(sets.Flourish,{head="Maculele Tiara +1"})
- sets.Flourish['Striking Flourish'] = set_combine(sets.Flourish,{body="Macu. Casaque +1"})
- sets.Flourish['Violent Flourish'] = set_combine(sets.Flourish,{
- ammo="Pemphredo Tathlum",
- head="Maxixi Tiara +2",
- feet="Maxixi Shoes +2",
- hands="Maxixi Bangles +2",
- legs="Maxixi Tights +1",
- neck="Sanctity Necklace",
- ear2="Digni. Earring",
- body="Horos Casaque +1",
- ring1="Regal Ring",
- ring2="Sangoma Ring",
- back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Store TP"+10',}},
- waist="Eschan Stone"})
- sets.Flourish['Desperate Flourish'] = set_combine(sets.Flourish)
- sets.Flourish['Wild Flourish'] = set_combine(sets.Flourish)
- sets.Skillchain = {
- hands="Macu. Bangles +1"}
- -- Waltz Set --
- sets.Waltz = {head="Anwig Salade",
- ammo="Yamarang",
- neck="Unmoving Collar +1",
- body="Maxixi Casaque +3",
- hands="Regal Gloves",
- waist="Aristo Belt",
- ring1="Carbuncle Ring +1",
- ring2="Carbuncle Ring",
- legs="Desultor Tassets",
- feet="Maxixi Toeshoes +3",
- ear1="Roundel Earring",
- ear2="Cryptic Earring",
- back={ name="Senuna's Mantle", augments={'CHR+20','CHR+10','"Waltz" potency +10%',}}}
- sets.Precast = {}
- -- Fastcast Set --
- sets.Precast.FastCast = {
- ammo="Impatiens",
- head={ name="Herculean Helm", augments={'"Fast Cast"+6','STR+7',}},
- body={ name="Taeon Tabard", augments={'"Fast Cast"+4',}},
- hands={ name="Leyline Gloves", augments={'Accuracy+15','Mag. Acc.+15','"Mag.Atk.Bns."+15','"Fast Cast"+3',}},
- feet={ name="Herculean Boots", augments={'"Fast Cast"+5','MND+2','Mag. Acc.+8',}},
- neck="Orunmila's Torque",
- waist="Flume Belt",
- left_ear="Etiolation Earring",
- right_ear="Loquac. Earring",
- left_ring="Prolix Ring",
- right_ring="Lebeche Ring"}
- -- Utsusemi Precast Set --
- sets.Precast.Utsusemi = set_combine(sets.Precast.FastCast,{})
- 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
- cancel_spell()
- send_command('input /item "Echo Drops" <me>')
- elseif spell.english == "Berserk" and buffactive.Berserk then
- cancel_spell()
- send_command('Aggressor')
- elseif spell.type == "WeaponSkill" and spell.target.distance > target_distance and player.status == 'Engaged' then
- cancel_spell()
- add_to_chat(123, spell.name..' Canceled: [Out of Range]')
- return
- end
- end
- function precast(spell, action)
- 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 equipSet[AccArray[AccIndex]] then
- equipSet = equipSet[AccArray[AccIndex]]
- end
- if Skillchain then
- equipSet = set_combine(equipSet,sets.Skillchain)
- end
- if spell.english == "Rudra's Storm" and player.tp > 2499 then
- equipSet = set_combine(equipSet,{ear2="Sherida Earring"})
- end
- equip(equipSet)
- end
- elseif spell.type == "JobAbility" then
- if sets.JA[spell.english] then
- if spell.english == 'Trance' and buffactive['Saber Dance'] then
- cast_delay(0.2)
- send_command('cancel Saber Dance')
- end
- equip(sets.JA[spell.english])
- 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.english .. ' Canceled: [3+ Images]')
- return
- else
- equip(sets.Precast.Utsusemi)
- end
- else
- equip(sets.Precast.FastCast)
- end
- elseif spell.type == "Step" then
- if spell.english == 'Feather Step' then
- equip(sets.Step['Feather Step'])
- else
- equip(sets.Step)
- end
- elseif spell.type == "Waltz" then
- if buffactive['Saber Dance'] then
- cast_delay(0.2)
- send_command('cancel Saber Dance')
- end
- refine_waltz(spell,action)
- equip(sets.Waltz)
- elseif spell.type == "Jig" then
- if spell.english == 'Spectral Jig' and buffactive.Sneak then
- cast_delay(0.2)
- send_command('cancel Sneak')
- end
- equip(sets.Jig)
- elseif spell.type == 'Samba' then
- if buffactive['Fan Dance'] then
- cast_delay(0.2)
- send_command('cancel Fan Dance')
- end
- equip(sets.Samba)
- elseif string.find(spell.type,'Flourish') then
- if sets.Flourish[spell.english] then
- equip(sets.Flourish[spell.english])
- end
- end
- end
- function midcast(spell, action)
- 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.english == "Wild Flourish" and not spell.interrupted then
- Skillchain = true
- send_command('wait 7;gs c clear Skillchain')
- elseif spell.type == "WeaponSkill" and not spell.interrupted then
- Skillchain = not Skillchain
- send_command('wait 0.2;gs c TP;wait 7;gs c clear Skillchain')
- else
- status_change(player.status)
- end
- if spell.english == 'Haste Samba' then
- timer_haste_samba()
- end
- status_change(player.status)
- end
- function status_change(new,old)
- 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.Embrava and (buffactive.Haste or buffactive.March) and buffactive['Haste Samba']) or (buffactive.March and buffactive.Haste and buffactive['Haste Samba']) or (buffactive['Mighty Guard'] and buffactive.Haste) or (buffactive.Haste == 2 and buffactive['Haste Samba']) and equipSet["HighHaste"] then
- equipSet = equipSet["HighHaste"]
- end
- if (buffactive.Embrava and (buffactive.Haste or buffactive.March or buffactive['Haste Samba'])) or (buffactive.March and buffactive.Haste and equipSet["MidHaste"]) or (buffactive.Haste == 2) or (buffactive['Mighty Guard'] and buffactive.March == 2) and equipSet["MidHaste"] then
- equipSet = equipSet["MidHaste"]
- end
- if buffactive.haste ==1 and equipSet["LowHaste"] then
- equipSet = equipSet["LowHaste"]
- end
- if buffactive['Climactic Flourish'] then
- equipSet = set_combine(equipSet,sets.TP['Climactic Flourish'])
- end
- equip(equipSet)
- else
- equip(sets.Idle[IdleArray[IdleIndex]])
- end
- end
- function buff_change(buff,gain)
- buff = string.lower(buff)
- if buff == "aftermath: lv.3" then -- AM3 Timer/Countdown --
- if gain then
- send_command('timers create "Aftermath: Lv.3" 180 down;wait 120;input /echo Aftermath: Lv.3 [WEARING OFF IN 60 SEC.];wait 30;input /echo Aftermath: Lv.3 [WEARING OFF IN 30 SEC.];wait 20;input /echo Aftermath: Lv.3 [WEARING OFF IN 10 SEC.]')
- else
- send_command('timers delete "Aftermath: Lv.3"')
- add_to_chat(123,'AM3: [OFF]')
- end
- elseif buff == 'haste samba' and not gain then
- send_command('timers delete "Haste Samba"')
- 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
- function buff_change(buff,gain)
- if buff == "Climactic Flourish" then
- if gain then
- equip({head="Maculele Tiara +1"})
- send_command('gs disable head')
- else
- send_command('gs enable head')
- end
- 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 == '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 == '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 == 'C9' 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 == '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 timer_haste_samba()
- local duration = 110
- if player.main_job == 'DNC' then
- if player.equipment.head == "Dancer's Tiara" or player.equipment.head == "Dancer's Tiara +1" then
- duration = duration + 30
- elseif player.equipment.head == 'Maxixi Tiara' then
- duration = duration + 40
- elseif player.equipment.head == 'Maxixi Tiara +2' then
- duration = duration + 45
- end
- if buffactive['Saber Dance'] then
- local merits = player.merits.saber_dance
- if merits > 1 then
- local extend = (merits - 1) * 5
- duration = math.floor(duration + (duration * extend / 100))
- end
- end
- end
- send_command('timers create "Haste Samba" '..tostring(duration)..' down abilities/00216.png')
- 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.main_job == 'DNC' then
- if missingHP < 40 and spell.target.name == player.name then
- add_to_chat(123,'Full HP!')
- cancel_spell()
- return
- elseif missingHP < 50 then
- newWaltz = 'Curing Waltz'
- waltzID = 190
- elseif missingHP < 640 then
- newWaltz = 'Curing Waltz II'
- waltzID = 191
- elseif missingHP < 1200 then
- newWaltz = 'Curing Waltz III'
- waltzID = 192
- elseif missingHP < 1900 then
- newWaltz = 'Curing Waltz IV'
- waltzID = 193
- else
- newWaltz = 'Curing Waltz V'
- waltzID = 311
- end
- else
- return
- end
- end
- local waltzTPCost = {['Curing Waltz'] = 200, ['Curing Waltz II'] = 350, ['Curing Waltz III'] = 500, ['Curing Waltz IV'] = 650, ['Curing Waltz V'] = 800}
- local tpCost = waltzTPCost[newWaltz]
- local downgrade
- if player.tp < tpCost and not buffactive.trance then
- if player.tp < 200 then
- add_to_chat(123, 'Insufficient TP ['..tostring(player.tp)..']. Cancelling.')
- cancel_spell()
- return
- elseif player.tp < 350 then
- newWaltz = 'Curing Waltz'
- elseif player.tp < 500 then
- newWaltz = 'Curing Waltz II'
- elseif player.tp < 650 then
- newWaltz = 'Curing Waltz III'
- elseif player.tp < 800 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, 6)
- elseif player.sub_job == 'NIN' then
- set_macro_page(1, 6)
- elseif player.sub_job == 'SAM' then
- set_macro_page(1, 6)
- else
- set_macro_page(1, 6)
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement