is there a way for gearswap to identify if 3 runes are buffactive or not ?
i wanna setup a rune autobuff toggle that i can shortcut into action but idk how to code 3 of the same runes in gearswap.
thanks for any support.
Gearswap Support Thread |
||
Gearswap Support Thread
is there a way for gearswap to identify if 3 runes are buffactive or not ?
i wanna setup a rune autobuff toggle that i can shortcut into action but idk how to code 3 of the same runes in gearswap. thanks for any support. something like this should work
if buffactive.gelus == 3 then derp lol.. ty
Hi all:
Trying to get this enmity button rule on my RUN gearswap to work so I can consolidate my enmity spells on BLU SJ to 2 keys. For some reason that I can't understand, the rule doesn't seem to work. The lua loads fine otherwise and functions without issue, but the intended idea of being able to hit my Jettatura macro and trigger Blitzstrahl (or Blank Gaze) when it's on cool down doesn't seem to happen. Any ideas? What I believe is all the relevant code for BLU SJ in my RUN lua below. Code function job_setup() -- /BLU Spell Maps blue_magic_maps = {} blue_magic_maps.Enmity = S{'Blank Gaze', 'Geist Wall', 'Jettatura', 'Soporific', 'Poison Breath', 'Blitzstrahl', 'Sheep Song', 'Chaotic Eye'} blue_magic_maps.Cure = S{'Wild Carrot'} blue_magic_maps.Buffs = S{'Cocoon', 'Refueling'} rayke_duration = 47 gambit_duration = 96 end function init_gear_sets() sets.midcast['Blue Magic'] = {} sets.midcast['Blue Magic'].Enmity = sets.Enmity sets.midcast['Blue Magic'].Cure = sets.midcast.Cure sets.midcast['Blue Magic'].Buff = sets.midcast['Enhancing Magic'] end function job_pretarget(spell, action, spellMap, eventArgs) if spell.english == "Jettatura" and windower.ffxi.get_spell_recasts()[spell.recast_id] > 0 then cancel_spell() send_command('Blitzstrahl') end if spell.english == "Blitzstrahl" and windower.ffxi.get_ability_recasts()[spell.recast_id] > 0 then cancel_spell() send_command('Chaotic Eye') end if spell.english == "Chaotic Eye" and windower.ffxi.get_ability_recasts()[spell.recast_id] > 0 then cancel_spell() send_command('Poison Breath') end if spell.english == "Poison Breath" and windower.ffxi.get_ability_recasts()[spell.recast_id] > 0 then cancel_spell() send_command('Blank Gaze') end if spell.english == "Sheep Song" and windower.ffxi.get_spell_recasts()[spell.recast_id] > 0 then cancel_spell() send_command('Geist Wall') end if spell.english == "Geist Wall" and windower.ffxi.get_spell_recasts()[spell.recast_id] > 0 then cancel_spell() send_command('Soporific') end if spell.type == 'JobAbility' and windower.ffxi.get_ability_recasts()[spell.recast_id] > 0 then cancel_spell() return end if spell.action_type == 'Magic' and windower.ffxi.get_spell_recasts()[spell.recast_id] > 0 then cancel_spell() return end end function job_get_spell_map(spell, default_spell_map) if spell.skill == 'Blue Magic' then for category,spell_list in pairs(blue_magic_maps) do if spell_list:contains(spell.english) then return category end end end end You're using Chaotic eye, Poison breath, and blitztrahl as enmity spells? .... Why? Those are all terrible enmity spells.
Chaotic eye is 320 VE, 1 CE. Yes, it's cheap and has a low recast. But so does blank gaze. And Blank gaze is 320VE/320CE. With any reasonable amount of haste you should be able to push Blank Gaze recast down below the 3 second global recast cap and just spam blank gaze alone, tossing in the occasional Jettatura. (and of course the usual flash/foil) Poison breath might have been appealing as an enmity spell at 75. Assuming it didn't get resisted to hell. But damage enmity has been nerfed no less than 3 times since then(was maybe a fourth..?) so to get significant enmity out of dealing damage, you need to be dealing A LOT of dmg. Poison breath is not going to do that. Blitzstrahl is in the same boat. Except I don't think it has ever been a good enmity spell. That's good to know, I can swap those out for something else (stinking gas I'm guessing)
Still doesn't really solve the issue I'm having with the rule itself though. Well, I wasn't trying to fix your GS issue with that post. If you hadn't been using some really weird spells for enmity I wouldn't have posted at all.
While, I see some possible inefficiencies in that rule, I haven't been able to pinpoint where the actual failure is. And I'm not subbed atm, so I can't test anything right now. So I only posted about the spell oddity. The only thing I could think of atm would be that if you don't use shortcuts then sending a command that's just a spell name would probably just throw an error, or do nothing. And yes, stinking gas would be a decent enmity spell. 320/320 CE/VE. Cast time is slightly slower than most, but the cost and recast are reasonable. Quote: The only thing I could think of atm would be that if you don't use shortcuts then sending a command that's just a spell name would probably just throw an error, or do nothing. This is likely the issue actually. I don't normally use that add on, and the code above is a copy paste of another lua with some edits made on my part. I'll either load shortcuts or rewrite the function when I have a chance. Thanks for your help. Also, while attempting to make full use of your allotted blue magic points, what would you recommend be set for tank SJs? I'm assuming I should sub out Blitstrahl, Chaotic Eye, and Poison breath (7 points opened) and sub in Stinking Gas and Diamondhide (5 points used) Any recommendations for those last two points. Well, for starters Diamondhide is a lvl 67 spell. So if this is for /blu, that's not gonna be usable.
Did you mean metallic body? If so skip that. It's totally useless. With subbed and merits BLU skill, you'd get a 74 dmg SS. And SS+ gear doesn't work on it. It's part of the max MP boost trait along with Mysterious light. But ML is equally useless, and costs 4 set points. All for 10 MP. That said, I can't actually recall my exact /BLU spell set. It doesn't change much. Basically my process is, enmity spells, utility spells, then stats(basically just HP+ stuff) I think we've covered enmity spells already, so. Examples of utility spells. Cocoon, of course, Wild carrot. At least you have a cure now, even if it's a crappy one. Healing breeze. Pretty much only good for waking the group after an AoE sleep. Refueling. Almost useless now. 10% haste buff. Can be nice if your mages are lazy gits, or you somehow find yourself solo without trusts. Trait wise... there's not much to be had. Killer traits(Beast/Lizard/Undead) Defense bonus(weee +10 def) Resist sleep(this is actually decent. 10% resist rate, for 4 total set points. And you'd probably have wild carrot set anyway.) Not that being slept is a huge deal, but it's a thing. Magic attack bonus(I dunno, lunge harder?) Any points that are left I just set any HP+ spells that will fit. Looking for some help with my PUP lua.
Code function check_maneuver() if state.AutoBuffMode.value and pet.isvalid and pet.status == 'Engaged' and windower.ffxi.get_ability_recasts()[210] == 0 then if not buffactive[defaultManeuvers[state.PetMode.value][1]] then windower.chat.input('/pet '..defaultManeuvers[state.PetMode.value][1]..' <me>') tickdelay = 30 return true elseif not buffactive[defaultManeuvers[state.PetMode.value][2]] then windower.chat.input('/pet '..defaultManeuvers[state.PetMode.value][2]..' <me>') tickdelay = 30 return true elseif not buffactive[defaultManeuvers[state.PetMode.value][3]] then windower.chat.input('/pet '..defaultManeuvers[state.PetMode.value][3]..' <me>') tickdelay = 30 return true end end Im trying to have my maneuvers sets to Fire/Fire/Light, but as I can understand in the above code it wont do a double Fire because it checks it as active already and moves on. Is they any way anyone can write or knows of how to change this so I can have two of the same maneuvers up at the same time? This is Selinedrile lua file setup Im working from. Anyone able to help with a command that i can make a key bind, to change my offense mode directly to the specific one rather than cycle through them.
aisukage said: » Anyone able to help with a command that i can make a key bind, to change my offense mode directly to the specific one rather than cycle through them. If using Mote's libraries: Directly within the selfCommands.lua are a few controls. -- Function to set various states to specific values directly. -- User command format: gs c set [field] [value] -- If a boolean [field] is used, but not given a [value], it will be set to true. Quetzalcoatl.Langly said: » aisukage said: » Anyone able to help with a command that i can make a key bind, to change my offense mode directly to the specific one rather than cycle through them. If using Mote's libraries: Directly within the selfCommands.lua are a few controls. -- Function to set various states to specific values directly. -- User command format: gs c set [field] [value] -- If a boolean [field] is used, but not given a [value], it will be set to true. Yeah I'm using Mote's i'm not too bad with LUA's but i don't know all these commands so i tried something along the lines of Code send_command('bind !n gs c state.OffenseMode = "DT"') So would this look more accurate then? Code send_command('bind !n gs c set state.OffenseMode "DT"') EDIT: Nvm i got it working removed the "state." from that line and it worked Code send_command('bind !n gs c set OffenseMode "DT"') Many Thanks Using motes. I basically copy/pasted the default online THF version and substituted some of my equips in the appropriate places.
A couple questions though. Why are some WS listed as 'WS' and some as "WS"? Second, I'm trying to check my gearsets from town using //gs equip and possibly related to the ' vs. the " I can only successfully do //gs equip sets.precast.WS from town. However, what I want to see is the Rudra's version of equip sets in specific. What is the syntax to type it in and what am I doing wrong? I've tried //gs equip sets.precast.["Rudra's Storm"]WS also used ' and even tried [Rudra's Storm]. I do not get any errors, but nothing happens! My Yetshila does not equip! In specific I'm trying to make sure my swaps are happening not only for WS-specific but for SA stacked. Code -- Default set for any weaponskill that isn't any more specifically defined sets.precast.WS = {ammo="Seeth. Bomblet +1", head="Adhemar Bonnet",neck="Fotia Gorget",ear1="Sherida Earring",ear2="Moonshade Earring", body="Meg. Cuirie +1",hands="Meg. Gloves +2",ring1="Apate Ring",ring2="Epona's Ring", back="Toutatis's Cape",waist="Fotia Belt",legs="Samnuha Tights",feet="Meg. Jam. +1"} sets.precast.WS.Acc = set_combine(sets.precast.WS, {ammo="Honed Tathlum", back="Letalis Mantle"}) -- Specific weaponskill sets. Uses the base set if an appropriate WSMod version isn't found. sets.precast.WS['Exenterator'] = set_combine(sets.precast.WS, {head="Uk'uxkaj Cap",ring1="Stormsoul Ring"}) sets.precast.WS['Exenterator'].Acc = set_combine(sets.precast.WS['Exenterator'], {ammo="Honed Tathlum", back="Letalis Mantle"}) sets.precast.WS['Exenterator'].Mod = set_combine(sets.precast.WS['Exenterator'], {head="Felistris Mask",waist="Fotia Belt"}) sets.precast.WS['Exenterator'].SA = set_combine(sets.precast.WS['Exenterator'].Mod, {ammo="Qirmiz Tathlum"}) sets.precast.WS['Exenterator'].TA = set_combine(sets.precast.WS['Exenterator'].Mod, {ammo="Qirmiz Tathlum"}) sets.precast.WS['Exenterator'].SATA = set_combine(sets.precast.WS['Exenterator'].Mod, {ammo="Qirmiz Tathlum"}) sets.precast.WS["Rudra's Storm"] = set_combine(sets.precast.WS, {ammo="Yetshila"}) sets.precast.WS["Rudra's Storm"].Acc = set_combine(sets.precast.WS["Rudra's Storm"], {}) sets.precast.WS["Rudra's Storm"].Mod = set_combine(sets.precast.WS["Rudra's Storm"], {}) sets.precast.WS["Rudra's Storm"].SA = set_combine(sets.precast.WS["Rudra's Storm"].Mod, {ammo="Yetshila"}) sets.precast.WS["Rudra's Storm"].TA = set_combine(sets.precast.WS["Rudra's Storm"].Mod, {ammo="Qirmiz Tathlum", body="Pillager's Vest +1",legs="Pillager's Culottes +1"}) sets.precast.WS["Rudra's Storm"].SATA = set_combine(sets.precast.WS["Rudra's Storm"].Mod, {ammo="Qirmiz Tathlum", body="Pillager's Vest +1",legs="Pillager's Culottes +1"}) " are used on names with a ' already in them. Otherwise it'd have to be something like ['Rudra\'s Storm'].
//gs equip sets.precast.WS.Rudra's Storm should work ' vs " Doesn't mean much but if you did 'Rudra's Storm' it would fail because it needs the middle ' escaped so that it knows to read it as just a regular character and not part of the language.
'Rudra\'s Storm' you escape characters in lua with \ before it try //gs equip sets.precast.WS.Rudra's Storm.TA While that won't work when writing the lua it should work when trying to manually equip it also can do //gs showswaps That's working perfect already, thanks Dougg. Syntax is very new to me, not a programmer. About the " vs ' I was unsure because in default THF for example the Shark Bite had a "" also
https://github.com/Kinematics/GearSwap-Jobs/blob/master/THF.lua Can anyone figure out why after I WS it won't swap back to my melee set? I have to hit the Gear Update Toggle every time.
Code function get_sets() StartLockStyle = '97' AccIndex = 1 AccArray = {"LowACC","MidACC","HighACC",} IdleIndex = 3 IdleArray = {'Movement','Regen','Town'} -- Default Idle Set Is Movement -- PreshotIndex = 1 PreshotArray = {'Any','RDM'} Armor = 'None' autoRAmode = 0 target_distance = 5 -- Set Default Distance Here -- send_command('input /macro book 3;wait .1;input /macro set 1') -- Change Default Macro Book Here -- send_command('bind F9 gs c flur') --flurry toggle-- send_command('bind F10 gs c pdt') --PDT toggle-- send_command('bind F11 gs c acc') --accuracy toggle-- send_command('bind F12 gs c auto') --Gearset update toggle-- send_command('bind !F12 gs c C6') --Idle Toggle-- send_command('bind != gs c mdt') --MDT toggle-- ranged_ws = S{ "Hot Shot","Split Shot","Sniper Shot","Slug Shot","Blast Shot","Heavy Shot","Detonator", "Numbing Shot","Last Stand","Coronach","Trueflight","Wildfire","Flaming Arrow", "Piercing Arrow","Dulling Arrow","Sidewinder","Blast Arrow","Arching Arrow", "Empyreal Arrow","Refulgent Arrow","Apex Arrow","Jishnu's Radiance","Namas Arrow"} -- Idle/Town Sets -- sets.Idle = {} sets.Idle.Regen = { head="Meghanada Visor +2", body="Meg. Cuirie +2", hands="Meg. Gloves +2", legs={ name="Carmine Cuisses +1", augments={'Accuracy+20','Attack+12','"Dual Wield"+6',}}, feet="Meg. Jam. +2", neck="Bathy Choker +1", waist="Flume Belt +1", left_ear="Telos Earring", right_ear="Etiolation Earring", left_ring="Meghanada Ring", right_ring="Chirich Ring", back="Moonbeam Cape",} sets.Idle.Movement = set_combine(sets.Idle.Regen,{}) sets.Idle.Town = { head={ name="Arcadian Beret +3", augments={'Enhances "Recycle" effect',}}, body="Mummu Jacket +2", hands={ name="Adhemar Wrist. +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}}, legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}}, feet="Orion Socks +3", neck="Iskur Gorget", waist="Yemaya Belt", left_ear="Telos Earring", right_ear="Dedition Earring", left_ring="Ilabrat Ring", right_ring="Dingir Ring", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},} sets.Fomalhaut = { main="Perun +1", sub="Nusku Shield", range="Fomalhaut", ammo="Chrono Bullet"} sets.Annihilator = { main="Perun +1", sub="Nusku Shield", range="Annihilator", ammo="Eradicating Bullet"} sets.Gastraphetes = { main={ name="Malevolence", augments={'INT+7','"Mag.Atk.Bns."+5','"Fast Cast"+3',}}, sub={ name="Malevolence", augments={'INT+2','Mag. Acc.+1','"Mag.Atk.Bns."+3','"Fast Cast"+1',}}, range="Gastraphetes", ammo="Crossbow Bolt"} -- Preshot -- sets.Preshot = { ammo="Eradicating Bullet", head={ name="Taeon Chapeau", augments={'"Snapshot"+5','"Snapshot"+5',}}, -- 10/0 body="Oshosi Vest", -- 12/0 hands={ name="Carmine Fin. Ga. +1", augments={'Rng.Atk.+20','"Mag.Atk.Bns."+12','"Store TP"+6',}}, -- 8/11 legs={ name="Adhemar Kecks", augments={'AGI+10','"Rapid Shot"+10','Enmity-5',}}, -- 9/10 feet="Meg. Jam. +2", -- 10/0 waist="Yemaya Belt", -- 0/5 back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','"Snapshot"+10',}},} -- 10/0 -- 69 SS/ 61 RS -- Fomalhaut Preshot -- sets.Preshot.Fomalhaut = { ammo="Eradicating Bullet", head={ name="Taeon Chapeau", augments={'"Snapshot"+5','"Snapshot"+5',}}, -- 10/0 body="Oshosi Vest", -- 12/0 hands={ name="Carmine Fin. Ga. +1", augments={'Rng.Atk.+20','"Mag.Atk.Bns."+12','"Store TP"+6',}}, -- 8/11 legs={ name="Adhemar Kecks", augments={'AGI+10','"Rapid Shot"+10','Enmity-5',}}, -- 9/10 feet="Meg. Jam. +2", -- 10/0 waist="Yemaya Belt", -- 0/5 back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','"Snapshot"+10',}},} -- 10/0 -- 69 SS/ 61 RS sets.Preshot.Fomalhaut.Any = set_combine(sets.Preshot.Fomalhaut,{ body="Amini Caban +1"}) -- 0/0 -- 57 SS/ 61 RS sets.Preshot.Fomalhaut.RDM = set_combine(sets.Preshot.Fomalhaut.Any,{ head="Orion Beret +3", -- 0/18 waist="Impulse Belt", -- 3/0 feet="Pursuer's Gaiters"}) -- 0/10 -- 40 SS/ 89 RS -- Annihilator Preshot -- sets.Preshot.Annihilator = { ammo="Eradicating Bullet", head={ name="Taeon Chapeau", augments={'"Snapshot"+5','"Snapshot"+5',}}, -- 10/0 body="Oshosi Vest", -- 12/0 hands={ name="Carmine Fin. Ga. +1", augments={'Rng.Atk.+20','"Mag.Atk.Bns."+12','"Store TP"+6',}}, -- 8/11 legs={ name="Adhemar Kecks", augments={'AGI+10','"Rapid Shot"+10','Enmity-5',}}, -- 9/10 feet="Meg. Jam. +2", -- 10/0 waist="Yemaya Belt", -- 0/5 back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','"Snapshot"+10',}},} -- 10/0 -- 69 SS/ 61 RS sets.Preshot.Annihilator.Any = set_combine(sets.Preshot.Annihilator,{ body="Amini Caban +1"}) -- 0/0 -- 57 SS/ 61 RS sets.Preshot.Annihilator.RDM = set_combine(sets.Preshot.Annihilator.Any,{ head="Orion Beret +3", -- 0/18 waist="Impulse Belt", -- 3/0 feet="Pursuer's Gaiters"}) -- 0/10 -- 40 SS/ 89 RS -- Gastraphetes Preshot -- sets.Preshot.Gastraphetes = { head="Orion Beret +3", -- 0/18 body="Oshosi Vest", -- 12/0 hands={ name="Carmine Fin. Ga. +1", augments={'Rng.Atk.+20','"Mag.Atk.Bns."+12','"Store TP"+6',}}, -- 8/11 legs={ name="Adhemar Kecks", augments={'AGI+10','"Rapid Shot"+10','Enmity-5',}}, -- 9/10 feet="Meg. Jam. +2", -- 10/0 waist="Yemaya Belt", -- 0/5 back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','"Snapshot"+10',}},} -- 10/0 -- 69 SS/ 79 RS sets.Preshot.Gastraphetes.Any = set_combine(sets.Preshot.Gastraphetes,{ body="Amini Caban +1"}) -- 0/0 -- 57 SS/ 79 RS sets.Preshot.Gastraphetes.RDM = set_combine(sets.Preshot.Gastraphetes.Any,{ waist="Impulse Belt", -- 3/0 feet="Pursuer's Gaiters"}) -- 0/10 -- 40 SS/ 84 RS -- Midshot Base Set -- sets.Midshot = { head={ name="Arcadian Beret +3", augments={'Enhances "Recycle" effect',}}, body="Orion Jerkin +3", hands={ name="Adhemar Wrist. +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}}, legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}}, feet={ name="Adhe. Gamashes +1", augments={'HP+65','"Store TP"+7','"Snapshot"+10',}}, neck="Iskur Gorget", waist="Yemaya Belt", left_ear="Telos Earring", right_ear="Dedition Earring", left_ring="Ilabrat Ring", right_ring="Dingir Ring", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},} sets.Midshot.MidACC = set_combine(sets.Midshot,{ right_ear="Enervating Earring", left_ring="Regal Ring", right_ring="Hajduk Ring +1"}) sets.Midshot.HighACC = set_combine(sets.Midshot.MidACC,{ feet="Orion Socks +3"}) -- Fomalhaut Midshot -- sets.Midshot.Fomalhaut = { head={ name="Arcadian Beret +3", augments={'Enhances "Recycle" effect',}}, body="Orion Jerkin +3", hands={ name="Adhemar Wrist. +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}}, legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}}, feet={ name="Adhe. Gamashes +1", augments={'HP+65','"Store TP"+7','"Snapshot"+10',}}, neck="Iskur Gorget", waist="Yemaya Belt", left_ear="Telos Earring", right_ear="Dedition Earring", left_ring="Ilabrat Ring", right_ring="Dingir Ring", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},} sets.Midshot.Fomalhaut.MidACC = set_combine(sets.Midshot.Fomalhaut,{ right_ear="Enervating Earring", left_ring="Regal Ring", right_ring="Hajduk Ring +1"}) sets.Midshot.Fomalhaut.HighACC = set_combine(sets.Midshot.Fomalhaut.MidACC,{ feet="Orion Socks +3"}) -- Annihilator Sets -- sets.Midshot.Annihilator = { head={ name="Arcadian Beret +3", augments={'Enhances "Recycle" effect',}}, body="Mummu Jacket +2", hands={ name="Adhemar Wrist. +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}}, legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}}, feet={ name="Adhe. Gamashes +1", augments={'HP+65','"Store TP"+7','"Snapshot"+10',}}, neck="Iskur Gorget", waist="Yemaya Belt", left_ear="Telos Earring", right_ear="Dedition Earring", left_ring="Ilabrat Ring", right_ring="Dingir Ring", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},} -- Perun+1 / Nusku Shield -- -- 1420 RACC / 1562 RATTK / 75 STP / 24% crit -- /WAR -- sets.Midshot.Annihilator.MidACC = set_combine(sets.Midshot.Annihilator,{ right_ear="Enervating Earring", right_ring="Hajduk Ring +1"}) -- Perun+1 / Nusku Shield -- -- 1447 RACC / 1553 RATTK / 71 STP / 24% crit -- /WAR -- sets.Midshot.Annihilator.HighACC = set_combine(sets.Midshot.Annihilator.MidACC,{ body="Orion Jerkin +3", feet="Oshosi Leggings", left_ring="Regal Ring",}) -- Perun+1 / Nusku Shield -- -- 1512 RACC / 1603 RATTK / 61 STP / 19% crit -- /WAR -- -- Gastraphetes Sets -- sets.Midshot.Gastraphetes = { head={ name="Arcadian Beret +3", augments={'Enhances "Recycle" effect',}}, body="Mummu Jacket +2", hands={ name="Adhemar Wrist. +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}}, legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}}, feet={ name="Adhe. Gamashes +1", augments={'HP+65','"Store TP"+7','"Snapshot"+10',}}, neck="Iskur Gorget", waist="Yemaya Belt", left_ear="Telos Earring", right_ear="Dedition Earring", left_ring="Ilabrat Ring", right_ring="Dingir Ring", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},} -- Malevolence / Malevolence -- -- 1349 RACC / 1483 RATTK / 75 STP -- /DNC -- sets.Midshot.Gastraphetes.MidACC = set_combine(sets.Midshot.Gastraphetes,{ right_ear="Enervating Earring", right_ring="Hajduk Ring +1"}) -- Malevolence / Malevolence -- -- 1391 RACC / 1506 RATTK / 66 STP -- /DNC -- sets.Midshot.Gastraphetes.HighACC = set_combine(sets.Midshot.Gastraphetes.MidACC,{ body="Orion Jerkin +3", feet="Orion Socks +3", left_ring="Regal Ring",}) -- Malevolence / Malevolence -- -- 1465 RACC / 1514 RATTK / 59 STP -- /DNC -- -- Barrage Base Set -- Barrage = { ammo="Eradicating Bullet", head="Orion Beret +3", body="Orion Jerkin +3", hands="Orion Bracers +3", legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}}, feet="Orion Socks +3", neck="Iskur Gorget", waist="Yemaya Belt", left_ear="Telos Earring", right_ear="Enervating Earring", left_ring="Regal Ring", right_ring="Hajduk Ring +1", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},} -- Fomalhaut Barrage Sets -- sets.Midshot.Fomalhaut.Barrage = set_combine(sets.Midshot.Fomalhaut, { ammo="Eradicating Bullet", head="Orion Beret +3", body="Orion Jerkin +3", hands="Orion Bracers +3", legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}}, feet="Orion Socks +3", neck="Iskur Gorget", waist="Yemaya Belt", left_ear="Telos Earring", right_ear="Enervating Earring", left_ring="Regal Ring", right_ring="Hajduk Ring +1", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},}) sets.Midshot.Fomalhaut.MidACC.Barrage = set_combine(sets.Midshot.Fomalhaut.Barrage,{}) sets.Midshot.Fomalhaut.HighACC.Barrage = set_combine(sets.Midshot.Fomalhaut.Barrage,{}) -- Annihilator Barrage Sets -- sets.Midshot.Annihilator.Barrage = set_combine(sets.Midshot.Annihilator,{ ammo="Eradicating Bullet", head="Orion Beret +3", body="Orion Jerkin +3", hands="Orion Bracers +3", legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}}, feet="Orion Socks +3", neck="Iskur Gorget", waist="Yemaya Belt", left_ear="Telos Earring", right_ear="Enervating Earring", left_ring="Regal Ring", right_ring="Hajduk Ring +1", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},}) -- Perun+1 / Nusku Shield -- -- 1622 RACC / 1597 RATTK / 11 shots -- /WAR -- sets.Midshot.Annihilator.MidACC.Barrage = set_combine(sets.Midshot.Annihilator.Barrage,{}) sets.Midshot.Annihilator.HighACC.Barrage = set_combine(sets.Midshot.Annihilator.Barrage,{}) --Gastraphetes Barrage Sets -- sets.Midshot.Gastraphetes.Barrage = set_combine(sets.Midshot.Gastraphetes, { head="Orion Beret +3", body="Orion Jerkin +3", hands="Orion Bracers +3", legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}}, feet="Orion Socks +3", neck="Iskur Gorget", waist="Yemaya Belt", left_ear="Telos Earring", right_ear="Enervating Earring", left_ring="Regal Ring", right_ring="Hajduk Ring +1", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},}) -- Malevolence / Malevolence -- -- 1554 RACC / 1487 RATTK / 12 shots -- /DNC -- sets.Midshot.Gastraphetes.MidACC.Barrage = set_combine(sets.Midshot.Gastraphetes.Barrage,{}) sets.Midshot.Gastraphetes.HighACC.Barrage = set_combine(sets.Midshot.Gastraphetes.Barrage,{}) -- Doubleshot Sets -- sets.Doubleshot = { head="Oshosi Mask", body="Oshosi Vest", hands="Oshosi Gloves", legs="Oshosi Trousers", feet="Oshosi Leggings", neck="Iskur Gorget", waist="Yemaya Belt", left_ear="Telos Earring", right_ear="Dedition Earring", left_ring="Ilabrat Ring", right_ring="Dingir Ring", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},} -- Fomalhaut Doubleshot Sets -- sets.Midshot.Fomalhaut.Doubleshot = set_combine(sets.Midshot.Fomalhaut,{ head="Oshosi Mask", body="Oshosi Vest", hands="Oshosi Gloves", legs="Oshosi Trousers", feet="Oshosi Leggings", neck="Iskur Gorget", waist="Yemaya Belt", left_ear="Telos Earring", right_ear="Dedition Earring", left_ring="Ilabrat Ring", right_ring="Dingir Ring", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},}) sets.Midshot.Fomalhaut.MidACC.Doubleshot = set_combine(sets.Midshot.Fomalhaut.Doubleshot,{ right_ear="Enervating Earring", left_ring="Hajduk Ring +1", right_ring="Hajduk Ring +1",}) sets.Midshot.Fomalhaut.HighACC.Doubleshot = set_combine(sets.Midshot.Fomalhaut.Doubleshot,{}) --Annihilator Doubleshot Sets-- sets.Midshot.Annihilator.Doubleshot = set_combine(sets.Midshot.Annihilator,{ head="Oshosi Mask", body="Oshosi Vest", hands="Oshosi Gloves", legs="Oshosi Trousers", feet="Oshosi Leggings", neck="Iskur Gorget", waist="Yemaya Belt", left_ear="Telos Earring", right_ear="Dedition Earring", left_ring="Ilabrat Ring", right_ring="Dingir Ring", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},}) -- Perun+1 / Nusku Shield -- -- 1397 RACC / 1423 RATTK / 85 DS / 54 STP -- /WAR -- sets.Midshot.Annihilator.MidACC.Doubleshot = set_combine(sets.Midshot.Annihilator.Doubleshot,{ right_ear="Enervating Earring", left_ring="Hajduk Ring +1", right_ring="Hajduk Ring +1",}) -- Perun+1 / Nusku Shield -- -- 1433 RACC / 1414 RATTK / 85 DS / 40 STP -- /WAR -- sets.Midshot.Annihilator.HighACC.Doubleshot = set_combine(sets.Midshot.Annihilator.Doubleshot,{}) --Gastraphetes Doubleshot Sets-- sets.Midshot.Gastraphetes.Doubleshot = set_combine(sets.Midshot.Gastraphetes,{ head="Oshosi Mask", body="Oshosi Vest", hands="Oshosi Gloves", legs="Oshosi Trousers", feet="Oshosi Leggings", neck="Iskur Gorget", waist="Yemaya Belt", left_ear="Telos Earring", right_ear="Dedition Earring", left_ring="Ilabrat Ring", right_ring="Dingir Ring", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},}) sets.Midshot.Gastraphetes.MidACC.Doubleshot = set_combine(sets.Midshot.Gastraphetes.Doubleshot,{ right_ear="Enervating Earring", left_ring="Hajduk Ring +1", right_ring="Hajduk Ring +1",}) sets.Midshot.Gastraphetes.HighACC.Doubleshot = set_combine(sets.Midshot.Gastraphetes.Doubleshot,{}) --Camouflage Sets-- sets.Midshot.Camouflage = {} sets.Midshot.Fomalhaut.Camouflage = { head="Meghanada Visor +2", neck="Iskur Gorget", ear1="Enervating Earring", body="Meghanada Cuirie +2", hands="Mummu Wrists +2", ring1="Begrudging Ring", ring2="Mummu Ring", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','Crit.hit rate+10',}}, waist="Kwahu Kachina Belt", legs="Darraigner's Brais", feet="Thereoid Greaves"} sets.Midshot.Annihilator.Camouflage = { head="Meghanada Visor +2", neck="Iskur Gorget", ear1="Enervating Earring", body="Meghanada Cuirie +2", hands="Mummu Wrists +2", ring1="Begrudging Ring", ring2="Mummu Ring", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','Crit.hit rate+10',}}, waist="Kwahu Kachina Belt", legs="Darraigner's Brais", feet="Thereoid Greaves"} sets.Midshot.Gastraphetes.Camouflage = { head="Meghanada Visor +2", neck="Iskur Gorget", ear1="Enervating Earring", body="Meghanada Cuirie +2", hands="Mummu Wrists +2", ring1="Begrudging Ring", ring2="Mummu Ring", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','Crit.hit rate+10',}}, waist="Kwahu Kachina Belt", legs="Darraigner's Brais", feet="Thereoid Greaves"} -- PDT/MDT Sets -- sets.PDT = { head="Meghanada Visor +2", body="Meg. Cuirie +2", hands="Meg. Gloves +2", legs={ name="Carmine Cuisses +1", augments={'Accuracy+20','Attack+12','"Dual Wield"+6',}}, feet="Meg. Jam. +2", neck="Loricate Torque +1", waist="Flume Belt +1", left_ear="Odnowa Earring +1", right_ear="Etiolation Earring", left_ring="Meghanada Ring", right_ring="Defending Ring", back="Moonbeam Cape",} sets.MDT = set_combine(sets.PDT,{}) -- Melee Sets -- sets.Melee = { head={ name="Dampening Tam", augments={'DEX+10','Accuracy+15','Mag. Acc.+15','Quadruple Attack +3',}}, body={ name="Adhemar Jacket +1", augments={'DEX+12','AGI+12','Accuracy+20',}}, hands={ name="Adhemar Wrist. +1", augments={'DEX+12','AGI+12','Accuracy+20',}}, legs={ name="Samnuha Tights", augments={'STR+10','DEX+10','"Dbl.Atk."+3','"Triple Atk."+3',}}, feet={ name="Herculean Boots", augments={'Accuracy+16','"Triple Atk."+4','Attack+6',}}, neck="Lissome Necklace", waist="Kentarch Belt +1", left_ear="Sherida Earring", right_ear="Cessance Earring", left_ring="Epona's Ring", right_ring="Ilabrat Ring", back={ name="Belenus's Cape", augments={'DEX+20','Accuracy+20 Attack+20','"Dual Wield"+10',}},} sets.Melee.MidACC = set_combine(sets.Melee,{ legs="Meg. Chausses +2", left_ring="Chirich Ring"}) sets.Melee.HighACC = set_combine(sets.Melee.MidACC,{ feet="Meg. Jam. +2", left_ear="Telos Earring"}) -- WS Base Set -- sets.WS = { ammo="Eradicating Bullet", head="Orion Beret +3", body={ name="Herculean Vest", augments={'Rng.Atk.+19','Weapon skill damage +5%','CHR+6','Rng.Acc.+14',}}, hands="Meg. Gloves +2", legs={ name="Arc. Braccae +3", augments={'Enhances "Eagle Eye Shot" effect',}}, feet={ name="Herculean Boots", augments={'Rng.Acc.+29','Weapon skill damage +5%','AGI+4','Rng.Atk.+9',}}, neck="Fotia Gorget", waist="Fotia Belt", left_ear="Ishvara Earring", right_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, left_ring="Regal Ring", right_ring="Dingir Ring", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','AGI+10','Weapon skill damage +10%',}},} -- WS Sets -- -- Last Stand -- sets.WS['Last Stand'] = set_combine(sets.WS, { ammo="Eradicating Bullet", head="Orion Beret +3", body={ name="Herculean Vest", augments={'Rng.Atk.+19','Weapon skill damage +5%','CHR+6','Rng.Acc.+14',}}, hands="Meg. Gloves +2", legs={ name="Arc. Braccae +3", augments={'Enhances "Eagle Eye Shot" effect',}}, feet={ name="Herculean Boots", augments={'Rng.Acc.+29','Weapon skill damage +5%','AGI+4','Rng.Atk.+9',}}, neck="Fotia Gorget", waist="Fotia Belt", left_ear="Ishvara Earring", right_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, left_ring="Regal Ring", right_ring="Dingir Ring", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','AGI+10','Weapon skill damage +10%',}},}) sets.WS['Last Stand'].MidACC = set_combine(sets.WS["Last Stand"],{}) sets.WS['Last Stand'].HighACC = set_combine(sets.WS["Last Stand"].MidACC,{}) -- Coronach -- sets.WS['Coronach'] = set_combine(sets.WS, { ammo="Eradicating Bullet", head="Orion Beret +3", body={ name="Herculean Vest", augments={'Rng.Atk.+19','Weapon skill damage +5%','CHR+6','Rng.Acc.+14',}}, hands="Meg. Gloves +2", legs={ name="Arc. Braccae +3", augments={'Enhances "Eagle Eye Shot" effect',}}, feet={ name="Herculean Boots", augments={'Rng.Acc.+29','Weapon skill damage +5%','AGI+4','Rng.Atk.+9',}}, neck="Fotia Gorget", waist="Fotia Belt", left_ear="Ishvara Earring", right_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, left_ring="Regal Ring", right_ring="Ilabrat Ring", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','AGI+10','Weapon skill damage +10%',}},}) sets.WS['Coronach'].MidACC = set_combine(sets.WS['Coronach'].MidACC,{}) sets.WS['Coronach'].HighACC = set_combine(sets.WS['Coronach'].HighACC,{}) -- Trueflight -- sets.WS['Trueflight'] = { head="Orion Beret +3", body={ name="Herculean Vest", augments={'"Mag.Atk.Bns."+28','Pet: Attack+24 Pet: Rng.Atk.+24','Weapon skill damage +3%','Accuracy+19 Attack+19','Mag. Acc.+10 "Mag.Atk.Bns."+10',}}, hands={ name="Carmine Fin. Ga. +1", augments={'Rng.Atk.+20','"Mag.Atk.Bns."+12','"Store TP"+6',}}, legs={ name="Herculean Trousers", augments={'Mag. Acc.+20 "Mag.Atk.Bns."+20','Enmity-5','MND+2','"Mag.Atk.Bns."+14',}}, feet={ name="Herculean Boots", augments={'Mag. Acc.+20 "Mag.Atk.Bns."+20','MND+5','Mag. Acc.+1','"Mag.Atk.Bns."+14',}}, neck="Sanctity Necklace", waist="Eschan Stone", left_ear="Friomisi Earring", right_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, left_ring="Weather. Ring", right_ring="Dingir Ring", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','AGI+10','Weapon skill damage +10%',}},} sets.WS['Trueflight'].MidACC = set_combine(sets.WS["Trueflight"],{}) sets.WS['Trueflight'].HighACC = set_combine(sets.WS["Trueflight"].MidACC,{}) -- Wildfire -- sets.WS['Wildfire'] = set_combine(sets.WS["Trueflight"],{ left_ring="Regal Ring",}) sets.WS['Wildfire'].MidACC = set_combine(sets.WS["Trueflight"].MidACC,{}) sets.WS['Wildfire'].HighACC = set_combine(sets.WS["Trueflight"].HighACC,{}) -- Hotshot -- sets.WS['Hot Shot'] = set_combine(sets.WS["Trueflight"],{ neck="Fotia Gorget", waist="Fotia Belt", left_ring="Regal Ring",}) sets.WS['Hot Shot'].MidACC = set_combine(sets.WS['Hot Shot'],{}) sets.WS['Hot Shot'].HighACC = set_combine(sets.WS['Hot Shot'].MidACC,{}) -- Dagger Weapon Skills -- sets.WS['Exenterator'] = { head="Adhemar Bonnet", neck="Fotia Gorget", ear1="Infused Earring", ear2="Digni. Earring", body="Meg. Cuirie +2", hands="Mummu Wrists +2", ring1="Ilabrat Ring", ring2="Regal Ring", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','AGI+10','Weapon skill damage +10%',}}, waist="Fotia Belt", legs="Jokushu Haidate", feet="Thereoid Greaves"} sets.WS['Evisceration'] = sets.WS['Exenterator'] sets.WS['Aeolian Edge'] = sets.WS['Hot Shot'] -- JA Sets -- sets.JA = {} sets.JA.Shadowbind = { head="Orion Beret +3", body="Orion Jerkin +3", hands="Orion Bracers +3", legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}}, feet="Orion Socks +3", neck="Iskur Gorget", waist="Yemaya Belt", left_ear="Telos Earring", right_ear="Enervating Earring", left_ring="Regal Ring", right_ring="Hajduk Ring +1", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},} sets.JA.Scavenge = {feet="Orion Socks +3"} sets.JA.Camouflage = {body="Orion Jerkin +3"} sets.JA.Sharpshot = {legs="Orion Braccae +2"} sets.JA["Bounty Shot"] = { hands="Amini Glove. +1", legs={ name="Herculean Trousers", augments={'"Mag.Atk.Bns."+12','"Treasure Hunter"+1','Mag. Acc.+12 "Mag.Atk.Bns."+12',}},} sets.JA["Double Shot"] = {head="Amini Gapette +1"} sets.JA["Eagle Eye Shot"] = { head="Orion Beret +3", body="Orion Jerkin +3", hands="Orion Bracers +3", legs={ name="Arc. Braccae +3", augments={'Enhances "Eagle Eye Shot" effect',}}, feet="Orion Socks +3", neck="Iskur Gorget", waist="Yemaya Belt", left_ear="Telos Earring", right_ear="Enervating Earring", left_ring="Regal Ring", right_ring="Hajduk Ring +1", back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},} sets.JA["Barrage"] = set_combine(sets.Midshot,{}) -- Waltz Set -- sets.Waltz = {head="Mummu Bonnet +1",body="Passion Jacket",} sets.Precast = {} -- Fastcast Set -- sets.Precast.FastCast = { head={ name="Carmine Mask", augments={'Accuracy+15','Mag. Acc.+10','"Fast Cast"+3',}}, body={ name="Samnuha Coat", augments={'Mag. Acc.+14','"Mag.Atk.Bns."+13','"Fast Cast"+4','"Dual Wield"+3',}}, hands={ name="Leyline Gloves", augments={'Accuracy+15','Mag. Acc.+15','"Mag.Atk.Bns."+15','"Fast Cast"+3',}}, legs="Gyve Trousers", feet={ name="Carmine Greaves", augments={'HP+60','MP+60','Phys. dmg. taken -3',}}, neck="Sanctity Necklace", waist="Flume Belt +1", left_ear="Loquac. Earring", right_ear="Enchntr. Earring +1", left_ring="Weather. Ring", right_ring="Stikini Ring", back="Moonbeam Cape",} -- Utsusemi Precast Set -- sets.Precast.Utsusemi = set_combine(sets.Precast.FastCast,{ body="Passion Jacket", neck="Magoraga Beads"}) sets.Midcast = {} -- Magic Haste Set -- sets.Midcast.Haste = set_combine(sets.PDT,{}) if pet.isvalid then else send_command('wait 3;input /lockstyleset '..StartLockStyle) end 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') elseif spell.english == "Seigan" and buffactive.Seigan then -- Change Seigan To Third Eye If Seigan Is On -- cancel_spell() send_command('ThirdEye') elseif spell.english == "Meditate" and player.tp > 290 then -- Cancel Meditate If TP Is Above 290 -- cancel_spell() add_to_chat(123, spell.name .. ' Canceled: ['..player.tp..' TP]') elseif (spell.english == 'Ranged' and spell.target.distance > 24.9) or (player.status == 'Engaged' and ((ranged_ws:contains(spell.english) and spell.target.distance > 16+target_distance) or (spell.type == "WeaponSkill" and not ranged_ws:contains(spell.english) and spell.target.distance > target_distance))) then -- Cancel Ranged Attack or WS If You Are Out Of Range -- cancel_spell() add_to_chat(123, spell.name..' Canceled: [Out of Range]') return end end function precast(spell,action) if spell.english == 'Ranged' then equipSet = sets.Preshot add_to_chat(57,"Flurry Level "..PreshotArray[PreshotIndex]) if buffactive['Flurry'] then add_to_chat(122,"Flurry found") if PreshotArray[PreshotIndex] == 'RDM' then if equipSet[player.equipment.range].RDM then equipSet = equipSet[player.equipment.range].RDM end else if equipSet[player.equipment.range].Any then equipSet = equipSet[player.equipment.range].Any end end else if equipSet[player.equipment.range] then equipSet = equipSet[player.equipment.range] end add_to_chat(122,"No flurry") end equip(equipSet) elseif spell.type == "WeaponSkill" then equipSet = sets.WS if equipSet[spell.english] then equipSet = equipSet[spell.english] end if equipSet[AccArray[AccIndex]] then equipSet = equipSet[AccArray[AccIndex]] end if player.tp > 2249 or buffactive.Sekkanoki then if spell.english == "Last Stand" then -- Equip Telos Earring When You Have 3000 TP or Sekkanoki For Last Stand -- equipSet = set_combine(equipSet,{ear2="Telos Earring"}) elseif spell.english == "Jishnu's Radiance" then -- Equip Telos Earring When You Have 3000 TP or Sekkanoki For Jishnu's Radiance -- equipSet = set_combine(equipSet,{ear2="Telos Earring"}) elseif spell.english == "Trueflight" then --Equip Ishvara Earring When you have 3000 TP or Sekkanoki for Trueflight -- equipSet = set_combine(equipSet,{ear2="Ishvara Earring"}) end end equip(equipSet) elseif spell.type=="JobAbility" then if sets.JA[spell.english] then 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.name .. ' Canceled: [3+ Images]') return else equip(sets.Precast.Utsusemi) end else equip(sets.Precast.FastCast) end 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 function midcast(spell,action) if spell.english == 'Ranged' then equipSet = sets.Midshot if equipSet[player.equipment.range] then equipSet = equipSet[player.equipment.range] end if equipSet[AccArray[AccIndex]] then equipSet = equipSet[AccArray[AccIndex]] end if buffactive.Barrage and equipSet["Barrage"] then equipSet = equipSet["Barrage"] end if buffactive['Double Shot'] and equipSet["Doubleshot"] then equipSet = equipSet["Doubleshot"] end if buffactive['Camouflage'] and equipSet["Camouflage"] then equipSet = equipSet["Camouflage"] end equip(equipSet) elseif 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 if spell.english == "Trueflight" and (buffactive['Aurorastorm']) then add_to_chat(125,'weather mode') equip({waist="Hachirin-no-Obi"}) end if spell.english == "Wildfire" and (buffactive['Firestorm']) then add_to_chat(125,'weather mode') equip({waist="Hachirin-no-Obi"}) end end end function aftercast(spell,action) if spell.english == 'Ranged' and autoRAmode==1 then autoRA() elseif spell.type == "WeaponSkill" and not spell.interrupted then send_command('wait 0.2;gs c TP') else status_change(player.status) end end function status_change(new,old) if Armor == 'PDT' then equip(sets.PDT) elseif Armor == 'MDT' then equip(sets.MDT) elseif new == 'Engaged' then equipSet = sets.Melee if equipSet[AccArray[AccIndex]] then equipSet = equipSet[AccArray[AccIndex]] end equip(equipSet) else equip(sets.Idle[IdleArray[IdleIndex]]) 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 add_to_chat(158,'Accuracy Level: ' .. AccArray[AccIndex]) status_change(player.status) elseif command == 'flur' then -- Flurry Level Toggle -- PreshotIndex = (PreshotIndex % #PreshotArray) + 1 add_to_chat(158,'Flurry Level: ' ..PreshotArray[PreshotIndex]) status_change(player.status) elseif command == 'auto' then -- Auto Update Gear Toggle -- status_change(player.status) add_to_chat(158,'Auto Update Gear') 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 == '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 add_to_chat(158,'Idle Set: ' .. IdleArray[IdleIndex]) status_change(player.status) elseif command == 'AutoRA' then -- Auto Ranged Attack Toggle. *Don't Rely On This. It Isn't As Fast As Shooting Manually. It Is Mainly For AFK or When You Dualbox* -- if autoRAmode == 0 then autoRAmode = 1 add_to_chat(158,'AutoRA Mode: [ON]') else autoRAmode = 0 add_to_chat(123,'AutoRA Mode: [OFF]') end 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 Code function aftercast(spell,action) if spell.english == 'Ranged' and autoRAmode==1 then autoRA() elseif spell.type == "WeaponSkill" and not spell.interrupted then send_command('wait 0.2;gs c TP') else status_change(player.status) end end the status_change won't fire if it detects the other 2 preceeding conditions. Try this: Code function aftercast(spell,action) if spell.english == 'Ranged' and autoRAmode==1 then autoRA() elseif spell.type == "WeaponSkill" and not spell.interrupted then send_command('wait 0.2;gs c TP') end status_change(player.status) end |
||
All FFXI content and images © 2002-2018 SQUARE ENIX CO., LTD. FINAL
FANTASY is a registered trademark of Square Enix Co., Ltd.
|