Gearswap Support Thread |
||
Gearswap Support Thread
Offline
Posts: 1186
Has anybody figured out a way to toggle in a stp set when using wings
Quetzalcoatl.Windowpane
Offline
Can someone explain why this is not locking my gear? I combined the WHM thread lua with some code I found to lock gear slots for Aptitude Mantle, rings, etc. but it does nothing. I cannot decipher this stuff well.
Code ------------------------------------------------------------------------------------------------------------------- -- Setup functions for this job. Generally should not be modified. ------------------------------------------------------------------------------------------------------------------- -- Initialization function for this job file. function get_sets() mote_include_version = 2 -- Load and initialize the include file. include('Mote-Include.lua') include('organizer-lib') include('Windowpane_custom_functions.lua') end -- Setup vars that are user-independent. state.Buff vars initialized here will automatically be tracked. function job_setup() state.Buff['Afflatus Solace'] = buffactive['Afflatus Solace'] or false state.Buff['Afflatus Misery'] = buffactive['Afflatus Misery'] or false state.OffenseMode:options('None', 'Normal') state.CastingMode:options('Normal', 'Resistant') state.IdleMode:options('Normal', 'PDT','MDT','Encumberance') state.PhysicalDefenseMode:options('PDT') --'Shield' --get_current_strategem_count() select_default_macro_book() end ------------------------------------------------------------------------------------------------------------------- -- User setup functions for this job. Recommend that these be overridden in a sidecar file. ------------------------------------------------------------------------------------------------------------------- function user_setup() send_command('@wait 6;input /ignoretrust on') send_command('@wait 15;input /lockstyleset 1') end -- Setup vars that are user-dependent. Can override this function in a sidecar file. function user_unload() end -- Define sets and vars used by this job file. function init_gear_sets() -------------------------------------- -- Start defining the sets -------------------------------------- -- Precast Sets -- Fast cast sets for spells sets.precast.FC = { main="Chatoyant Staff", sub="Clerisy Strap", ammo="Impatiens", head="", body="Inyanga Jubbah", hands="Magavan Mitts", legs="", feet="Teal Pigaches", neck="Orison Locket", waist="Witful Belt", left_ear="Enchanter Earring +1", right_ear="Loquac. Earring", left_ring="", right_ring="Prolix Ring", back="Swith Cape" } sets.precast.FC.Trust = { main={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, sub="Sors Shield", ammo="Impatiens", head="Piety Cap +1", body="Piety Briault +1", hands="Piety Mitts +1", legs="Piety Pantaloons +1", feet="Piety Duckbills +1", neck="Orison Locket", waist="Witful Belt", left_ear="Enchanter Earring +1", right_ear="Loquac. Earring", left_ring="", right_ring="Prolix Ring", back="Swith Cape" } sets.precast.FC['Enhancing Magic'] = set_combine(sets.precast.FC, {}) sets.precast.FC.Stoneskin = set_combine(sets.precast.FC['Enhancing Magic'], {}) sets.precast.FC['Healing Magic'] = set_combine(sets.precast.FC, {body="",legs="Ebers Pantaloons +1"}) sets.precast.FC.StatusRemoval = sets.precast.FC['Healing Magic'] sets.precast.FC.Cure = set_combine(sets.precast.FC['Healing Magic'], { main={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, sub="Sors Shield", ammo="", head="Piety Cap +1", body="", hands="", legs="Ebers Pantaloons +1", feet="Cure Clogs", neck="Aceso's Choker", waist="", left_ear="", right_ear="", left_ring="", right_ring="", back="" }) sets.precast.FC.Impact = {head=empty,body="Twilight Cloak"} sets.precast.FC.Curaga = sets.precast.FC.Cure sets.precast.FC.CureSolace = sets.precast.FC.Cure -- CureMelee spell map should default back to Healing Magic. -- Precast sets to enhance JAs sets.precast.JA.Benediction = {body="Piety Briault +1"} -- Waltz set (chr and vit) sets.precast.Waltz = {} -- Weaponskill sets -- Default set for any weaponskill that isn't any more specifically defined sets.precast.WS = {} -- Midcast Sets sets.midcast.FastRecast = { main="Chatoyant Staff", sub="Clerisy Strap", ammo="Impatiens", head="Piety Cap +1", body="Inyanga Jubbah", hands="Magavan Mitts", legs="Ebers Pantaloons +1", feet="Battlecast Gaiters", neck="Orison Locket", waist="Witful Belt", left_ear="Enchanter Earring +1", right_ear="Loquac. Earring", left_ring="", right_ring="Prolix Ring", back="Swith Cape" } ------------ Cure sets------------------- sets.midcast.CureWithLightWeather = set_combine(sets.midcast.Cure, { main="Chatoyant Staff", sub="Curation Grip", back="Twilight Cape", waist="Korin Obi", }) sets.midcast.CureSolace = { main={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, sub="Sors Shield", ammo="Impatiens", head="Ebers Cap", body="Theophany Briault +1", hands="Weatherspoon Cuffs", legs="Ebers Pantaloons +1", feet="Piety Duckbills +1", neck="", waist="Witful Belt", left_ear="Orison Earring", right_ear="Roundel Earring", left_ring="Aqua Ring", right_ring="Prolix Ring", back="Oretania's Cape" } sets.midcast.Cure = { main={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, sub="Sors Shield", ammo="Impatiens", head="Ebers Cap", body="Theophany Briault +1", hands="Weatherspoon Cuffs", legs="Ebers Pantaloons +1", feet="Piety Duckbills +1", neck="", waist="Witful Belt", left_ear="Orison Earring", right_ear="Roundel Earring", left_ring="Aqua Ring", right_ring="Prolix Ring", back="Oretania's Cape" } sets.midcast.Curaga = set_combine(sets.midcast.Cure,{ main={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, sub="Sors Shield", ammo="Impatiens", head="Theophany Cap +1", body="Vanir Cotehardie", hands="Theophany Mitts +1", legs="Ebers Pantaloons +1", feet="Theophany Duckbills +1", neck="Nuna Gorget +1", waist="Cleric's Belt", left_ear="Aredan Earring", right_ear="Roundel Earring", left_ring="Aqua Ring", right_ring="Perception Ring", back="Alaunus's Cape" }) sets.midcast.CureMelee = { head="Ebers Cap", body="Theophany Briault +1", hands="Weatherspoon Cuffs", legs="Ebers Pantaloons +1", feet="Piety Duckbills +1", neck="", waist="Witful Belt", left_ear="Orison Earring", right_ear="Roundel Earring", left_ring="Aqua Ring", right_ring="Prolix Ring", back="Oretania's Cape" } sets.midcast.Cursna = { main="", sub="", neck="Malison Medallion", head="", ear1="", ear2="", body="Ebers Bliaud +1", hands="", ring1="", ring2="", back="Alaunus's Cape", waist="", legs="Theophany Pantaloons +1", feet="Gendewitha Galoshes" } sets.midcast.Cursna.Accession = set_combine(sets.midcast.Cursna,{ main="", }) sets.midcast.Doom = set_combine(sets.midcast.Cursna,{ main="", head="Ebers Cap", }) sets.midcast.Yagdoom = set_combine(sets.midcast.Cursna,{ sub="", }) sets.midcast.Arise = set_combine(sets.midcast.FastRecast,{ neck="", }) sets.midcast.StatusRemoval = set_combine(sets.midcast.FastRecast,{ main="", }) --------------ENHANCING AND SUCH--------------------- sets.midcast['Enhancing Magic'] = { main="Beneficus", sub="Sors Shield", ammo="", head="", body="", hands="", legs="Piety Pantaloons +1", feet="Ebers Duckbills +1", neck="", waist="Cascade Belt", left_ear="", right_ear="", left_ring="", right_ring="", back="" } sets.midcast.Haste = set_combine(sets.midcast['Enhancing Magic'],{}) sets.midcast.Storm = sets.midcast['Enhancing Magic'] sets.midcast.Aquaveil = set_combine(sets.midcast['Enhancing Magic'],{ main="", head="", waist="", legs="", }) sets.midcast.Stoneskin = set_combine(sets.midcast['Enhancing Magic'],{ neck="", legs="", lear="", waist="Siegel Sash" }) sets.midcast.Phalanx = set_combine(sets.midcast['Enhancing Magic'],{}) sets.midcast.Auspice = set_combine(sets.midcast['Enhancing Magic'],{feet="Ebers Duckbills +1"}) sets.midcast.BarElement = { main="Beneficus", sub="Sors Shield", head="Ebers Cap", neck="", ear1="", body="Ebers Bliaud +1", hands="Ebers Mitts", ring1="", ring2="", back="Alaunus's Cape", waist="", legs="Piety Pantaloons +1", feet="Ebers Duckbills +1" } sets.midcast.BarStatus = set_combine(sets.midcast['Enhancing Magic'],{}) sets.midcast.Regen = set_combine(sets.midcast['Enhancing Magic'], { main="", head="", body="Piety Briault +1", hands="Ebers Mitts", legs="Theophany Pantaloons +1", feet="" }) sets.midcast.Protectra = set_combine(sets.midcast['Enhancing Magic'], { feet="Piety Duckbills +1" }) sets.midcast.Shellra = set_combine(sets.midcast['Enhancing Magic'], { legs="Piety Pantaloons +1" }) sets.midcast.Dia = set_combine(sets.midcast.MndEnfeebles, { waist="" }) sets.midcast['Divine Magic'] = { main={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, sub="Sors Shield", ammo="", head="", neck="Erra Pendant", ear1="Enchanter Earring +1", ear2="Aredan Earring", ring1="", ring2="Perception Ring", body="Inyanga Jubbah", hands="Piety Mitts +1", back="Alaunus's Cape", waist="", legs="Theophany Pantaloons +1", feet="" } sets.midcast['Dark Magic'] = { main={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, sub="Sors Shield", ammo="", head="", neck="Erra Pendant", ear1="Enchanter Earring +1", ear2="Aredan Earring", ring1="", ring2="Perception Ring", body="Inyanga Jubbah", hands="Magavan Mitts", back="Alaunus's Cape", waist="", legs="", feet="" } -- Custom spell classes sets.midcast.MndEnfeebles = { main={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, sub="Sors Shield", ammo="", head="", neck="Enfeebling Torque", ear1="Enchanter Earring +1", ear2="Aredan Earring", ring1="", ring2="Perception Ring", body="Inyanga Jubbah", hands="Magavan Mitts", back="Alaunus's Cape", waist="", legs="", feet="" } sets.midcast.IntEnfeebles = { main={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, sub="Sors Shield", ammo="", head="", neck="Enfeebling Torque", ear1="Enchanter Earring +1", ear2="Aredan Earring", ring1="", ring2="Perception Ring", body="Inyanga Jubbah", hands="Magavan Mitts", back="Alaunus's Cape", waist="", legs="", feet="" } sets.midcast.Impact = { main={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, sub="Sors Shield", ammo="", head="", neck="Erra Pendant", ear1="Enchanter Earring +1", ear2="Aredan Earring", ring1="", ring2="Perception Ring", body="Twilight Cloak", hands="Magavan Mitts", back="Alaunus's Cape", waist="", legs="", feet="",} -- Sets to return to when not performing an action. -- Resting set sets.resting = set_combine(sets.Idle,{}) -- Idle sets (default idle set not needed since the other three are defined, but leaving for testing purposes) sets.idle = { main={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, sub="Genbu's Shield", ammo="", neck="Twilight Torque", ear1="", ear2="", head="Piety Cap +1", body="Ebers Bliaud +1", hands="Serpentes Cuffs", ring1="Defending Ring", ring2="", back="Shadow Mantle", waist="", legs="Ebers Pantaloons +1", feet="Crier's Gaiters" } sets.idle.PDT = set_combine(sets.Idle,{ main={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, sub="Genbu's Shield", ammo="", neck="Twilight Torque", ear1="", ear2="", head="Piety Cap +1", body="Ebers Bliaud +1", hands="Ebers Mitts", ring1="Defending Ring", ring2="", back="Shadow Mantle", waist="", legs="Ebers Pantaloons +1", feet="Crier's Gaiters" }) sets.idle.MDT = set_combine(sets.Idle,{ main={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, sub="Genbu's Shield", ammo="", neck="Twilight Torque", ear1="", ear2="", head="Piety Cap +1", body="Ebers Bliaud +1", hands="Ebers Mitts", ring1="Defending Ring", ring2="", back="Shadow Mantle", waist="", legs="Ebers Pantaloons +1", feet="Crier's Gaiters" }) sets.idle.Encumberance = { main={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, sub="Genbu's Shield", ammo="", neck="Twilight Torque", ear1="", ear2="", head="Piety Cap +1", body="Ebers Bliaud +1", hands="Ebers Mitts", ring1="Defending Ring", ring2="", back="Shadow Mantle", waist="", legs="Ebers Pantaloons +1", feet="Crier's Gaiters" } sets.idle.Town = { main={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, sub="Genbu's Shield", ammo="", neck="Twilight Torque", ear1="", ear2="", head="Piety Cap +1", body="Ebers Bliaud +1", hands="Ebers Mitts", ring1="Defending Ring", ring2="", back="Shadow Mantle", waist="", legs="Ebers Pantaloons +1", feet="Crier's Gaiters" } sets.idle.Weak = { main={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, sub="Genbu's Shield", ammo="", neck="Twilight Torque", ear1="", ear2="", head="Piety Cap +1", body="Ebers Bliaud +1", hands="Ebers Mitts", ring1="Defending Ring", ring2="", back="Shadow Mantle", waist="", legs="Ebers Pantaloons +1", feet="Crier's Gaiters" } -- Defense sets sets.defense.PDT = { main={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, sub="Genbu's Shield", ammo="", neck="Twilight Torque", ear1="", ear2="", head="Piety Cap +1", body="Ebers Bliaud +1", hands="Ebers Mitts", ring1="Defending Ring", ring2="", back="Shadow Mantle", waist="", legs="Ebers Pantaloons +1", feet="Crier's Gaiters" } --sets.defense.Shield = { -- main="Mafic cudgel", -- 10% PDT; -- sub="Genmei shield", -- 10% PDT; Block +6; Counter +4 -- ammo="Brigantia pebble", -- head=gear.chirhead_block, -- 2% MDT; Block +3 -- neck="Loricate torque +1", -- 6% DT -- ear1="Thureous earring", -- Block +2 -- ear2="Genmei earring", -- 2% PDT; Counter +1 -- body="Vrikodara jupon", -- 3% PDT -- hands=gear.chirhands_block, -- Block +4 -- ring1="Defending Ring", -- 10% DT -- ring2="Dark Ring", -- 5% PDT; 4% MDT -- back="Moonlight Cape", -- 4% DT -- waist="Slipor sash", -- 3% MDT -- legs=gear.chirlegs_block, -- Block +3 -- feet=gear.chirfeet_block -- 2% PDT; Block +4 -- } sets.defense.MDT = { main={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, sub="Genbu's Shield", ammo="", neck="Twilight Torque", ear1="", ear2="", head="Piety Cap +1", body="Ebers Bliaud +1", hands="Ebers Mitts", ring1="Defending Ring", ring2="", back="Shadow Mantle", waist="", legs="Ebers Pantaloons +1", feet="Crier's Gaiters" } sets.Kiting = {feet="Crier's gaiters"} sets.latent_refresh = { hands="Serpentes Cuffs", feet="Serpentes Sabots" } -- Engaged sets -- Variations for TP weapon and (optional) offense/defense modes. Code will fall back on previous -- sets if more refined versions aren't defined. -- If you create a set with both offense and defense modes, the offense mode should be first. -- EG: sets.engaged.Dagger.Accuracy.Evasion -- Basic set for if no TP weapon is defined. sets.engaged = { main="Sindri", sub={ name="Queller Rod", augments={'Healing magic skill +15','"Cure" potency +10%','"Cure" spellcasting time -7%',}}, ammo="Cheruski Needle", neck="Twilight Torque", ear1="Mache Earring", ear2="Brutal Earring", head="Espial Cap", body="Espial Gambison", hands="Espial Bracers", ring1="Rajas Ring", ring2="Enlivened Ring", back="Alaunus's Cape", waist="Witful Belt", legs="Espial Hose", feet="Battlecast Gaiters" } -- Weaponskill sets -- Default set for any weaponskill that isn't any more specifically defined sets.precast.WS = set_combine(sets.engaged,{ neck="Fotia Gorget", ear2="Moonshade Earring", waist="Fotia Belt", }) -- Buff sets: Gear that needs to be worn to actively enhance a current player buff. sets.buff['Divine Caress'] = {hands="Ebers mitts +1",back=""} end ------------------------------------------------------------------------------------------------------------------- -- Job-specific pretarget ------------------------------------------------------------------------------------------------------------------- function pretarget(spell, action, spellMap, eventArgs) if spell.action_type == 'Magic' and buffactive.silence then -- Auto Use Echo Drops If You Are Silenced -- eventArgs.cancel = true send_command('input /item "Echo Drops" <me>') end if spell.name == 'Impact' then equip(sets.precast.FC.Impact) eventArgs.handled = true end end Cures = S{'Cure','Cure II','Cure III','Cure IV','Cure V','Cure VI'} Curagas = S{'Curaga','Curaga II','Curaga III','Curaga IV','Curaga V','Cura','Cura II','Cura III'} Lyna = S{'Paralyna','Silena','Viruna','Erase','Stona','Blindna','Poisona'} Barspells = S{'Barfira','Barfire','Barwater','Barwatera','Barstone','Barstonra','Baraero','Baraera','Barblizzara','Barblizzard','Barthunder','Barthundra'} Turtle = S{'Protectra V','Shellra V'} Cursna = S{'Cursna'} Regens = S{'Regen','Regen II','Regen III','Regen IV','Regen V'} Enhanced = S{'Flurry','Haste','Refresh'} Banished = S{'Banish','Banish II','Banish III','Banishga','Banishga II'} Smited = S{'Holy','Holy II'} Reposed = S{'Repose','Flash'} Potency = S{'Slow','Paralyze'} Defense = S{'Stoneskin'} ------------------------------------------------------------------------------------------------------------------- -- Job-specific hooks for standard casting events. ------------------------------------------------------------------------------------------------------------------- -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done. -- Set eventArgs.useMidcastGear to true if we want midcast gear equipped on precast. function job_precast(spell, action, spellMap, eventArgs) if spell.english == "Impact" then equip(sets.precast.FC,sets.precast.FC.Impact) end end function job_precast(spell, action, spellMap, eventArgs) if spell.skill == "Trust Magic" then equip(sets.precast.FC.Trust) end end function job_handle_equipping_gear(playerStatus, eventArgs) -- Lock Equipment Here -- if player.equipment.left_ring == "Warp Ring" or player.equipment.right_ring == "Warp Ring" or player.equipment.left_ring == "Capacity Ring" or player.equipment.right_ring == "Capacity Ring" or player.equipment.left_ring == "Trizek Ring" or player.equipment.right_ring == "Trizek Ring" or player.equipment.left_ring == "Dimensional Ring (Dem)" or player.equipment.right_ring == "Dimensional Ring (Dem)" or player.equipment.left_ring == "Dimensional Ring (Mea)" or player.equipment.right_ring == "Dimensional Ring (Mea)" or player.equipment.left_ring == "Echad Ring" or player.equipment.right_ring == "Echad Ring" or player.equipment.left_ring == "Emperor Band" or player.equipment.right_ring == "Emperor Band" or player.equipment.left_ring == "Reraise Ring" or player.equipment.right_ring == "Reraise Ring" or player.equipment.left_ring == "Tavnazian Ring" or player.equipment.right_ring == "Tavnazian Ring" or player.equipment.left_ring == "Olduum Ring" or player.equipment.right_ring == "Olduum Ring" or player.equipment.left_ring == "Caliber Ring" or player.equipment.right_ring == "Caliber Ring" or player.equipment.left_ring == "Facility Ring" or player.equipment.right_ring == "Facility Ring" then disable('ring1','ring2') elseif player.equipment.back == "Mecisto. Mantle" or player.equipment.back == "Aptitude Mantle +1" or player.equipment.back == "Aptitude Mantle" then disable('back') elseif player.equipment.left_ear == "Terminus Earring" or player.equipment.right_ear == "Terminus Earring" or player.equipment.left_ear == "Liminus Earring" or player.equipment.right_ear == "Liminus Earring" then disable('ear1','ear2') else enable('ring1','ring2','back','ear1','ear2') end end function job_midcast(spell, action, spellMap, eventArgs) if spell.skill == 'Healing Magic' then if Cures:contains(spell.name) then if world.day =='Lightsday' or world.weather_element == 'Light' or buffactive == 'Aurorastorm' then equip(sets.midcast.CureWithLightWeather) elseif buffactive['Afflatus Solace'] then equip(sets.midcast.CureSolace) end end if Curagas:contains(spell.name) then if world.day =='Lightsday' or world.weather_element == 'Light' or buffactive == 'Aurorastorm' then equip(sets.midcast.CureWithLightWeather) else equip(sets.midcast.Curaga) end end end end function job_post_midcast(spell, action, spellMap, eventArgs) if spell.action_type == 'Magic' then if spell.english == 'Cursna' then equip(check_player_for_doom(spell.target.name)) end end if spellMap == 'StatusRemoval' and buffactive['Divine Caress'] then equip(sets.buff['Divine Caress']) end end party_buffs = {} function party_buff_change(party_member,name,gain,buff) if name == 'doom' and gain then party_buffs[party_member.name] = name elseif name == 'doom' and gain == false then if table.containskey(party_buffs, party_member.name) then party_buffs[party_member.name] = nil end end end function check_player_for_doom(target) if table.containskey(party_buffs, target) then if player.sub_job == "DNC" or player.sub_job == "NIN" then return sets.midcast.Yagdoom elseif buffactive.Accession then return sets.midcast.Cursna.Accession else return sets.midcast.Doom end else return sets.midcast.Cursna end end ------------------------------------------------------------------------------------------------------------------- -- Job-specific hooks for non-casting events. ------------------------------------------------------------------------------------------------------------------- -- Handle notifications of general user state change. function job_state_change(stateField, newValue, oldValue) if stateField == 'Offense Mode' then if newValue == 'Normal' then disable('main','sub','range') else enable('main','sub','range') end end end ------------------------------------------------------------------------------------------------------------------- -- User code that supplements standard library decisions. ------------------------------------------------------------------------------------------------------------------- -- Custom spell mapping. function job_get_spell_map(spell, default_spell_map) if spell.action_type == 'Magic' then if (default_spell_map == 'Cure' or default_spell_map == 'Curaga') and player.status == 'Engaged' then return "CureMelee" elseif default_spell_map == 'Cure' and state.Buff['Afflatus Solace'] then return "CureSolace" elseif default_spell_map == 'BarStatus' then return "BarStatus" elseif (default_spell_map == 'Cure' or default_spell_map == 'Curaga') and (world.day == 'Lightsday' or world.weather_element == 'Light' or buffactive == 'Aurorastorm') then return "CureWithLightWeather" elseif spell.skill == "Enfeebling Magic" then if spell.type == "WhiteMagic" then return "MndEnfeebles" else return "IntEnfeebles" end end end end function customize_idle_set(idleSet) if player.mpp < 51 then idleSet = set_combine(idleSet, sets.latent_refresh) end return idleSet end -- Function to display the current relevant user state when doing an update. function display_current_job_state(eventArgs) display_current_caster_state() eventArgs.handled = true end ------------------------------------------------------------------------------------------------------------------- -- Utility functions specific to this job. ------------------------------------------------------------------------------------------------------------------- -- Select default macro book on initial load or subjob change. function select_default_macro_book() -- Default macro set/book set_macro_page(1, 1) end Offline
Posts: 130
I'm really new to gearswap and am having trouble with my warrior lua, everything works great except my moonshade earring swap function, can anyone see whats going on with it?
line 1018 is the function, ive tried putting other earrings in the sets instead of moonshade ive changed the tp<2950 to tp>2950, and I cant think of anything else. Code -- Initialization function for this job file. function get_sets() mote_include_version = 2 include('Mote-Include.lua') end -- //gs debugmode -- //gs showswaps function binds_on_load() -- F9-F12 send_command('bind f9 gs c cycle OffenseMode') send_command('bind f10 gs c cycle HybridMode') send_command('bind f11 gs c cycle CastingMode') send_command('bind f12 gs c update user') -- CTRL F9-F12 send_command('bind ^q gs c mainweapon') send_command('bind ^f9 gs c cycle WeaponskillMode') -- ALT F9-12 send_command('bind !f9 gs c cycle IdleMode') send_command('bind !f10 gs c cycle RangedMode') send_command('bind !f12 gs c cycle Kiting') end function job_setup() state.mainweapon = M{['description'] = 'Main Weapon'} --state.mainweapon:options('HepatizonAxe','Ragnarok','Barbarity','HepatizonSapara') state.mainweapon:options('HepatizonAxe','Ragnarok','Barbarity','HepatizonSapara') end function user_setup() -- Options: Override default values state.OffenseMode:options('Normal', 'LowAcc', 'MidAcc', 'HighAcc') state.WeaponskillMode:options('Normal', 'Acc') state.HybridMode:options('Normal', 'PDT') state.CastingMode:options('Normal', 'Resistant') state.IdleMode:options('Normal','PDT') state.PhysicalDefenseMode:options('PDT', 'MDT') HepatizonAxe_weapons = S{'Hepatizon Axe +1'} Rag_weapons = S{'Ragnarok'} Shield_weapons = S{'Blurred Shield'} update_combat_form() select_default_macro_book() end -- Called when this job file is unloaded (eg: job change) function file_unload() if binds_on_unload then binds_on_unload() end end sets.mainweapon = {} sets.mainweapon.HepatizonAxe = { main="Hepatizon Axe +1", sub="Utu Grip", } sets.mainweapon.BlurredAxe = { main="Barbarity", sub="Blurred Shield", } sets.mainweapon.BlurredSword = { main="Hepatizon Sapara +1", sub="Blurred Shield", } sets.mainweapon = {} sets.mainweapon.Ragnarok = { main="Ragnarok", sub="Utu Grip", } -- Define sets and vars used by this job file. function init_gear_sets() -- Precast sets sets.precast.JA['Berserk'] = { body="Pumm. Lorica +3", feet={ name="Agoge Calligae +1", augments={'Enhances "Tomahawk" effect',}}, back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.precast.JA['Warcry'] = { head={ name="Agoge Mask +1", augments={'Enhances "Savagery" effect',}},} sets.precast.JA['Aggressor'] = { head="Pummeler's Mask +3", body={ name="Agoge Lorica +1", augments={'Enhances "Aggressive Aim" effect',}},} sets.precast.JA['Blood Rage'] = { body="Boii Lorica +1",} sets.precast.JA['Retaliation'] = { feet="Boii Calligae +1", hands="Pummeler's Mufflers +3"} sets.precast.JA['Restraint'] = { hands="Boii Mufflers +1",} sets.precast.JA['Mighty Strikes'] = { hands="Agoge Mufflers +1"} sets.precast.JA["Warrior's Charge"] = { legs={ name="Agoge Cuisses +1", augments={'Enhances "Warrior\'s Charge" effect',}},} sets.precast.JA['Provoke'] = { ammo="Staunch Tathlum", head={ name="Souv. Schaller +1", augments={'HP+105','Enmity+9','Potency of "Cure" effect received +15%',}}, body={ name="Odyss. Chestplate", augments={'Accuracy+23','"Store TP"+7','STR+9','Attack+8',}}, hands="Pumm. Mufflers +3", legs={ name="Souv. Diechlings +1", augments={'HP+105','Enmity+9','Potency of "Cure" effect received +15%',}}, feet={ name="Souveran Schuhs +1", augments={'HP+105','Enmity+9','Potency of "Cure" effect received +15%',}}, neck="Loricate Torque +1", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Brutal Earring", left_ring="Petrov Ring", right_ring="Niqmaddu Ring", back="Philidor Mantle",} -- Fast cast sets for spells sets.precast.FC = { ammo="Sapience Orb", head={ name="Souv. Schaller +1", augments={'HP+105','Enmity+9','Potency of "Cure" effect received +15%',}}, body={ name="Odyss. Chestplate", augments={'Accuracy+23','"Store TP"+7','STR+9','Attack+8',}}, hands={ name="Leyline Gloves", augments={'Accuracy+15','Mag. Acc.+15','"Mag.Atk.Bns."+15','"Fast Cast"+3',}}, legs={ name="Founder's Hose", augments={'MND+10','Mag. Acc.+15','Attack+15','Breath dmg. taken -5%',}}, feet={ name="Souveran Schuhs +1", augments={'HP+105','Enmity+9','Potency of "Cure" effect received +15%',}}, neck="Diemer Gorget", waist="Gishdubar Sash", left_ear="Enchntr. Earring +1", right_ear="Loquac. Earring", left_ring="Weather. Ring", right_ring="Niqmaddu Ring", back="Solemnity Cape",} -- Midcast Sets sets.midcast.FastRecast = { body={ name="Odyss. Chestplate", augments={'Accuracy+7','"Fast Cast"+5',}}, legs={ name="Eschite Cuisses", augments={'"Mag.Atk.Bns."+25','"Conserve MP"+6','"Fast Cast"+5',}}, feet={ name="Odyssean Greaves", augments={'Accuracy+7 Attack+7','"Fast Cast"+3','Accuracy+12','Attack+11',}}, right_ear="Loquac. Earring",} sets.midcast.Flash = { ammo="Staunch Tathlum", head="Pummeler's Mask +3", body={ name="Souveran Cuirass", augments={'HP+80','Enmity+7','Potency of "Cure" effect received +10%',}}, hands="Macabre Gaunt. +1", legs={ name="Souveran Diechlings", augments={'HP+80','Enmity+7','Potency of "Cure" effect received +10%',}}, feet={ name="Eschite Greaves", augments={'HP+80','Enmity+7','Phys. dmg. taken -4',}}, neck="Diemer Gorget", waist="Nierenschutz", left_ear="Friomisi Earring", right_ear="Loquacious Earring", left_ring="Apeile Ring", right_ring="Apeile Ring +1", back="Philidor Mantle",} -- Resting sets sets.resting = {} -- Idle sets sets.idle = { ammo="Ginsen", head="Arke Zuchetto", body="Arke Corazza", hands="Sulev. Gauntlets +2", legs="Arke Cosciales", feet="Pumm. Calligae +3", neck="Loricate Torque +1", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Regal Ring", right_ring="Defending Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.idle.PDT = { ammo="Ginsen", head="Arke Zuchetto", body="Arke Corazza", hands="Sulev. Gauntlets +2", legs="Arke Cosciales", feet="Pumm. Calligae +3", neck="Loricate Torque +1", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Regal Ring", right_ring="Defending Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.idle.Town = { ammo="Ginsen", head="Pummeler's Mask +3", body="Pumm. Lorica +3", hands="Pumm. Mufflers +3", legs="Pumm. Cuisses +3", feet="Hermes' Sandals", neck="Lissome Necklace", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Regal Ring", right_ring="Dim. Ring (Dem)", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.idle.Weak = { ammo="Ginsen", head="Arke Zuchetto", body="Arke Corazza", hands="Sulev. Gauntlets +2", legs="Arke Cosciales", feet="Pumm. Calligae +3", neck="Loricate Torque +1", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Regal Ring", right_ring="Defending Ring", back="Moonbeam Cape",} --Engaged Hepatizon Axe +1 sets.engaged.HepatizonAxe = { ammo="Ginsen", head="Flam. Zucchetto +2", body={ name="Valorous Mail", augments={'Accuracy+24 Attack+24','"Store TP"+6','STR+7','Accuracy+12',}}, hands="Sulev. Gauntlets +2", legs="Pumm. Cuisses +3", feet="Pumm. Calligae +3", neck="Lissome Necklace", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Flamma Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.HepatizonAxe.PDT = { ammo="Ginsen", head="Arke Zuchetto", body="Arke Corazza", hands="Sulev. Gauntlets +2", legs="Arke Cosciales", feet="Pumm. Calligae +3", neck="Loricate Torque +1", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Regal Ring", right_ring="Defending Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.HepatizonAxe.LowAcc = { ammo="Ginsen", head="Flam. Zucchetto +2", body={ name="Valorous Mail", augments={'Accuracy+24 Attack+24','"Store TP"+6','STR+7','Accuracy+12',}}, hands="Sulev. Gauntlets +2", legs="Pumm. Cuisses +3", feet="Pumm. Calligae +3", neck="Lissome Necklace", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Flamma Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.HepatizonAxe.LowAcc.PDT = sets.engaged.HepatizonAxe.PDT sets.engaged.HepatizonAxe.MidAcc = { ammo="Ginsen", head="Flam. Zucchetto +2", body={ name="Valorous Mail", augments={'Accuracy+24 Attack+24','"Store TP"+6','STR+7','Accuracy+12',}}, hands="Sulev. Gauntlets +2", legs="Pumm. Cuisses +3", feet="Pumm. Calligae +3", neck="Lissome Necklace", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Flamma Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.HepatizonAxe.MidAcc.PDT = {} sets.engaged.HepatizonAxe.HighAcc = { ammo="Seeth. Bomblet +1", head="Pummeler's Mask +3", body="Pumm. Lorica +3", hands="Pumm. Mufflers +3", legs="Pumm. Cuisses +3", feet="Pumm. Calligae +3", neck="Sanctity Necklace", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Zennaroi Earring", left_ring="Regal Ring", right_ring="Chirich Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.HepatizonAxe.HighAcc.PDT = sets.engaged.HepatizonAxe.MidAcc.PDT --Engaged Ragnarok sets.engaged.Ragnarok = { ammo="Ginsen", head="Flam. Zucchetto +2", body={ name="Valorous Mail", augments={'Accuracy+24 Attack+24','"Store TP"+6','STR+7','Accuracy+12',}}, hands="Sulev. Gauntlets +2", legs="Pumm. Cuisses +3", feet="Pumm. Calligae +3", neck="Lissome Necklace", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Flamma Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.Ragnarok.PDT = { ammo="Ginsen", head="Arke Zuchetto", body="Arke Corazza", hands="Sulev. Gauntlets +2", legs="Arke Cosciales", feet="Pumm. Calligae +3", neck="Loricate Torque +1", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Regal Ring", right_ring="Defending Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.Ragnarok.LowAcc = { ammo="Ginsen", head="Flam. Zucchetto +2", body={ name="Valorous Mail", augments={'Accuracy+24 Attack+24','"Store TP"+6','STR+7','Accuracy+12',}}, hands="Sulev. Gauntlets +2", legs="Pumm. Cuisses +3", feet="Pumm. Calligae +3", neck="Lissome Necklace", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Flamma Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.Ragnarok.LowAcc.PDT = sets.engaged.Ragnarok.PDT sets.engaged.Ragnarok.MidAcc = { ammo="Ginsen", head="Flam. Zucchetto +2", body={ name="Valorous Mail", augments={'Accuracy+24 Attack+24','"Store TP"+6','STR+7','Accuracy+12',}}, hands="Sulev. Gauntlets +2", legs="Pumm. Cuisses +3", feet="Pumm. Calligae +3", neck="Lissome Necklace", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Flamma Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.Ragnarok.MidAcc.PDT = {} sets.engaged.Ragnarok.HighAcc = { ammo="Seeth. Bomblet +1", head="Pummeler's Mask +3", body="Pumm. Lorica +3", hands="Pumm. Mufflers +3", legs="Pumm. Cuisses +3", feet="Pumm. Calligae +3", neck="Sanctity Necklace", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Zennaroi Earring", left_ring="Regal Ring", right_ring="Chirich Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.Ragnarok.HighAcc.PDT = sets.engaged.Ragnarok.MidAcc.PDT -- Sword and Board Sets sets.engaged.BlurredAxe = { ammo="Ginsen", head="Flam. Zucchetto +2", body={ name="Valorous Mail", augments={'Accuracy+24 Attack+24','"Store TP"+6','STR+7','Accuracy+12',}}, hands="Sulev. Gauntlets +2", legs="Pumm. Cuisses +3", feet="Pumm. Calligae +3", neck="Lissome Necklace", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Flamma Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.BlurredAxe.PDT = { ammo="Ginsen", head="Arke Zuchetto", body="Arke Corazza", hands="Sulev. Gauntlets +2", legs="Arke Cosciales", feet="Pumm. Calligae +3", neck="Loricate Torque +1", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Regal Ring", right_ring="Defending Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.BlurredAxe.LowAcc = { ammo="Ginsen", head="Flam. Zucchetto +2", body={ name="Valorous Mail", augments={'Accuracy+24 Attack+24','"Store TP"+6','STR+7','Accuracy+12',}}, hands="Sulev. Gauntlets +2", legs="Pumm. Cuisses +3", feet="Pumm. Calligae +3", neck="Lissome Necklace", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Flamma Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.BlurredAxe.LowAcc.PDT = sets.engaged.BlurredAxe.PDT sets.engaged.BlurredAxe.MidAcc = { ammo="Ginsen", head="Flam. Zucchetto +2", body={ name="Valorous Mail", augments={'Accuracy+24 Attack+24','"Store TP"+6','STR+7','Accuracy+12',}}, hands="Sulev. Gauntlets +2", legs="Pumm. Cuisses +3", feet="Pumm. Calligae +3", neck="Lissome Necklace", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Flamma Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.BlurredAxe.MidAcc.PDT = {} sets.engaged.BlurredAxe.HighAcc = { ammo="Seeth. Bomblet +1", head="Pummeler's Mask +3", body="Pumm. Lorica +3", hands="Pumm. Mufflers +3", legs="Pumm. Cuisses +3", feet="Pumm. Calligae +3", neck="Sanctity Necklace", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Zennaroi Earring", left_ring="Regal Ring", right_ring="Chirich Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.BlurredAxe.HighAcc.PDT = sets.engaged.BlurredAxe.MidAcc.PDT sets.engaged.BlurredSword = { ammo="Ginsen", head="Flam. Zucchetto +2", body={ name="Valorous Mail", augments={'Accuracy+24 Attack+24','"Store TP"+6','STR+7','Accuracy+12',}}, hands="Sulev. Gauntlets +2", legs="Pumm. Cuisses +3", feet="Pumm. Calligae +3", neck="Lissome Necklace", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Flamma Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.BlurredSword.PDT = { ammo="Ginsen", head="Arke Zuchetto", body="Arke Corazza", hands="Sulev. Gauntlets +2", legs="Arke Cosciales", feet="Pumm. Calligae +3", neck="Loricate Torque +1", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Regal Ring", right_ring="Defending Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.BlurredSword.LowAcc = { ammo="Ginsen", head="Flam. Zucchetto +2", body={ name="Valorous Mail", augments={'Accuracy+24 Attack+24','"Store TP"+6','STR+7','Accuracy+12',}}, hands="Sulev. Gauntlets +2", legs="Pumm. Cuisses +3", feet="Pumm. Calligae +3", neck="Lissome Necklace", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Flamma Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.BlurredSword.LowAcc.PDT = sets.engaged.BlurredSword.PDT sets.engaged.BlurredSword.MidAcc = { ammo="Ginsen", head="Flam. Zucchetto +2", body={ name="Valorous Mail", augments={'Accuracy+24 Attack+24','"Store TP"+6','STR+7','Accuracy+12',}}, hands="Sulev. Gauntlets +2", legs="Pumm. Cuisses +3", feet="Pumm. Calligae +3", neck="Lissome Necklace", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Cessance Earring", left_ring="Flamma Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.BlurredSword.MidAcc.PDT = {} sets.engaged.BlurredSword.HighAcc = { ammo="Seeth. Bomblet +1", head="Pummeler's Mask +3", body="Pumm. Lorica +3", hands="Pumm. Mufflers +3", legs="Pumm. Cuisses +3", feet="Pumm. Calligae +3", neck="Sanctity Necklace", waist="Ioskeha Belt", left_ear="Telos Earring", right_ear="Zennaroi Earring", left_ring="Regal Ring", right_ring="Chirich Ring", back={ name="Cichol's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}},} sets.engaged.BlurredSword.HighAcc.PDT = sets.engaged.BlurredSword.MidAcc.PDT -- Weaponskill sets sets.precast.WS = { ammo="Seeth. Bomblet +1", head={ name="Argosy Celata +1", augments={'STR+12','DEX+12','Attack+20',}}, body={ name="Argosy Hauberk +1", augments={'STR+12','DEX+12','Attack+20',}}, hands={ name="Argosy Mufflers +1", augments={'STR+20','"Dbl.Atk."+3','Haste+3%',}}, legs={ name="Argosy Breeches +1", augments={'STR+12','Attack+25','"Store TP"+6',}}, feet="Pumm. Calligae +3", neck="Fotia Gorget", waist="Fotia Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Brutal Earring", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10',}},} sets.precast.WS.Acc = set_combine(sets.precast.WS, { ammo="Seeth. Bomblet +1", head={ name="Argosy Celata +1", augments={'STR+12','DEX+12','Attack+20',}}, body={ name="Argosy Hauberk +1", augments={'STR+12','DEX+12','Attack+20',}}, hands={ name="Argosy Mufflers +1", augments={'STR+20','"Dbl.Atk."+3','Haste+3%',}}, legs={ name="Argosy Breeches +1", augments={'STR+12','Attack+25','"Store TP"+6',}}, feet="Pumm. Calligae +3", neck="Fotia Gorget", waist="Fotia Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Brutal Earring", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10',}},}) sets.precast.WS['Fell Cleave'] = { ammo="Knobkierrie", head={ name="Argosy Celata +1", augments={'STR+12','DEX+12','Attack+20',}}, body="Pumm. Lorica +3", hands={ name="Argosy Mufflers +1", augments={'STR+20','"Dbl.Atk."+3','Haste+3%',}}, legs={ name="Argosy Breeches +1", augments={'STR+12','Attack+25','"Store TP"+6',}}, feet="Sulev. Leggings +2", neck="Caro Necklace", waist="Metalsinger Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Ishvara Earring", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},} sets.precast.WS['Fell Cleave'].Acc = set_combine(sets.precast.WS.Acc, { ammo="Knobkierrie", head={ name="Argosy Celata +1", augments={'STR+12','DEX+12','Attack+20',}}, body="Pumm. Lorica +3", hands={ name="Argosy Mufflers +1", augments={'STR+20','"Dbl.Atk."+3','Haste+3%',}}, legs={ name="Argosy Breeches +1", augments={'STR+12','Attack+25','"Store TP"+6',}}, feet="Sulev. Leggings +2", neck="Caro Necklace", waist="Metalsinger Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Ishvara Earring", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},}) sets.precast.WS['Ukkos Fury'] = { ammo="Seeth. Bomblet +1", head={ name="Argosy Celata +1", augments={'STR+12','DEX+12','Attack+20',}}, body={ name="Argosy Hauberk +1", augments={'STR+12','DEX+12','Attack+20',}}, hands="Flam. Manopolas +2", legs={ name="Argosy Breeches +1", augments={'STR+12','Attack+25','"Store TP"+6',}}, feet="Pumm. Calligae +3", neck="Caro Necklace", waist="Grunfeld Rope", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Brutal Earring", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},} sets.precast.WS['Ukkos Fury'].Acc = set_combine(sets.precast.WS.Acc, { ammo="Seeth. Bomblet +1", head={ name="Argosy Celata +1", augments={'STR+12','DEX+12','Attack+20',}}, body={ name="Argosy Hauberk +1", augments={'STR+12','DEX+12','Attack+20',}}, hands="Flam. Manopolas +2", legs={ name="Argosy Breeches +1", augments={'STR+12','Attack+25','"Store TP"+6',}}, feet="Pumm. Calligae +3", neck="Caro Necklace", waist="Grunfeld Rope", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Brutal Earring", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},}) sets.precast.WS['Upheaval'] = { ammo="Oneiros Pebble", head="Sulevia's Mask +2", body="Pumm. Lorica +3", hands="Sulev. Gauntlets +2", legs="Sulev. Cuisses +2", feet="Pumm. Calligae +3", neck="Fotia Gorget", waist="Ioskeha Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Brutal Earring", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'VIT+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}},} sets.precast.WS['Upheaval'].Acc = set_combine(sets.precast.WS.Acc, { ammo="Oneiros Pebble", head="Sulevia's Mask +2", body="Pumm. Lorica +3", hands="Sulev. Gauntlets +2", legs="Sulev. Cuisses +2", feet="Pumm. Calligae +3", neck="Fotia Gorget", waist="Ioskeha Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Brutal Earring", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'VIT+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}},}) sets.precast.WS['Kings Justice'] = { ammo="Seeth. Bomblet +1", head={ name="Argosy Celata +1", augments={'STR+12','DEX+12','Attack+20',}}, body={ name="Argosy Hauberk +1", augments={'STR+12','DEX+12','Attack+20',}}, hands={ name="Argosy Mufflers +1", augments={'STR+20','"Dbl.Atk."+3','Haste+3%',}}, legs={ name="Argosy Breeches +1", augments={'STR+12','Attack+25','"Store TP"+6',}}, feet="Pumm. Calligae +3", neck="Caro Necklace", waist="Metalsinger Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Brutal Earring", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10',}},} sets.precast.WS['Kings Justice'].Acc = set_combine(sets.precast.WS.Acc, { ammo="Seeth. Bomblet +1", head={ name="Argosy Celata +1", augments={'STR+12','DEX+12','Attack+20',}}, body={ name="Argosy Hauberk +1", augments={'STR+12','DEX+12','Attack+20',}}, hands={ name="Argosy Mufflers +1", augments={'STR+20','"Dbl.Atk."+3','Haste+3%',}}, legs={ name="Argosy Breeches +1", augments={'STR+12','Attack+25','"Store TP"+6',}}, feet="Pumm. Calligae +3", neck="Caro Necklace", waist="Metalsinger Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Brutal Earring", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10',}},}) sets.precast.WS['Steel Cyclone'] = { ammo="Knobkierrie", head="Sulevia's Mask +2", body="Pumm. Lorica +3", hands="Sulev. Gauntlets +2", legs="Sulev. Cuisses +2", feet="Sulev. Leggings +2", neck="Caro Necklace", waist="Prosilio Belt +1", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Zwazo Earring +1", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},} sets.precast.WS['Steel Cyclone'].Acc = set_combine(sets.precast.WS.Acc, { ammo="Knobkierrie", head="Sulevia's Mask +2", body="Pumm. Lorica +3", hands="Sulev. Gauntlets +2", legs="Sulev. Cuisses +2", feet="Sulev. Leggings +2", neck="Caro Necklace", waist="Prosilio Belt +1", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Zwazo Earring +1", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},}) sets.precast.WS['Shockwave'] = { ammo="Knobkierrie", head="Sulevia's Mask +2", body="Pumm. Lorica +3", hands="Sulev. Gauntlets +2", legs="Sulev. Cuisses +2", feet="Sulev. Leggings +2", neck="Caro Necklace", waist="Metalsinger Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Zwazo Earring +1", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},} sets.precast.WS['Shockwave'].Acc = set_combine(sets.precast.WS.Acc, { ammo="Knobkierrie", head="Sulevia's Mask +2", body="Pumm. Lorica +3", hands="Sulev. Gauntlets +2", legs="Sulev. Cuisses +2", feet="Sulev. Leggings +2", neck="Caro Necklace", waist="Metalsinger Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Zwazo Earring +1", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},}) sets.precast.WS['Scourge'] = { ammo="Knobkierrie", head="Sulevia's Mask +2", body="Pumm. Lorica +3", hands="Sulev. Gauntlets +2", legs="Sulev. Cuisses +2", feet="Sulev. Leggings +2", neck="Caro Necklace", waist="Metalsinger Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Zwazo Earring +1", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},} sets.precast.WS['Scourge'].Acc = set_combine(sets.precast.WS.Acc, { ammo="Knobkierrie", head="Sulevia's Mask +2", body="Pumm. Lorica +3", hands="Sulev. Gauntlets +2", legs="Sulev. Cuisses +2", feet="Sulev. Leggings +2", neck="Caro Necklace", waist="Metalsinger Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Zwazo Earring +1", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},}) sets.precast.WS['Ground Strike'] = { ammo="Knobkierrie", head="Sulevia's Mask +2", body="Pumm. Lorica +3", hands="Sulev. Gauntlets +2", legs="Sulev. Cuisses +2", feet="Sulev. Leggings +2", neck="Caro Necklace", waist="Metalsinger Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Zwazo Earring +1", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},} sets.precast.WS['Ground Strike'].Acc = set_combine(sets.precast.WS.Acc, { ammo="Knobkierrie", head="Sulevia's Mask +2", body="Pumm. Lorica +3", hands="Sulev. Gauntlets +2", legs="Sulev. Cuisses +2", feet="Sulev. Leggings +2", neck="Caro Necklace", waist="Metalsinger Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Zwazo Earring +1", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},}) sets.precast.WS['Resolution'] = { ammo="Seeth. Bomblet +1", head={ name="Argosy Celata +1", augments={'STR+12','DEX+12','Attack+20',}}, body={ name="Argosy Hauberk +1", augments={'STR+12','DEX+12','Attack+20',}}, hands={ name="Argosy Mufflers +1", augments={'STR+20','"Dbl.Atk."+3','Haste+3%',}}, legs={ name="Argosy Breeches +1", augments={'STR+12','Attack+25','"Store TP"+6',}}, feet="Pumm. Calligae +3", neck="Fotia Gorget", waist="Fotia Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Brutal Earring", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10',}},} sets.precast.WS['Resolution'].Acc = set_combine(sets.precast.WS.Acc, { ammo="Seeth. Bomblet +1", head={ name="Argosy Celata +1", augments={'STR+12','DEX+12','Attack+20',}}, body={ name="Argosy Hauberk +1", augments={'STR+12','DEX+12','Attack+20',}}, hands={ name="Argosy Mufflers +1", augments={'STR+20','"Dbl.Atk."+3','Haste+3%',}}, legs={ name="Argosy Breeches +1", augments={'STR+12','Attack+25','"Store TP"+6',}}, feet="Pumm. Calligae +3", neck="Fotia Gorget", waist="Fotia Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Brutal Earring", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10',}},}) sets.precast.WS['Mistral Axe'] = { ammo="Knobkierrie", head={ name="Argosy Celata +1", augments={'STR+12','DEX+12','Attack+20',}}, body="Pumm. Lorica +3", hands={ name="Argosy Mufflers +1", augments={'STR+20','"Dbl.Atk."+3','Haste+3%',}}, legs={ name="Argosy Breeches +1", augments={'STR+12','Attack+25','"Store TP"+6',}}, feet="Sulev. Leggings +2", neck="Caro Necklace", waist="Metalsinger Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Zwazo Earring +1", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},} sets.precast.WS['Mistral Axe'].Acc = { ammo="Knobkierrie", head={ name="Argosy Celata +1", augments={'STR+12','DEX+12','Attack+20',}}, body="Pumm. Lorica +3", hands={ name="Argosy Mufflers +1", augments={'STR+20','"Dbl.Atk."+3','Haste+3%',}}, legs={ name="Argosy Breeches +1", augments={'STR+12','Attack+25','"Store TP"+6',}}, feet="Sulev. Leggings +2", neck="Caro Necklace", waist="Metalsinger Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Zwazo Earring +1", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},} sets.precast.WS['Cloudsplitter'] = { ammo="Knobkierrie", head={ name="Jumalik Helm", augments={'MND+10','"Mag.Atk.Bns."+15','Magic burst dmg.+10%','"Refresh"+1',}}, body={ name="Found. Breastplate", augments={'Accuracy+15','Mag. Acc.+15','Attack+15','"Mag.Atk.Bns."+15',}}, hands={ name="Founder's Gauntlets", augments={'STR+5','Attack+8','"Mag.Atk.Bns."+9',}}, legs={ name="Odyssean Cuisses", augments={'Mag. Acc.+18 "Mag.Atk.Bns."+18','Phys. dmg. taken -1%','INT+3','Mag. Acc.+6','"Mag.Atk.Bns."+13',}}, feet={ name="Founder's Greaves", augments={'VIT+9','Accuracy+14','"Mag.Atk.Bns."+13','Mag. Evasion+15',}}, neck="Sanctity Necklace", waist="Eschan Stone", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Friomisi Earring", left_ring="Regal Ring", right_ring="Acumen Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},} sets.precast.WS['Cloudsplitter'].Acc = { ammo="Knobkierrie", head={ name="Jumalik Helm", augments={'MND+10','"Mag.Atk.Bns."+15','Magic burst dmg.+10%','"Refresh"+1',}}, body={ name="Found. Breastplate", augments={'Accuracy+15','Mag. Acc.+15','Attack+15','"Mag.Atk.Bns."+15',}}, hands={ name="Founder's Gauntlets", augments={'STR+5','Attack+8','"Mag.Atk.Bns."+9',}}, legs={ name="Odyssean Cuisses", augments={'Mag. Acc.+18 "Mag.Atk.Bns."+18','Phys. dmg. taken -1%','INT+3','Mag. Acc.+6','"Mag.Atk.Bns."+13',}}, feet={ name="Founder's Greaves", augments={'VIT+9','Accuracy+14','"Mag.Atk.Bns."+13','Mag. Evasion+15',}}, neck="Sanctity Necklace", waist="Eschan Stone", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Friomisi Earring", left_ring="Regal Ring", right_ring="Acumen Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},} sets.precast.WS['Savage Blade'] = { ammo="Knobkierrie", head="Sulevia's Mask +2", body="Pumm. Lorica +3", hands="Sulev. Gauntlets +2", legs="Sulev. Cuisses +2", feet="Sulev. Leggings +2", neck="Caro Necklace", waist="Metalsinger Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Zwazo Earring +1", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},} sets.precast.WS['Savage Blade'].Acc = { ammo="Knobkierrie", head="Sulevia's Mask +2", body="Pumm. Lorica +3", hands="Sulev. Gauntlets +2", legs="Sulev. Cuisses +2", feet="Sulev. Leggings +2", neck="Caro Necklace", waist="Metalsinger Belt", left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}}, right_ear="Zwazo Earring +1", left_ring="Regal Ring", right_ring="Niqmaddu Ring", back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},} -- Mighty Strikes WS Set -- sets.MS_WS = {ammo="Yetshila", feet="Boii Calligae +1"} end -- Job-specific hooks for standard casting events. function job_midcast(spell, action, spellMap, eventArgs) end -- Called when the player's status changes. function job_state_change(field, new_value, old_value) end function display_current_job_state(eventArgs) local msg = 'Melee' if state.HybridMode.value ~= 'Normal' then msg = msg .. '/' .. state.HybridMode.value end end function update_combat_form() -- Check Weapontype if HepatizonAxe_weapons:contains(player.equipment.main) then state.CombatForm:set('HepatizonAxe') elseif Rag_weapons:contains(player.equipment.main) then state.CombatForm:set('Ragnarok') elseif Shield_weapons:contains(player.equipment.sub) then state.CombatForm:set('BlurredAxe') elseif Shield_weapons:contains(player.equipment.sub) then state.CombatForm:set('BlurredSword') else state.CombatForm:reset() end end function job_self_command(cmdParams, eventArgs) command = cmdParams[1]:lower() if command=='mainweapon' then enable('main','sub') mainswap=1 send_command('gs c cycle mainweapon') end end function job_update(cmdParams, eventArgs) update_combat_form() end -- Called by the 'update' self-command, for common needs. -- Set eventArgs.handled to true if we don't want automatic equipping of gear. function job_update(cmdParams, eventArgs) update_combat_form() end -- eventArgs is the same one used in job_precast, in case information needs to be persisted. moonshade_WS = S{"Resolution", "Upheaval", "Savage Blade", "Ukkos Fury", "Ground Strike", "Scourge", "Steel Cyclone", "Kings Justice", "Mistral Axe", "Cloudsplitter", "Shockwave"} function job_post_precast(spell, action, spellMap, eventArgs) if spell.type == 'Upheaval' then if world.time >= (17*60) or world.time <= (7*60) then equip({ear1="Lugra Earring +1",ear2="Lugra Earring"}) end if moonshade_WS:contains(spell.english) and player.tp<2950 then equip({ear1={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}},}) end if buffactive['Mighty Strikes'] then if sets.precast.WS[spell] then equipSet = sets.precast.WS[spell] equipSet = set_combine(equipSet,sets.MS_WS) equip(equipSet) else equipSet = sets.precast.WS equipSet = set_combine(equipSet,sets.MS_WS) equip(equipSet) end end end end function customize_idle_set(idleSet) if mainswap then mainswap=0 enable('main','sub') equip(sets.mainweapon[state.mainweapon.value]) disable('main','sub') end if player.mpp < 51 then return set_combine(idleSet, sets.latent_refresh) end if state.Buff.Doom or state.Buff.Curse then return set_combine(idleSet, sets.Doom) else return idleSet end end function customize_melee_set(meleeSet) if mainswap then mainswap=0 enable('main','sub') equip(sets.mainweapon[state.mainweapon.value]) disable('main','sub') end if state.Buff.Aftermath then return set_combine(meleeSet, sets.Aftermath) end if state.Buff.Doom then return set_combine(meleeSet, sets.Doom) end if state.Buff.Curse then return set_combine(meleeSet, sets.Curse) else return meleeSet end end -- eventArgs is the same one used in job_midcast, in case information needs to be persisted. -- Select default macro book on initial load or subjob change. function select_default_macro_book() -- Default macro set/book if player.sub_job == 'SAM' then set_macro_page(5, 11) elseif player.sub_job == 'NIN' then set_macro_page(5, 11) elseif player.sub_job == 'RDM' then set_macro_page(5, 11) elseif player.sub_job == 'THF' then set_macro_page(5, 11) else set_macro_page(5, 11) end end Change your job_post_precast() function to this.
Code function job_post_precast(spell, action, spellMap, eventArgs) if spell.type == 'Upheaval' then if world.time >= (17*60) or world.time <= (7*60) then equip({ear1="Lugra Earring +1",ear2="Lugra Earring"}) end if buffactive['Mighty Strikes'] then if sets.precast.WS[spell] then equipSet = sets.precast.WS[spell] equipSet = set_combine(equipSet,sets.MS_WS) equip(equipSet) else equipSet = sets.precast.WS equipSet = set_combine(equipSet,sets.MS_WS) equip(equipSet) end end end if moonshade_WS:contains(spell.english) and player.tp<2950 then equip({ear1={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}},}) end end Only change was moving the 'if moonshade_ws:contains...end' block to just after line 1034. If you look at where you have the conditional that checks to see if the WS is a valid Moonshade WS you will see that your original code will ONLY do the check if you are using Upheaval. Moving it as shown above will check regardless of the WS you are using. I'd like to find a way to automaticaly change offense mode to PDT when Shadows wear off as nin, using mote.
I tried this kind of things : Code function job_buff_change(buff, gain) if buff == "Copy Image" and not gain then send_command('gs c set OffenseMode DT') end end The same code works very well with 'gain' instead of 'not gain' Code function job_buff_change(buff, gain) if buff == "Copy Image (4+)" and gain then send_command('gs c set OffenseMode Normal') end end This code above will always go to offensemode normal when I cast Ustusemi, but not the other way around any ideas? Offline
Posts: 130
Thank you Ayasha, works perfect.
How would I make it to where my PDT set changes to another set when Mana Wall is active? I'm trying to swap hands for the PDT that I lose when I disable back/feet.
Quetzalcoatl.Windowpane
Offline
Quetzalcoatl.Windowpane said: » -- Custom spell mapping. function job_get_spell_map(spell, default_spell_map) if spell.action_type == 'Magic' then if (default_spell_map == 'Cure' or default_spell_map == 'Curaga') and player.status == 'Engaged' then return "CureMelee" elseif default_spell_map == 'Cure' and state.Buff['Afflatus Solace'] then return "CureSolace" elseif default_spell_map == 'BarStatus' then return "BarStatus" elseif (default_spell_map == 'Cure' or default_spell_map == 'Curaga') and (world.day == 'Lightsday' or world.weather_element == 'Light' or buffactive == 'Aurorastorm') then return "CureWithLightWeather" elseif spell.skill == "Enfeebling Magic" then if spell.type == "WhiteMagic" then return "MndEnfeebles" else return "IntEnfeebles" end end end end I think I found my fix by a lot of trial and error troubleshooting, for anyone who is facing a similar issue. The problem seems to lie within this code: Code -- Custom spell mapping. function job_get_spell_map(spell, default_spell_map) if spell.action_type == 'Magic' then if (default_spell_map == 'Cure' or default_spell_map == 'Curaga') and player.status == 'Engaged' then return "CureMelee" elseif default_spell_map == 'Cure' and state.Buff['Afflatus Solace'] then return "CureSolace" elseif default_spell_map == 'BarStatus' then return "BarStatus" elseif (default_spell_map == 'Cure' or default_spell_map == 'Curaga') and (world.day == 'Lightsday' or world.weather_element == 'Light' or buffactive == 'Aurorastorm') then return "CureWithLightWeather" elseif spell.skill == "Enfeebling Magic" then if spell.type == "WhiteMagic" then return "MndEnfeebles" else return "IntEnfeebles" end end end end I tediously scrolled through the Mote-include and other Mote lua's and my custom functions one that I stole from Sammeh, and figured out it was the WHM lua that was the final culprit. So I just added one line to it: Code function job_get_spell_map(spell, default_spell_map) disable_specialgear() I cleaned up the gear-locking portion that was in my original post and moved it to my custom functions lua, and that line calls this from the custom functions lua: Code function disable_specialgear() -- Lock Equipment Here -- if player.equipment.ring1 == "Warp Ring" or player.equipment.ring1 == "Capacity Ring" or player.equipment.ring1 == "Trizek Ring" or player.equipment.ring1 == "Dim. Ring (Dem)" or player.equipment.ring1 == "Dim. Ring (Mea)" or player.equipment.ring1 == "Dim. Ring (Holla)" or player.equipment.ring1 == "Echad Ring" or player.equipment.ring1 == "Emperor Band" or player.equipment.ring1 == "Reraise Ring" or player.equipment.ring1 == "Tavnazian Ring" or player.equipment.ring1 == "Caliber Ring" or player.equipment.ring1 == "Olduum Ring" or player.equipment.ring1 == "Facility Ring" then disable('ring1') else enable('ring1') end if player.equipment.ring2 == "Warp Ring" or player.equipment.ring2 == "Capacity Ring" or player.equipment.ring2 == "Trizek Ring" or player.equipment.ring2 == "Dim. Ring (Dem)" or player.equipment.ring2 == "Dim. Ring (Mea)" or player.equipment.ring2 == "Dim. Ring (Holla)" or player.equipment.ring2 == "Echad Ring" or player.equipment.ring2 == "Emperor Band" or player.equipment.ring2 == "Reraise Ring" or player.equipment.ring2 == "Tavnazian Ring" or player.equipment.ring2 == "Caliber Ring" or player.equipment.ring2 == "Olduum Ring" or player.equipment.ring2 == "Facility Ring" then disable('ring2') else enable('ring2') end if player.equipment.back == "Mecisto. Mantle" or player.equipment.back == "Aptitude Mantle +1" or player.equipment.back == "Aptitude Mantle" then disable('back') else enable('back') end if player.equipment.ear1 == "Terminus Earring" or player.equipment.ear1 == "Liminus Earring" then disable('ear1') else enable('ear1') end if player.equipment.ear2 == "Terminus Earring" or player.equipment.ear2 == "Liminus Earring" then disable('ear2') else enable('ear2') end end Offline
Posts: 1186
In. Similar note is there a way to vary your PDT set on how much haste you have
Does anyone happen to have a primer or tutorial on how to use texts.lua? I want to create a text box that tracks the current value of my arrays, but I'm at a complete loss.
Any help greatly appreciated! Offline
Posts: 1186
I've been wanting to add this to my lua for a while but not sure how to have it detect when it happens
I want my tp set to flip to an amended ".amnesia" (i already have this for when I have amnesia on) set whenever I'm engaged and my TP is greater than 2.9k I'm just not sure how to go about having it detect when my tp becomes >2.9k to make this flip. made it some sort of state if tp >2.9k I assume but I just don't know how to actually implement it. Asura.Neufko said: » I'd like to find a way to automaticaly change offense mode to PDT when Shadows wear off as nin, using mote. I tried this kind of things : Code function job_buff_change(buff, gain) if buff == "Copy Image" and not gain then send_command('gs c set OffenseMode DT') end end ... This code above will always go to offensemode normal when I cast Ustusemi, but not the other way around any ideas? try using buff:contains("Copy Image") or buff:startswith("Copy Image") --the latter is probably better also i think you can use state.OffenseMode:set('DT') instead of send_command('gs c set OffenseMode DT') to keep it in gearswap Ragnarok.Martel
Offline
The buff name varies depending on how many shadows you have up. buff == "Copy Image" and not gain is only true when you have only a single shadow up then lose it. Which would be fine except like mentioned above, you could lose multiple shadow at once, which would mean that you lost a different buff than "Copy Image"
A bit from the resources. Code [66] = {id=66,en="Copy Image",ja="分身",enl="Copy Image",jal="分身"}, [444] = {id=444,en="Copy Image (2)",ja="分身(2)",enl="Copy Image (2)",jal="分身(2)"}, [445] = {id=445,en="Copy Image (3)",ja="分身(3)",enl="Copy Image (3)",jal="分身(3)"}, [446] = {id=446,en="Copy Image (4+)",ja="分身(4+)",enl="Copy Image (4+)",jal="分身(4+)"}, That being said, that code should still be a valid solution. EDIT: Thinking about this more... Using buff:startswith("Copy Image") and so on would make this trigger when going from 4 shadows to 3, etc. cause you're losing copy image (4+), and gaining copy image (3). You'd need checks to make sure you lost a copy image buff, but didn't gain any. Or maybe just make it so that gaining any copy image cancels the change to DT. Feels messy though as you'd be changing back and forth with every shadow lost. Offline
Posts: 78
https://pastebin.com/4xPhN2KR
Need some help on my warrior lua. Currently I have two problems: 1. When I swap jobs, my mainweapon list doesn't reload. I know why it's not doing that, since it's binds_on_load, but I want it to bind on subjob change too, is there a way of doing this? Currently, if I //gs reload after changing job, the function works properly and loads the correct mainweapon list. I just don't know how to make the bindings reload on subjob change, need help with that. 2. When I reload gs, or log in, whichever loads my war lua, --Rest's bindings won't actually equip the correct weapon. It'll show the message "Main weapon is now Ragnarok" for example, but it won't actually equip Ragnarok. If I cycle through my mainweapon list with f11 however, every bind works correctly. If I press windows + 1 after pressing f11 once, it'll both show the message and equip the weapon correctly. No idea on how to fix this. Thanks for helping out in advance, really appreciate it. Trying to make this lua as smooth as possible. For BLU
I'm new to gearswap so I mostly just paste my gear in the appropriate slot and hope the template works; it might seem messy. https://pastebin.com/Baz02xBa I'm having an issue where, when I'm engaged, this lua doesn't swap gear associated with magical/physical blue magic spells unless I manually change the casting mode (it'll only read from the generic 'Blue Magic' midcast set lines when in 'Normal' casting mode). But when I'm not engaged, it does change gear automatically based on the physical/magical blue spell sets that I have defined. It has something to do with the casting modes I think, but I just want it to automatically change gear based on the type of blu spell (physical/magical) I use. Offline
Posts: 42
Anyone seeing this I am getting it only for COR at this point..
GearSwap/Equip_processing.lua:246: attempt to Index Field Sorry if it has been posted. I already answered it in the windwer thread.
Resources (and other things) need to be fixed. You can't use any gear created since July if you want to use GS aka: no hepatizon saparas and no relic+2/3 Offline
Posts: 42
Ok, any idea on when this can be fixed and thanks for the quick response.
No idea, just as soon as a windower dev wakes up and reads this/that
Cair is usually pretty good about it, but being a holiday, might take a bit So, my DRG Gearswap just randomly stopped working. I was looking through it, and I think i may have accidentally just typed a random something somewhere. I get a nil value line 246 error which is an empty line after my last gear related swap (breaths) and before the rules in the last section. The Error comes up just after i swap jobs before i do any actions and keeps coming. Any ideas?
My bad, I didnt read anything else as my assumption was it was something I did and not a global issue.
I had an Exalted Staff equipped - have we gone backwards? It was working. NiroAL said: » Does anyone happen to have a primer or tutorial on how to use texts.lua? I want to create a text box that tracks the current value of my arrays, but I'm at a complete loss. Any help greatly appreciated! you can look at my gearswap skillup tool if you like https://github.com/smd111/Gearswap-Skillup i would also say look at my gearswap but it very complicated to where i never have to adjust any code when i add/remove any thing to/from it Organizer seem to be broken as of this morning anyone else having any issues?
Everything should be corrected now, if you update windower
Official explaination is on windowers github tl;dr they had an oops, caused old files to go live on my BLU I have a list of spells that are defined as diffusion spells (including mighty guard and harden shell) MG works and the midcast equips my boots but harden shell does not
Code sets.Diffusion = {feet="Luhlaza Charuqs +1"} Code -- Diffusion -- BlueMagic_Diffusion = S{ 'Amplification','Cocoon','Exuviation','Feather Barrier','Harden*','Memento Mori','Metallic Body', 'Mighty Guard','Plasma Charge','Reactor Cool','Refueling','Saline Coat','Warm-Up','Zephyr Mantle'} -- Unbridled -- BlueMagic_Unbridled = S{ 'Absolute Terror','Bilgestorm','Blistering Roar','Bloodrake','Carcharian Verve', 'Droning Whirlwind','Gates of Hades','Harden*','Mighty Guard','Pyric Bulwark', 'Thunderbolt','Tourbillion'} Code elseif BlueMagic_Diffusion:contains(spell.english) and buffactive.Diffusion then equipSet = set_combine(equipSet,sets.Diffusion) Asura.Toralin said: » on my BLU I have a list of spells that are defined as diffusion spells (including mighty guard and harden shell) MG works and the midcast equips my boots but harden shell does not I don't believe :contains will parse * as a wildcard like most your xml files do, but I do think there's a helper function for it in the strings library. I'd just spell out Harden Shell. Asura.Toralin said: » -- Diffusion -- BlueMagic_Diffusion = S{ 'Amplification','Cocoon','Exuviation','Feather Barrier','Harden*','Memento Mori','Metallic Body', 'Mighty Guard','Plasma Charge','Reactor Cool','Refueling','Saline Coat','Warm-Up','Zephyr Mantle'} -- Unbridled -- BlueMagic_Unbridled = S{ 'Absolute Terror','Bilgestorm','Blistering Roar','Bloodrake','Carcharian Verve', 'Droning Whirlwind','Gates of Hades','Harden*','Mighty Guard','Pyric Bulwark', 'Thunderbolt','Tourbillion'} Bismarck.Dunigs said: » Asura.Toralin said: » on my BLU I have a list of spells that are defined as diffusion spells (including mighty guard and harden shell) MG works and the midcast equips my boots but harden shell does not I don't believe :contains will parse * as a wildcard like most your xml files do, but I do think there's a helper function for it in the strings library. I'd just spell out Harden Shell. -lua uses regEx along with such like string.gmatch however sence i have these alredy built these lists ill give you my full lists for them Code -- Diffusion -- BlueMagic_Diffusion = S{"Metallic Body","Cocoon","Refueling","Feather Barrier","Memento Mori","Zephyr Mantle","Warm-Up","Amplification", "Triumphant Roar","Saline Coat","Reactor Cool","Exuviation","Plasma Charge","Regeneration","Battery Charge","Animating Wail","Magic Barrier", "Fantod","Occultation","Mighty Guard"} -- Unbridled -- BlueMagic_Unbridled = S{"Harden Shell","Thunderbolt","Absolute Terror","Gates of Hades","Tourbillion","Pyric Bulwark","Bilgestorm","Bloodrake","Droning Whirlwind", "Carcharian Verve","Blistering Roar","Mighty Guard","Cruel Joke","Cesspool","Tearing Gust"} Offline
Posts: 78
Rainemard said: » https://pastebin.com/93GbgPSg Could someone help me out? I've been struggling with getting sets.midcast.Stoneskin and sets.midcast.Refresh to work; I can load them using //gs equip sets.midcast.Stoneskin, but if I actually cast stoneskin, it equips my sets.midcast['Enhancing Magic'] set. I tried switching the order around to no avail, I've used set_combine in stoneskin to combine the sets.midcast['Enhancing Magic'] with the Stoneskin potency items and I've tried adding Stoneskin to the list of spells in GearSwap/libs/Mote-Mappings.lua. The one thing that has made it work so far is blatantly deleting the sets.midcast['Enhancing Magic'], which I don't want to do obviously since it'd affect my other enhancing spells. I figured it must be a priority problem of some sorts, but I don't know how to fix this. Also, I've added all enspells in GearSwap/libs/Mote-Mappings.lua under the group 'Enspell', one by one. Does this mean I can use them as sets.midcast.Enspell in my RDM lua? Thanks in advance for helping out! :) Can anyone help me on this? I've been trying out stuff but I can't find a fix. If you do know a fix, I'd love it if you could explain why it works as well, trying to get better at gs. :) |
||
All FFXI content and images © 2002-2024 SQUARE ENIX CO., LTD. FINAL
FANTASY is a registered trademark of Square Enix Co., Ltd.
|