Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function get_sets()
- -------------------------------------------
- -- aftercast for returning to TP and Idle sets
- -- the 'self command' area will change the set defined as aftercast.TP
- -------------------------------------------
- sets.aftercast = {}
- sets.engaged = {}
- sets.precast = {}
- sets.midcast = {}
- sets.obi = {
- Fire = {waist="Karin Obi"},
- Earth = {waist="Dorin Obi"},
- Water = {waist="Suirin Obi"},
- Wind = {waist="Furin Obi"},
- Ice = {waist="Hyorin Obi"},
- Lightning = {waist="Rairin Obi"},
- Light = {waist="Korin Obi"},
- Dark = {waist="Anrin Obi"},
- }
- sets.aftercast.Idle = {
- main="Bolelabunga",
- sub="Genbu's Shield",
- ammo="Mana Ampulla",
- head="Nahtirah Hat",
- neck="Twilight Torque",
- lear="Graiai Earring",
- rear="Gifted Earring",
- body="Artsieq Jubbah",
- hands="Otomi Gloves",
- -- hands="Serpentes Cuffs",
- lring="Dark Ring",
- rring="Defending Ring",
- back="Pahtli Cape",
- waist="Slipor Sash",
- legs="Nares Trews",
- feet="Gende. Galoshes"}
- sets.aftercast.Resting = set_combine(sets.aftercast.Idle, {
- main="Boonwell Staff",
- ammo="Mana Ampulla",
- rear="Relaxing Earring",
- hands="Nares Cuffs",
- waist="Austerity Belt",
- legs="Nisse Slacks"})
- -------------------------------------------
- -- The outermost table has to be named "sets", but
- -- otherwise there are no restrictions.
- -------------------------------------------
- sets.engaged.TPnormal = {
- main="Bolelabunga",
- ammo="Flame Sachet",
- head="Theo. Cap +1",
- neck="Asperity Necklace",
- lear="Bladeborn Earring",
- rear="Steelflash Earring",
- body="Artsieq Jubbah",
- hands="Otomi Gloves",
- lring="K'ayres Ring",
- rring="Rajas Ring",
- back="Potentia Cape",
- waist="Ninurta's Sash",
- legs="Rubeus Spats",
- feet="Gende. Galoshes"} --6+3+3+6+3+3=24 haste
- sets.engaged.TPacc = set_combine(sets.engaged.TPnormal, {
- lring="Patricius Ring",
- rring="Mars's Ring"}) --6+3+3+5+4+3=24 haste
- sets.aftercast.TP = sets.engaged.TPnormal
- -------------------------------------------
- -- WS sets
- -- So it's easy to determine if new obtained gear can replace anything, listed str/mnd/int stats per piece
- -------------------------------------------
- sets.precast.WSStr = {
- ammo="Flame Sachet", --2/0/0
- head="Sukeroku Hachi.", --25/20/20
- neck="Asperity Necklace",
- lear="Bladeborn Earring",
- rear="Steelflash Earring",
- body="Theo. Briault", --21/29/29
- hands="Theo. Mitts +1", --11/38/19
- lring="K'ayres Ring",
- rring="Rajas Ring", --5/0/0
- back="Potentia Cape", --6/0/6
- waist="Goading Belt",
- legs="Theo. Pant. +1", --25/24/34
- feet="Theo. Duckbills +1"} --10/24/22
- sets.precast.WSStrMnd = set_combine(sets.precast.WSStr, {
- ammo="Mana Ampulla", --0/0/4
- neck="Mizu. Kubikazari", --0/4/4
- lring="Diamond Ring" }) --0/4/4
- sets.precast.WSStrInt = set_combine(sets.precast.WSStr, {
- neck="Mizu. Kubikazari", --0/4/4
- lring="Sprial Ring", --5/0/5
- waist="Wanion Belt"}) --8/(5)/8
- -------------------------------------------
- -- Fastcast sets:
- -------------------------------------------
- sets.precast.Fastcast = {
- ammo="Incantor Stone",
- head="Nahtirah Hat",
- neck="Orison Locket",
- lear="Loquacious Earring",
- rear="Gifted Earring",
- body="Artsieq Jubbah",
- hands="Gendewitha Gages",
- lring="Dark Ring",
- rring="Defending Ring",
- back="Shadow Mantle",
- waist="Goading Belt",
- legs="Artsieq Hose",
- feet="Theo. Duckbills +1"}
- sets.precast.HasteEnhancing = set_combine(sets.precast.Fastcast, {
- waist="Siegel Sash"})
- sets.precast.HasteStoneskin = set_combine(sets.precast.HasteEnhancing, {
- head="Umuthi Hat",
- hands="Carapacho Cuffs"})
- sets.precast.HasteHealing = set_combine(sets.precast.Fastcast, {
- main="Tamaxchi",
- sub="Genbu's Shield",
- head="Theo. Cap +1",
- body="Heka's Kalasiris",
- back="Pahtli Cape",
- legs="Orsn. Pantaln. +2",
- feet="Cure Clogs"})
- sets.precast.HasteElemental = set_combine(sets.precast.Fastcast, {
- main="Boonwell Staff",
- sub="Zuuxowu Grip",
- neck="Stoicheion Medal"})
- -------------------------------------------
- -- Spell (midcast) sets:
- -------------------------------------------
- sets.midcast['Elemental Magic'] = {
- main="Boonwell Staff",
- sub="Zuuxowu Grip",
- ammo="Dosis Tathlum",
- head="Buremte Hat",
- neck="Mizu. Kubikazari",
- lear="Friomisi Earring",
- rear="Crematio Earring",
- body="Artsieq Jubbah",
- hands="Otomi Gloves",
- lring="Strendu Ring",
- rring="Acumen Ring",
- back="Toro Cape",
- waist="Sekhmet Corset",
- legs="Gendewitha Spats",
- feet="Gende. Galoshes"}
- sets.midcast.Impact = set_combine(sets.midcast['Elemental Magic'], {
- body="Twilight Cloak"})
- sets.midcast.Stone = set_combine(sets.midcast['Elemental Magic'], {
- neck="Quanpur Necklace"})
- sets.midcast['Dark Magic'] = set_combine(sets.midcast['Elemental Magic'], {
- legs="Portent Pants"})
- sets.midcast['Enfeebling Magic'] = {
- sub="Zuuxowu Grip",
- ammo="Ombre Tathlum +1",
- head="Buremte Hat",
- neck="Stoicheion Medal",
- lear="Loquacious Earring",
- rear="Gifted Earring",
- body="Theo. Briault",
- hands="Rubeus Gloves",
- lring="Dark Ring",
- rring="Strendu Ring",
- back="Mending Cape",
- waist="Yamabuki-no-Obi",
- legs="Portent Pants",
- feet="Theo. Duckbills +1"}
- sets.midcast['Enhancing Magic'] = {
- main="Bolelabunga",
- sub="Genbu's Shield",
- ammo="Impatiens",
- head="Umuthi Hat",
- neck="Twilight Torque",
- lear="Loquacious Earring",
- rear="Gifted Earring",
- body="Artsieq Jubbah",
- hands="Dynasty Mitts",
- lring="Sirona's Ring",
- rring="Defending Ring",
- back="Mending Cape",
- waist="Siegel Sash",
- legs="Portent Pants",
- feet="Theo. Duckbills +1"}
- sets.midcast.Stoneskin = set_combine(sets.midcast['Enhancing Magic'], {
- neck="Stone Gorget",
- waist="Siegel Sash",
- legs="Haven Hose"})
- sets.midcast['Healing Magic'] = {
- -- Commented stats are potency/skill/mnd (ignoring vitality)
- main="Tamaxchi", --22/0/5
- sub="Genbu's Shield", --4/0/0
- ammo="Impatiens",
- head="Theo. Cap +1", --10/0/27
- neck="Phalaina Locket", --4/0/3
- lear="Loquacious Earring",
- rear="Gifted Earring",
- body="Orison Bliaud +2", --0/20/0
- hands="Theo. Mitts +1", --0/17/38
- lring="Sirona's Ring", --0/10/3
- rring="Ephedra Ring", --0/7/0
- back="Mending Cape", --5/3/0
- waist="Korin Obi", --0/0/0
- legs="Orsn. Pantaln. +2", --0/0/7 do not remove, has 'converts cure to mp trait'
- feet="Rubeus Boots"} --0/10/0
- sets.midcast.CureSingle = set_combine(sets.midcast['Healing Magic'], {
- -- For single target cure spells, which has a power formula that values healing skill > mnd > vit
- hands="Bokwus Gloves"}) --13/0/13
- sets.midcast.CureAOE = set_combine(sets.midcast['Healing Magic'], {
- -- For single target cure spells, which has a power formula that values mnd > vit > healing skill
- body="Theo. Bliaud", --7/0/29
- legs="Theo. Pant. +1", --0/0/34
- feet="Theo. Duckbills +1"}) --0/0/24
- sets.midcast.ProtectShell = set_combine(sets.midcast['Enhancing Magic'], {
- lring="Sheltered Ring"})
- sets.midcast.Cursna = set_combine(sets.precast.Fastcast, {
- lring="Sirona's Ring",
- rring="Ephedra Ring",
- back="Mending Cape",
- legs="Theo. Pant. +1",
- feet="Gende. Galoshes"})
- sets.midcast['Divine Magic'] = set_combine(sets.midcast['Healing Magic'], {
- legs="Theo. Pant. +1"})
- -------------------------------------------
- -- Job Ability sets
- -------------------------------------------
- sets.precast.Benediction = {}
- sets.precast["Afflatus Solace"] = {feet="Orison Bliaud +2"}
- sets.precast.Martyr = {}
- sets.precast.Devotion = {}
- sets.precast["Divine Caress"] = {hands="Orison Mitts +2",back="Mending Cape"}
- send_command('input /macro book 7')
- end
- function precast(spell,action)
- if player.equipment.head == 'Reraise Hairpin' then disable('head')
- else enable('head') end
- if player.equipment.left_ear == 'Reraise Earring' then disable('ear1')
- else enable('ear1') end
- if spell.action_type == 'Magic' or spell.type == 'Ninjutsu' then
- if spell.skill == 'Elemental Magic' then
- if spell.cast_time < 9 then
- if spell.english:startswith('Stone') then
- equip(sets.midcast.Stone,{head="Buremte Hat"})
- else equip(sets.midcast.ElementalLow)
- end
- elseif spell.name == 'Impact' then
- equip(sets.precast.HasteElemental,{body="Twilight Cloak"})
- else equip(sets.precast.HasteElemental)
- end
- elseif spell.skill == 'Enhancing Magic' then
- if spell.name == 'Stoneskin' then
- equip(sets.precast.HasteStoneskin)
- else equip(sets.precast.HasteEnhancing)
- end
- elseif spell.skill == 'Healing Magic' then
- if spell.english:startswith('Cur') then
- if spell.name == 'Cursna' then
- equip(sets.midcast.Cursna)
- elseif spell.cast_time < 9 then
- equip(sets.midcast.CureSingle)
- else equip(sets.precast.HasteHealing)
- end
- else equip(sets.precast.HasteHealing)
- end
- else equip(sets.precast.Fastcast)
- end
- elseif spell.type == 'WeaponSkill' then
- if spell.english == 'Brainshaker' or 'Skullbreaker' or 'True Strike' or 'Heavy Swing' or 'Shell Crusher' then
- equip(sets.precast.WSStr)
- elseif spell.english == 'Shining Strike' or 'Seraph Strike' or 'Judgement' or 'Hexa Strike' or 'Black Halo' or 'Flash Nova' or 'Starburst' or 'Sunburst' or 'Retribution' then
- equip(sets.precast.WSStrMnd)
- elseif spell.english == 'Rock Crusher' or 'Earth Crusher' or 'Spirit Taker' or 'Vidohunir' or 'Cataclysm' then
- equip(sets.precast.WSStrInt)
- else equip(sets.precast.WSStr)
- end
- elseif sets.precast[spell.english] then
- equip(sets.precast[spell.english])
- end
- end
- function midcast(spell,action)
- if spell.action_type == 'Magic' then
- if spell.skill == 'Elemental Magic' then
- if spell.cast_time < 9 then
- if spell.english:startswith('Stone') then
- equip(sets.midcast.Stone,{head="Buremte Hat"})
- else equip(sets.midcast.ElementalLow)
- end
- elseif spell.english:startswith('Stone') then
- equip(sets.midcast.Stone)
- elseif spell.english == 'Impact' then
- equip(sets.midcast.Impact)
- else equip(sets.midcast['Elemental Magic'])
- end
- -- if spell.cast_time > 9 then
- if spell.element == world.weather_element or spell.element == world.day_element then
- equip(sets.obi[spell.element])
- end
- -- end
- elseif spell.skill == 'Enhancing Magic' then
- if spell.english:startswith('Protect') or spell.english:startswith('Shell') then
- equip(sets.midcast.ProtectShell)
- elseif spell.name == 'Stoneskin' then
- equip(sets.midcast.Stoneskin)
- else equip(sets.midcast['Enhancing Magic'])
- end
- elseif spell.skill == 'Healing Magic' then
- if spell.english:startswith('Curaga') then
- equip(sets.midcast.CureAOE)
- elseif spell.english:startswith('Cure') then
- equip(sets.midcast.CureSingle)
- elseif sets.midcast[spell.english] then
- equip(sets.midcast[spell.english])
- else equip(sets.midcast[spell.skill])
- end
- elseif sets.midcast[spell.skill] then
- equip(sets.midcast[spell.skill])
- else equip(sets.precast.Fastcast)
- end
- end
- end
- function aftercast(spell)
- if player.status == 'Engaged' then
- equip(sets.aftercast.TP)
- else
- equip(sets.aftercast.Idle)
- end
- end
- function status_change(new,old)
- if T{'Idle','Resting'}:contains(new) then
- equip(sets.aftercast.Idle)
- elseif new == 'Engaged' then
- equip(sets.aftercast.TP)
- end
- end
- function self_command(command)
- if command == 'toggle TP set' then
- if sets.aftercast.TP == sets.engaged.TPnormal then
- sets.aftercast.TP = sets.engaged.TPacc
- send_command('@input /echo ACC SET')
- elseif sets.aftercast.TP == sets.engaged.TPacc then
- sets.aftercast.TP = sets.engaged.TPnormal
- send_command('@input /echo NORMAL SET')
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement