FANDOM


This is what I use on my RNG.

Go back to my Gearswap page.

--[[ *************************************************************
 Wren's RNG gearswap .lua for SuperNova FFXI
 Save as windower/addons/GearSwap/data/RNG.lua
 
  2016-11-05 OC  - First version.
************************************************************* --]]
 
 --[[ ******************************************************
  Gearsets - define the various sets of gear we'll wear.
****************************************************** --]]
 
 function get_sets()
 
     sets.fashion = {
        main        = "Vulcan's Staff",
        sub         = "Axe Grip",
        range       = "Yoichinoyumi",
        ammo        = "Demon Arrow",
        head        = empty,
        body        = "Kyudogi +1",
        hands       = "Htr. Bracers +1",
        legs        = "Htr. Braccae +1",
        feet        = "Htr. Socks +1"
    }
 
     -- idle set is worn when we're standing around doing
    -- nothing.
     sets.idle = {
        main        = "Vulcan's Staff",
        sub         = "Axe Grip",
        range       = "Yoichinoyumi",
        ammo        = "Demon Arrow",
        head        = "Zha'Go's Barbut",
        neck        = "Hope Torque",
        left_ear    = "Brutal Earring",
        right_ear   = "Vision Earring",
        body        = "Kyudogi +1",
        hands       = "Blood Fng. Gnt.",
        left_ring   = "Behemoth Ring +1",
        right_ring  = "Behemoth Ring +1",
        back        = "Amemet Mantle +1",
        waist       = "Scout's Belt",
        legs        = "Blood Cuisses",
        feet        = "Strider Boots"
    }
 
     -- ranged attacks
    sets.ranged = {
        legs        = "Sct. Braccae +1",
        feet        = "Sct. Socks +1"
    }
     
     -- namas arrow
    sets.ws = {
         neck        = "Light Gorget", -- snow, aqua, light
        left_ear    = "Tmph. Earring +1",
        right_ear   = "Tmph. Earring +1",
        body        = "Kirin's Osode",
        left_ring   = "Rajas Ring",
        right_ring  = "Flame Ring",
        legs        = "Hachiryu Haidate",
        feet        = "Sct. Socks +1"
    }
     
 end
 
 function precast(spell)
     if spell.name == "Ranged" then
        rangedSet = sets.ranged
        if world.time >= (18*60) or world.time <= (6*60) then
            rangedSet = set_combine(rangedSet,{left_ear="L.bug Earring +1"})
        end
         if barrage then
            rangedSet = set_combine(rangedSet,{hands = "Htr. Bracers +1"})
            barrage = false
        end
         equip(rangedSet)
    elseif spell.type == 'WeaponSkill' then
        if world.time >= (18*60) or world.time <= (6*60) then
            equip(sets.ws,{left_ear="L.bug Earring +1"})
        else
             equip(sets.ws)
        end
     elseif spell.name == "Scavenge" then
        equip({feet = "Htr. Socks +1"})
    elseif spell.name == "Sharpshot" then
        equip({legs = "Htr. Braccae +1"})
    elseif spell.name == "Shadowbind" then
        equip({hands = "Htr. Bracers +1"})
    elseif spell.name == "Barrage" then
        barrage = true
    end
 end
 
 function midcast(spell)
 end
 
 function aftercast(spell)
     equip(sets.idle)
end

-- self_command function for WAR is used to toggle weapon skills,
-- and conditionally use abilities from our /sam subjob.
function self_command(m)
    -- toggle weapon skills
    if m == "W+" then
        if ws == "Namas Arrow" then
            ws = "Sidewinder"
        else
             ws = "Namas Arrow"
        end
         windower.add_to_chat(8,'[Current WS: ' .. ws .. ']')
        
     -- use seigan, then third eye, then hasso
    elseif m == "STH" and player.sub_job == "SAM" then
        local seigan  = windower.ffxi.get_ability_recasts()[139] or 0
        local hasso   = windower.ffxi.get_ability_recasts()[138] or 0
        local third   = windower.ffxi.get_ability_recasts()[133] or 0
        if third == 0 then
            if (seigan == 0) and (not buffactive.Seigan) and ((hasso == 0) or (not buffactive.Hasso)) then
                send_command('input /ja Seigan <me>;wait 1.2;input /ja "Third Eye" <me>;wait 1.2;input /ja Hasso <me>')
            else
                send_command('input /ja "Third Eye" <me>')
            end
         end
         
     -- use seigan, then third eye.
    elseif m == "ST" and player.sub_job == "SAM" then
        local seigan  = windower.ffxi.get_ability_recasts()[139] or 0
        local third   = windower.ffxi.get_ability_recasts()[133] or 0
        if seigan == 0 and third == 0 then
            send_command('input /ja Seigan <me>;wait 1.2;input /ja "Third Eye" <me>')
        elseif seigan == 0 then
            send_command('input /ja "Seigan" <me>')
        elseif third == 0 then
            send_command('input /ja "Third Eye" <me>')
        end
         
     -- use our weapon skill of choice.  if meditate recast is down, use it afterward.
    elseif m == "WS" then
        if player.sub_job == "SAM" then
            local meditate  = windower.ffxi.get_ability_recasts()[134] or 0
            local wsString = ""
            if meditate == 0 then
                wsString = 'input /ws "' .. ws .. '" <t>;wait 3.2;input /ja Meditate <me>'
            else
                wsString = 'input /ws "' .. ws .. '" <t>'
            end
             send_command(wsString)
        else
             send_command('input /ws "' .. ws .. '" <t>')
        end
     end
 end
 
 ws = "Namas Arrow"
 barrage = false
 
 -- Finally, puts on our fashion set, lockstyle it, then switch to our idle set.
 send_command('wait 1;gs equip fashion;wait 1;input /lockstyle on;wait 1;gs equip idle')

Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.