Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -------------------------------------------------------------------------------------------------------------------
- -- Last Revised: May 28th, 2015 (Removed Hibernation Earring rule from idle set,
- -- The typo in Somersault has been corrected by SE - updated Ready move list,
- -- Added a 'PetOnly' Mode - 'Windows Key'+F8 cycles Pet Modes.
- -- Pet status changes will update idle and engaged pet gear.
- -- And added a new rule for equipping TP Bonus Hands for TP-based moves.)
- --
- -- alt+F8 cycles through designated Jug Pets
- -- ctrl+F8 toggles Monster Correlation between Neutral and Favorable
- -- 'Windows Key'+F8 switches between Pet stances for Master/Pet hybrid gearsets
- -- alt+= cycles through Pet Food types
- -- ctrl+= can swap in the usage of Chaac Belt for Treasure Hunter on common subjob abilities.
- -- ctrl+F11 cycles between Magical Defense Modes
- --
- -- General Gearswap Commands:
- -- F9 cycles Accuracy modes
- -- ctrl+F9 cycles Hybrid modes
- -- 'Windows Key'+F9 cycles Weapon Skill modes
- -- F10 equips Physical Defense
- -- alt+F10 toggles Kiting on or off
- -- ctrl+F10 cycles Physical Defense modes
- -- F11 equips Magical Defense
- -- alt+F12 turns off Defense modes
- -- ctrl+F12 cycles Idle modes
- --
- -- Keep in mind that any time you Change Jobs/Subjobs, your Pet/Pet Food/etc. reset to default options.
- -- F12 will list your current options.
- -------------------------------------------------------------------------------------------------------------------
- -------------------------------------------------------------------------------------------------------------------
- -- Initialization function that defines sets and variables to be used.
- -------------------------------------------------------------------------------------------------------------------
- -- IMPORTANT: Make sure to also get the Mote-Include.lua file (and its supplementary files) to go with this.
- -- Initialization function for this job file.
- function get_sets()
- mote_include_version = 2
- -- Load and initialize the include file.
- include('Mote-Include.lua')
- end
- function job_setup()
- state.Buff['Killer Instinct'] = buffactive['Killer Instinct'] or false
- state.Buff.Doomed = buffactive.doomed or false
- get_combat_form()
- end
- function user_setup()
- state.OffenseMode:options('Normal', 'LowAccHaste', 'MedAcc', 'MedAccHaste', 'HighAcc', 'HighAccHaste')
- state.HybridMode:options('Normal', 'Hybrid')
- state.WeaponskillMode:options('Normal', 'WSMedAcc', 'WSHighAcc')
- state.CastingMode:options('Normal')
- state.IdleMode:options('Normal', 'Refresh', 'Reraise')
- state.RestingMode:options('Normal')
- state.PhysicalDefenseMode:options('PDT', 'PetPDT', 'Reraise', 'Killer')
- state.MagicalDefenseMode:options('MDT', 'MDTShell', 'MKiller')
- -- 'Out of Range' distance; WS will auto-cancel
- target_distance = 6
- -- Set up Jug Pet cycling and keybind Alt+F8
- -- INPUT PREFERRED JUG PETS HERE
- state.JugMode = M{['description']='Jug Mode', 'BlackbeardRandy', 'WarlikePatrick', 'ThreestarLynn',
- 'SwoopingZhivago'}
- send_command('bind !f8 gs c cycle JugMode')
- -- Set up Monster Correlation Modes and keybind Ctrl+F8
- state.CorrelationMode = M{['description']='Correlation Mode', 'Neutral', 'Favorable'}
- send_command('bind ^f8 gs c cycle CorrelationMode')
- -- Set up Pet Modes for Hybrid sets and keybind 'Windows Key'+F8
- state.PetMode = M{['description']='Pet Mode', 'Normal', 'PetOnly', 'PetStance', 'PetTank'}
- send_command('bind @f8 gs c cycle PetMode')
- -- Keybind Ctrl+F11 to cycle Magical Defense Modes
- send_command('bind ^f11 gs c cycle MagicalDefenseMode')
- -- Set up Reward Modes and keybind alt+=
- state.RewardMode = M{['description']='Reward Mode', 'Theta', 'Zeta', 'Eta'}
- send_command('bind != gs c cycle RewardMode')
- -- Set up Treasure Modes and keybind Ctrl+=
- state.TreasureMode = M{['description']='Treasure Mode', 'Tag', 'Normal'}
- send_command('bind ^= gs c cycle TreasureMode')
- -- Complete list of Ready moves to use with Sic & Ready Recast -5 Desultor Tassets.
- ready_moves_to_check = S{'Sic','Whirl Claws','Dust Cloud','Foot Kick','Sheep Song','Sheep Charge','Lamb Chop',
- 'Rage','Head Butt','Scream','Dream Flower','Wild Oats','Leaf Dagger','Claw Cyclone','Razor Fang',
- 'Roar','Gloeosuccus','Palsy Pollen','Soporific','Cursed Sphere','Venom','Geist Wall','Toxic Spit',
- 'Numbing Noise','Nimble Snap','Cyclotail','Spoil','Rhino Guard','Rhino Attack','Power Attack',
- 'Hi-Freq Field','Sandpit','Sandblast','Venom Spray','Mandibular Bite','Metallic Body','Bubble Shower',
- 'Bubble Curtain','Scissor Guard','Big Scissors','Grapple','Spinning Top','Double Claw','Filamented Hold',
- 'Frog Kick','Queasyshroom','Silence Gas','Numbshroom','Spore','Dark Spore','Shakeshroom','Blockhead',
- 'Secretion','Fireball','Tail Blow','Plague Breath','Brain Crush','Infrasonics','??? Needles',
- 'Needleshot','Chaotic Eye','Blaster','Scythe Tail','Ripper Fang','Chomp Rush','Intimidate','Recoil Dive',
- 'Water Wall','Snow Cloud','Wild Carrot','Sudden Lunge','Spiral Spin','Noisome Powder','Wing Slap',
- 'Beak Lunge','Suction','Drainkiss','Acid Mist','TP Drainkiss','Back Heel','Jettatura','Choke Breath',
- 'Fantod','Charged Whisker','Purulent Ooze','Corrosive Ooze','Tortoise Stomp','Harden Shell','Aqua Breath',
- 'Sensilla Blades','Tegmina Buffet','Molting Plumage','Swooping Frenzy','Pentapeck','Sweeping Gouge',
- 'Zealous Snort','Somersault','Tickling Tendrils','Stink Bomb','Nectarous Deluge','Nepenthic Plunge',
- 'Pecking Flurry','Pestilent Plume','Foul Waters','Spider Web','Sickle Slash'}
- tp_based_ready_moves = S{'Sic','Somersault','Dust Cloud','Foot Kick','Sheep Song','Sheep Charge','Lamb Chop',
- 'Rage','Head Butt','Scream','Dream Flower','Wild Oats','Leaf Dagger','Claw Cyclone','Razor Fang','Roar',
- 'Gloeosuccus','Palsy Pollen','Soporific','Cursed Sphere','Geist Wall','Numbing Noise','Frogkick',
- 'Nimble Snap','Cyclotail','Spoil','Rhino Guard','Rhino Attack','Hi-Freq Field','Sandpit','Sandblast',
- 'Mandibular Bite','Metallic Body','Bubble Shower','Bubble Curtain','Scissor Guard','Grapple','Spinning Top',
- 'Double Claw','Filamented Hold','Spore','Blockhead','Secretion','Fireball','Tail Blow','Plague Breath',
- 'Brain Crush','Infrasonics','Needleshot','Chaotic Eye','Blaster','Ripper Fang','Intimidate','Recoil Dive',
- 'Water Wall','Snow Cloud','Wild Carrot','Sudden Lunge','Noisome Powder','Wing Slap','Beak Lunge','Suction',
- 'Drainkiss','Acid Mist','TP Drainkiss','Back Heel','Jettatura','Choke Breath','Fantod','Charged Whisker',
- 'Purulent Ooze','Corrosive Ooze','Tortoise Stomp','Harden Shell','Aqua Breath','Sensilla Blades',
- 'Tegmina Buffet','Sweeping Gouge','Zealous Snort','Tickling Tendrils','Pecking Flurry',
- 'Pestilent Plume','Foul Waters','Spider Web'}
- -- List of Magic-based Ready moves to use with Pet MAB or Pet M.Acc gearset.
- magic_ready_moves = S{'Dust Cloud','Sheep Song','Scream','Dream Flower','Roar','Gloeosuccus','Palsy Pollen',
- 'Soporific','Cursed Sphere','Venom','Geist Wall','Toxic Spit','Numbing Noise','Spoil','Hi-Freq Field',
- 'Sandpit','Sandblast','Venom Spray','Bubble Shower','Filamented Hold','Queasyshroom','Silence Gas',
- 'Numbshroom','Spore','Dark Spore','Shakeshroom','Fireball','Plague Breath','Infrasonics','Chaotic Eye',
- 'Blaster','Intimidate','Snow Cloud','Noisome Powder','TP Drainkiss','Jettatura','Charged Whisker',
- 'Purulent Ooze','Corrosive Ooze','Aqua Breath','Molting Plumage','Stink Bomb','Nectarous Deluge',
- 'Nepenthic Plunge','Pestilent Plume','Foul Waters','Spider Web'}
- -- List of abilities to reference for applying Treasure Hunter +1 via Chaac Belt.
- abilities_to_check = S{'Feral Howl','Quickstep','Box Step','Stutter Step','Desperate Flourish','Violent Flourish',
- 'Animated Flourish','Provoke','Dia','Dia II','Flash','Bio','Bio II','Sleep','Sleep II',
- 'Drain','Aspir','Dispel','Steal','Mug'}
- end
- function file_unload()
- if binds_on_unload then
- binds_on_unload()
- end
- -- Unbinds the Jug Pet, Reward, Correlation, Treasure, PetMode, MDEF Mode hotkeys.
- send_command('unbind !=')
- send_command('unbind ^=')
- send_command('unbind !f8')
- send_command('unbind ^f8')
- send_command('unbind @f8')
- send_command('unbind ^f11')
- end
- -- BST gearsets
- function init_gear_sets()
- -- PRECAST SETS
- sets.precast.JA['Killer Instinct'] = {head="Ankusa Helm +1"}
- sets.precast.JA['Bestial Loyalty'] = {hands="Ankusa Gloves +1"}
- sets.precast.JA['Call Beast'] = sets.precast.JA['Bestial Loyalty']
- sets.precast.JA.Familiar = {legs="Ankusa Trousers +1"}
- sets.precast.JA.Tame = {head="Totemic Helm +1",ear1="Tamer's Earring",legs="Stout Kecks"}
- sets.precast.JA.Spur = {feet="Ferine Ocreae +2"}
- sets.precast.JA['Feral Howl'] = {ammo="Plumose Sachet",
- head="Seiokona Beret",neck="Voltsurge Torque",ear1="Gwati Earring",ear2="Enchanter Earring +1",
- body="Ankusa Jackcoat +1",hands="Sombra Mittens +1",ring1="Perception Ring",ring2="Sangoma Ring",
- back="Aput Mantle +1",waist="Salire Belt",legs="Iuitl Tights +1",feet="Scamp's Sollerets"}
- sets.precast.JA.Reward = {
- head="Stout Bonnet",neck="Aife's Medal",ear1="Lifestorm Earring",ear2="Neptune's Pearl",
- body="Totemic Jackcoat +1",hands="Totemic Gloves +1",ring1="Leviathan's Ring +1",ring2="Leviathan's Ring +1",
- back="Pastoralist's Mantle",waist="Salire Belt",legs="Ankusa Trousers +1",feet="Ankusa Gaiters +1"}
- sets.precast.JA.Reward.Theta = set_combine(sets.precast.JA.Reward, {ammo="Pet Food Theta"})
- sets.precast.JA.Reward.Zeta = set_combine(sets.precast.JA.Reward, {ammo="Pet Food Zeta"})
- sets.precast.JA.Reward.Eta = set_combine(sets.precast.JA.Reward, {ammo="Pet Food Eta"})
- sets.precast.JA.Charm = {ammo="Tsar's Egg",
- head="Totemic Helm +1",neck="Unmoving Collar +1",ear1="Enchanter's Earring",ear2="Enchanter Earring +1",
- body="Ankusa Jackcoat +1",hands="Ankusa Gloves +1",ring1="Carbuncle's Ring +1",ring2="Carbuncle's Ring +1",
- back="Aisance Mantle +1",waist="Aristo Belt",legs="Ankusa Trousers +1",feet="Ankusa Gaiters +1"}
- -- CURING WALTZ
- sets.precast.Waltz = {ammo="Sonia's Plectrum",
- head="Ighwa Cap",neck="Unmoving Collar +1",ear1="Handler's Earring",ear2="Handler's Earring +1",
- body="Gorney Haubert +1",hands="Umuthi Gloves",ring1="Valseur's Ring",ring2="Asklepian Ring",
- back="Iximulew Cape",waist="Aristo Belt",legs="Osmium Cuisses",feet="Scamp's Sollerets"}
- -- HEALING WALTZ
- sets.precast.Waltz['Healing Waltz'] = {}
- -- STEPS
- sets.precast.Step = {ammo="Hasty Pinion +1",
- head="Gavialis Helm",neck="Ej Necklace +1",ear1="Zennaroi Earring",ear2="Heartseeker Earring",
- body="Mes'yohi Haubergeon",hands="Buremte Gloves",ring1="Ramuh's Ring +1",ring2="Ramuh's Ring +1",
- back="Grounded Mantle +1",waist="Olseni Belt",legs="Sombra Tights +1",feet="Ostro Greaves"}
- -- VIOLENT FLOURISH
- sets.precast.Flourish1 = {}
- sets.precast.Flourish1['Violent Flourish'] = {ammo="Plumose Sachet",
- head="Seiokona Beret",neck="Voltsurge Torque",ear1="Gwati Earring",ear2="Enchanter Earring +1",
- body="Ankusa Jackcoat +1",hands="Sombra Mittens +1",ring1="Perception Ring",ring2="Sangoma Ring",
- back="Aput Mantle +1",waist="Salire Belt",legs="Iuitl Tights +1",feet="Scamp's Sollerets"}
- sets.precast.FC = {ammo="Impatiens",neck="Orunmila's Torque",ear1="Loquacious Earring",
- ear2="Enchanter Earring +1",hands="Sombra Mittens +1",ring1="Prolix Ring"}
- sets.precast.FC.Utsusemi = set_combine(sets.precast.FC, {neck="Magoraga Beads"})
- -- MIDCAST SETS
- sets.midcast.FastRecast = {
- head="Iuitl Headgear +1",neck="Orunmila's Torque",ear1="Loquacious Earring",ear2="Enchanter Earring +1",
- body="Ankusa Jackcoat +1",hands="Sombra Mittens +1",ring1="Prolix Ring",ring2="Defending Ring",
- back="Mollusca Mantle",waist="Hurch'lan Sash",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"}
- sets.midcast.Utsusemi = sets.midcast.FastRecast
- sets.midcast.Cure = {ammo="Quartz Tathlum +1",
- head="Ighwa Cap",neck="Phalaina Locket",ear1="Lifestorm Earring",ear2="Neptune's Pearl",
- body="Savas Jawshan",hands="Buremte Gloves",ring1="Leviathan's Ring +1",ring2="Asklepian Ring",
- back="Pastoralist's Mantle",waist="Chuq'aba Belt",legs="Osmium Cuisses",feet="Whirlpool Greaves"}
- sets.midcast.Curaga = sets.midcast.Cure
- sets.midcast.Stoneskin = {ammo="Quartz Tathlum +1",
- head="Totemic Helm +1",neck="Stone Gorget",ear1="Earthcry Earring",ear2="Lifestorm Earring",
- body="Totemic Jackcoat +1",hands="Stone Mufflers",ring1="Leviathan's Ring +1",ring2="Leviathan's Ring +1",
- back="Pastoralist's Mantle",waist="Salire Belt",legs="Haven Hose",feet="Whirlpool Greaves"}
- sets.midcast.Cursna = set_combine(sets.midcast.FastRecast, {neck="Debilis Medallion",
- ring1="Eshmun's Ring",ring2="Haoma's Ring"})
- sets.midcast.Protect = {ring2="Sheltered Ring"}
- sets.midcast.Protectra = sets.midcast.Protect
- sets.midcast.Shell = {ring2="Sheltered Ring"}
- sets.midcast.Shellra = sets.midcast.Shell
- sets.midcast['Enfeebling Magic'] = {ammo="Plumose Sachet",
- head="Seiokona Beret",neck="Voltsurge Torque",ear1="Gwati Earring",ear2="Enchanter Earring +1",
- body="Ankusa Jackcoat +1",hands="Sombra Mittens +1",ring1="Perception Ring",ring2="Sangoma Ring",
- back="Aput Mantle +1",waist="Salire Belt",legs="Iuitl Tights +1",feet="Scamp's Sollerets"}
- sets.midcast['Elemental Magic'] = sets.midcast['Enfeebling Magic']
- -- WEAPONSKILLS
- -- Default weaponskill sets.
- sets.precast.WS = {ammo="Cheruski Needle",
- head="Otomi Helm",neck="Asperity Necklace",ear1="Kokou's Earring",ear2="Brutal Earring",
- body="Sombra Harness +1",hands="Boor Bracelets",ring1="Ifrit's Ring +1",ring2="Epona's Ring",
- back="Buquwik Cape",waist="Windbuffet Belt +1",legs="Zoar Subligar +1",feet="Gigantes Boots +1"}
- sets.precast.WS.WSMedAcc = {ammo="Ginsen",
- head="Yaoyotl Helm",neck="Ej Necklace +1",ear1="Steelflash Earring",ear2="Bladeborn Earring",
- body="Mes'yohi Haubergeon",hands="Buremte Gloves",ring1="Ifrit's Ring +1",ring2="Ramuh's Ring +1",
- back="Letalis Mantle",waist="Anguinus Belt",legs="Zoar Subligar +1",feet="Ejekamal Boots"}
- sets.precast.WS.WSHighAcc = {ammo="Ginsen",
- head="Yaoyotl Helm",neck="Ej Necklace +1",ear1="Steelflash Earring",ear2="Bladeborn Earring",
- body="Mes'yohi Haubergeon",hands="Buremte Gloves",ring1="Mars's Ring",ring2="Ramuh's Ring +1",
- back="Letalis Mantle",waist="Olseni Belt",legs="Mikinaak Cuisses",feet="Ejekamal Boots"}
- -- Specific weaponskill sets.
- sets.precast.WS['Ruinator'] = set_combine(sets.precast.WS, {neck="Breeze Gorget",waist="Breeze Belt"})
- sets.precast.WS['Ruinator'].Mekira = set_combine(sets.precast.WS['Ruinator'], {head="Gavialis Helm"})
- sets.precast.WS['Ruinator'].WSMedAcc = set_combine(sets.precast.WS.WSMedAcc, {neck="Breeze Gorget",waist="Breeze Belt"})
- sets.precast.WS['Ruinator'].WSHighAcc = set_combine(sets.precast.WS.WSHighAcc, {neck="Breeze Gorget",waist="Breeze Belt"})
- sets.precast.WS['Onslaught'] = set_combine(sets.precast.WS, {ammo="Floestone",
- neck="Justiciar's Torque",ear1="Tati Earring +1",ear2="Brutal Earring",
- body="Mes'yohi Haubergeon",hands="Nomkahpa Mittens +1",ring1="Ramuh Ring +1",
- back="Vespid Mantle",legs="Mikinaak Cuisses",feet="Vanir Boots"})
- sets.precast.WS['Onslaught'].WSMedAcc = set_combine(sets.precast.WSMedAcc, {hands="Buremte Gloves",ring1="Ramuh Ring +1"})
- sets.precast.WS['Onslaught'].WSHighAcc = set_combine(sets.precast.WSHighAcc, {hands="Buremte Gloves"})
- sets.precast.WS['Primal Rend'] = {ammo="Erlene's Notebook",
- head="Highwing Helm",neck="Stoicheion Medal",ear1="Crematio Earring",ear2="Friomisi Earring",
- body="Sombra Harness +1",hands="Nilas Gloves",ring1="Acumen Ring",ring2="Fenrir Ring +1",
- back="Argochampsa Mantle",waist="Salire Belt",legs="Augury Cuisses +1",feet="Sombra Leggings +1"}
- sets.precast.WS['Cloudsplitter'] = set_combine(sets.precast.WS['Primal Rend'], {waist="Thunder Belt"})
- -- PET SIC & READY MOVES
- sets.midcast.Pet.WS = {ammo="Demonry Core",
- neck="Ferine Necklace",ear1="Sabong Earring",ear2="Domesticator's Earring",
- body="Mirke Wardecors",hands="Regimen Mittens",ring1="Thurandaut Ring",ring2="Angel's Ring",
- back="Pastoralist's Mantle",waist="Hurch'lan Sash",legs="Totemic Trousers +1",feet="Totemic Gaiters +1"}
- sets.midcast.Pet.MagicReady = set_combine(sets.midcast.Pet.WS, {
- ear1="Diamond Earring",ear2="Diamond Earring",
- hands="Regimen Mittens",
- back="Argochampsa Mantle"})
- sets.midcast.Pet.HighAcc = set_combine(sets.midcast.Pet.WS, {head="Totemic Helm +1",hands="Regimen Mittens",legs="Wisent Kecks"})
- sets.midcast.Pet.ReadyRecast = {legs="Desultor Tassets"}
- sets.midcast.Pet.Neutral = {head="Totemic Helm +1"}
- sets.midcast.Pet.Favorable = {head="Nukumi Cabasset +1"}
- sets.midcast.Pet.TPBonus = {hands="Nukumi Manoplas +1"}
- -- PET-ONLY SETS THAT SWAP WEAPONS FOR READY AND IDLE
- sets.midcast.Pet.ReadyRecastNE = {sub="Charmer's Merlin",legs="Desultor Tassets"}
- sets.midcast.Pet.ReadyNE = set_combine(sets.midcast.Pet.WS, {main="Kumbhakarna",sub="Kumbhakarna"})
- sets.midcast.Pet.ReadyNE.MedAcc = set_combine(sets.midcast.Pet.WS, {main="Kerehcatl",sub="Kumbhakarna"})
- sets.midcast.Pet.ReadyNE.HighAcc = set_combine(sets.midcast.Pet.WS, {main="Kerehcatl",sub="Hunahpu"})
- sets.midcast.Pet.MagicReadyNE = set_combine(sets.midcast.Pet.MagicReady, {main="Kumbhakarna",sub="Kumbhakarna"})
- sets.IdleAxesNE = {main ="Izizoeksi",sub="Astolfo"}
- -- RESTING
- sets.resting = {}
- -- IDLE SETS
- sets.ExtraRegen = {waist="Muscle Belt +1"}
- sets.idle = {ammo="Demonry Core",
- head="Twilight Helm",neck="Wiglen Gorget",ear1="Dawn Earring",ear2="Infused Earring",
- body="Kumarbi's Akar",hands="Iuitl Wristbands +1",ring1="Paguroidea Ring",ring2="Sheltered Ring",
- back="Repulse Mantle",waist="Lycopodium Sash",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"}
- sets.idle.Refresh = set_combine(sets.idle, {head="Wivre Hairpin",body="Twilight Mail",hands="Ogier's Gauntlets",
- legs="Stearc Subligar",feet="Ogier's Leggings"})
- sets.idle.Reraise = set_combine(sets.idle, {head="Twilight Helm",body="Twilight Mail"})
- sets.idle.Pet = set_combine(sets.idle, {ammo="Demonry Core",
- head="Twilight Helm",neck="Wiglen Gorget",ear1="Dawn Earring",ear2="Infused Earring",
- body="Kirin's Osode",hands="Ankusa Gloves +1",ring1="Paguroidea Ring",ring2="Sheltered Ring",
- back="Oneiros Cappa",waist="Isa Belt",legs="Ferine Quijotes +2",feet="Armada Sollerets"})
- sets.idle.Pet.Engaged = {ammo="Demonry Core",
- head="Anwig Salade",neck="Ferine Necklace",ear1="Rimeice Earring",ear2="Domesticator's Earring",
- body="Ankusa Jackcoat +1",hands="Regimen Mittens",ring1="Dark Ring",ring2="Defending Ring",
- back="Ferine Mantle",waist="Hurch'lan Sash",legs="Wisent Kecks",feet="Armada Sollerets"}
- -- DEFENSE SETS
- sets.defense.PDT = {head="Ighwa Cap",neck="Twilight Torque",
- body="Emet Harness +1",hands="Iuitl Wristbands +1",ring1="Dark Ring",ring2="Defending Ring",
- back="Repulse Mantle",waist="Flume Belt +1",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"}
- sets.defense.PetPDT = {ammo="Demonry Core",
- head="Anwig Salade",neck="Shepherd's Chain",ear1="Handler's Earring",ear2="Handler's Earring +1",
- body="Ankusa Jackcoat +1",hands="Ankusa Gloves +1",ring1="Dark Ring",ring2="Defending Ring",
- back="Oneiros Cappa",waist="Isa Belt",legs="Ferine Quijotes +2",feet="Ankusa Gaiters +1"}
- sets.defense.Killer = set_combine(sets.defense.PDT, {body="Ferine Gausape +2"})
- sets.defense.Reraise = set_combine(sets.defense.PDT, {head="Twilight Helm",body="Twilight Mail"})
- sets.defense.MDT = set_combine(sets.defense.PDT, {ammo="Vanir Battery",
- head="Iuitl Headgear +1",ear1="Merman's Earring",ear2="Sanare Earring",
- body="Savas Jawshan",
- back="Engulfer's Cape +1",waist="Nierenschutz"})
- sets.defense.MDTShell = set_combine(sets.defense.MDT, {neck="Inquisitor Bead Necklace",ear1="Flashward Earring",
- body="Iuitl Vest +1",ring1="Shadow Ring",
- back="Engulfer Cape +1",waist="Resolute Belt",legs="Sombra Tights +1",feet="Durgai Leggings"})
- sets.defense.MKiller = set_combine(sets.defense.MDT, {body="Ferine Gausape +2"})
- sets.Kiting = {feet="Skadi's Jambeaux +1"}
- -- MELEE (SINGLE-WIELD) SETS
- sets.engaged = {ammo="Ginsen",
- head="Otomi Helm",neck="Asperity Necklace",ear1="Steelflash Earring",ear2="Bladeborn Earring",
- body="Sombra Harness +1",hands="Xaddi Gauntlets",ring1="Rajas Ring",ring2="Epona's Ring",
- back="Atheling Mantle",waist="Windbuffet Belt +1",legs="Xaddi Cuisses",feet="Ejekamal Boots"}
- sets.engaged.LowAccHaste = {ammo="Ginsen",
- head="Otomi Helm",neck="Asperity Necklace",ear1="Steelflash Earring",ear2="Bladeborn Earring",
- body="Sombra Harness +1",hands="Xaddi Gauntlets",ring1="Rajas Ring",ring2="Epona's Ring",
- back="Atheling Mantle",waist="Windbuffet Belt +1",legs="Xaddi Cuisses",feet="Ejekamal Boots"}
- sets.engaged.MedAcc = {ammo="Paeapua",
- head="Yaoyotl Helm",neck="Ej Necklace +1",ear1="Steelflash Earring",ear2="Bladeborn Earring",
- body="Sombra Harness +1",hands="Buremte Gloves",ring1="Rajas Ring",ring2="Epona's Ring",
- back="Letalis Mantle",waist="Hurch'lan Sash",legs="Xaddi Cuisses",feet="Ejekamal Boots"}
- sets.engaged.MedAccHaste = {ammo="Paeapua",
- head="Yaoyotl Helm",neck="Ej Necklace +1",ear1="Steelflash Earring",ear2="Bladeborn Earring",
- body="Sombra Harness +1",hands="Buremte Gloves",ring1="Rajas Ring",ring2="Epona's Ring",
- back="Letalis Mantle",waist="Hurch'lan Sash",legs="Xaddi Cuisses",feet="Ejekamal Boots"}
- sets.engaged.HighAcc = {ammo="Jukukik Feather",
- head="Yaoyotl Helm",neck="Ej Necklace +1",ear1="Steelflash Earring",ear2="Bladeborn Earring",
- body="Mes'yohi Haubergeon",hands="Buremte Gloves",ring1="Mars's Ring",ring2="Ramuh's Ring +1",
- back="Grounded Mantle +1",waist="Olseni Belt",legs="Xaddi Cuisses",feet="Ejekamal Boots"}
- sets.engaged.HighAccHaste = {ammo="Jukukik Feather",
- head="Yaoyotl Helm",neck="Ej Necklace +1",ear1="Steelflash Earring",ear2="Bladeborn Earring",
- body="Mes'yohi Haubergeon",hands="Buremte Gloves",ring1="Mars's Ring",ring2="Ramuh's Ring +1",
- back="Grounded Mantle +1",waist="Olseni Belt",legs="Xaddi Cuisses",feet="Ejekamal Boots"}
- -- MELEE (SINGLE-WIELD) HYBRID SETS
- sets.engaged.Hybrid = set_combine(sets.engaged, {head="Iuitl Headgear +1",body="Iuitl Vest +1",
- back="Mollusca Mantle",hands="Iuitl Wristbands +1",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"})
- sets.engaged.LowAccHaste.Hybrid = set_combine(sets.engaged.LowAccHaste, {head="Iuitl Headgear +1",body="Iuitl Vest +1",
- back="Mollusca Mantle",hands="Iuitl Wristbands +1",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"})
- sets.engaged.MedAcc.Hybrid = set_combine(sets.engaged.MedAcc, {head="Iuitl Headgear +1",
- body="Iuitl Vest +1",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"})
- sets.engaged.MedAccHaste.Hybrid = set_combine(sets.engaged.MedAccHaste, {head="Iuitl Headgear +1",
- body="Iuitl Vest +1",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"})
- sets.engaged.HighAcc.Hybrid = set_combine(sets.engaged.HighAcc, {legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"})
- sets.engaged.HighAccHaste.Hybrid = set_combine(sets.engaged.HighAccHaste, {legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"})
- -- MELEE (DUAL-WIELD) SETS FOR DNC AND NIN SUBJOB
- sets.engaged.DW = {ammo="Ginsen",
- head="Otomi Helm",neck="Asperity Necklace",ear1="Dudgeon Earring",ear2="Heartseeker Earring",
- body="Skadi's Cuirie +1",hands="Nomkahpa Mittens +1",ring1="Rajas Ring",ring2="Epona's Ring",
- back="Vellaunus' Mantle +1",waist="Patentia Sash",legs="Sombra Tights +1",feet="Ejekamal Boots"}
- sets.engaged.DW.LowAccHaste = {ammo="Ginsen",
- head="Otomi Helm",neck="Asperity Necklace",ear1="Suppanomimi",ear2="Brutal Earring",
- body="Skadi's Cuirie +1",hands="Nomkahpa Mittens +1",ring1="Rajas Ring",ring2="Epona's Ring",
- back="Bleating Mantle",waist="Windbuffet Belt +1",legs="Xaddi Cuisses",feet="Xaddi Boots"}
- sets.engaged.DW.MedAcc = {ammo="Ginsen",
- head="Yaoyotl Helm",neck="Ej Necklace +1",ear1="Heartseeker Earring",ear2="Dudgeon Earring",
- body="Mes'yohi Haubergeon",hands="Buremte Gloves",ring1="Mars's Ring",ring2="Epona's Ring",
- back="Letalis Mantle",waist="Hurch'lan Sash",legs="Sombra Tights +1",feet="Ejekamal Boots"}
- sets.engaged.DW.MedAccHaste = {ammo="Ginsen",
- head="Yaoyotl Helm",neck="Ej Necklace +1",ear1="Suppanomimi",ear2="Brutal Earring",
- body="Mes'yohi Haubergeon",hands="Buremte Gloves",ring1="Mars's Ring",ring2="Epona's Ring",
- back="Letalis Mantle",waist="Hurch'lan Sash",legs="Xaddi Cuisses",feet="Xaddi Boots"}
- sets.engaged.DW.HighAcc = {ammo="Ginsen",
- head="Yaoyotl Helm",neck="Ej Necklace +1",ear1="Heartseeker Earring",ear2="Dudgeon Earring",
- body="Mes'yohi Haubergeon",hands="Buremte Gloves",ring1="Mars's Ring",ring2="Ramuh's Ring +1",
- back="Grounded Mantle +1",waist="Olseni Belt",legs="Sombra Tights +1",feet="Ejekamal Boots"}
- sets.engaged.DW.HighAccHaste = {ammo="Ginsen",
- head="Yaoyotl Helm",neck="Ej Necklace +1",ear1="Heartseeker Earring",ear2="Dudgeon Earring",
- body="Mes'yohi Haubergeon",hands="Buremte Gloves",ring1="Mars's Ring",ring2="Ramuh's Ring +1",
- back="Grounded Mantle +1",waist="Olseni Belt",legs="Sombra Tights +1",feet="Ejekamal Boots"}
- -- MELEE (DUAL-WIELD) HYBRID SETS
- sets.engaged.DW.Hybrid = set_combine(sets.engaged.DW, {head="Iuitl Headgear +1",body="Iuitl Vest +1",
- back="Mollusca Mantle",hands="Iuitl Wristbands +1",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"})
- sets.engaged.DW.LowAccHaste.Hybrid = set_combine(sets.engaged.DW.LowAccHaste, {head="Iuitl Headgear +1",body="Iuitl Vest +1",
- back="Mollusca Mantle",hands="Iuitl Wristbands +1",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"})
- sets.engaged.DW.MedAcc.Hybrid = set_combine(sets.engaged.DW.MedAcc, {head="Iuitl Headgear +1",
- body="Iuitl Vest +1",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"})
- sets.engaged.DW.MedAccHaste.Hybrid = set_combine(sets.engaged.DW.MedAccHaste, {head="Iuitl Headgear +1",
- body="Iuitl Vest +1",legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"})
- sets.engaged.DW.HighAcc.Hybrid = set_combine(sets.engaged.DW.HighAcc, {legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"})
- sets.engaged.DW.HighAccHaste.Hybrid = set_combine(sets.engaged.DW.HighAccHaste, {legs="Iuitl Tights +1",feet="Iuitl Gaiters +1"})
- -- GEARSETS FOR MASTER ENGAGED (SINGLE-WIELD) & PET ENGAGED
- sets.engaged.PetStance = set_combine(sets.engaged,
- {head="Anwig Salade",
- body="Ankusa Jackcoat +1",hands="Regimen Mittens",
- waist="Hurch'lan Sash",legs="Wisent Kecks",feet="Armada Sollerets"})
- sets.engaged.PetStance.LowAccHaste = set_combine(sets.engaged.LowAccHaste,
- {head="Anwig Salade",
- body="Ankusa Jackcoat +1",hands="Regimen Mittens",
- waist="Hurch'lan Sash",legs="Wisent Kecks",feet="Armada Sollerets"})
- sets.engaged.PetStance.MedAcc = set_combine(sets.engaged.MedAcc,
- {head="Ankusa Helm +1",
- hands="Regimen Mittens",
- waist="Hurch'lan Sash"})
- sets.engaged.PetStance.MedAccHaste = set_combine(sets.engaged.MedAccHaste,
- {head="Ankusa Helm +1",
- hands="Regimen Mittens",
- waist="Hurch'lan Sash"})
- sets.engaged.PetStance.HighAcc = set_combine(sets.engaged.HighAcc,
- {hands="Regimen Mittens",
- waist="Hurch'lan Sash"})
- sets.engaged.PetStance.HighAccHaste = set_combine(sets.engaged.HighAccHaste,
- {hands="Regimen Mittens",
- waist="Hurch'lan Sash"})
- -- GEARSETS FOR MASTER ENGAGED (SINGLE-WIELD) & PET TANKING
- sets.engaged.PetTank = set_combine(sets.engaged,
- {head="Anwig Salade",neck="Shepherd's Chain",ear1="Handler's Earring",ear2="Handler's Earring +1",
- body="Ankusa Jackcoat +1",hands="Ankusa Gloves +1",
- back="Oneiros Cappa",waist="Isa Belt",legs="Ferine Quijotes +2",feet="Ankusa Gaiters +1"})
- sets.engaged.PetTank.LowAccHaste = set_combine(sets.engaged.LowAccHaste,
- {head="Anwig Salade",neck="Shepherd's Chain",ear1="Handler's Earring",ear2="Handler's Earring +1",
- body="Ankusa Jackcoat +1",hands="Ankusa Gloves +1",
- back="Oneiros Cappa",waist="Isa Belt",legs="Ferine Quijotes +2",feet="Ankusa Gaiters +1"})
- sets.engaged.PetTank.MedAcc = set_combine(sets.engaged.MedAcc,
- {head="Anwig Salade",
- hands="Ankusa Gloves +1",
- back="Oneiros Cappa",legs="Ferine Quijotes +2"})
- sets.engaged.PetTank.MedAccHaste = set_combine(sets.engaged.MedAccHaste,
- {head="Anwig Salade",
- hands="Ankusa Gloves +1",
- back="Oneiros Cappa",legs="Ferine Quijotes +2"})
- sets.engaged.PetTank.HighAcc = set_combine(sets.engaged.HighAcc,
- {head="Anwig Salade",
- hands="Regimen Mittens"})
- sets.engaged.PetTank.HighAccHaste = set_combine(sets.engaged.HighAccHaste,
- {head="Anwig Salade",
- hands="Regimen Mittens"})
- -- GEARSETS FOR MASTER ENGAGED (DUAL-WIELD) & PET ENGAGED
- sets.engaged.DW.PetStance = set_combine(sets.engaged.DW,
- {head="Anwig Salade",
- body="Ankusa Jackcoat +1",hands="Regimen Mittens",
- waist="Hurch'lan Sash",legs="Wisent Kecks",feet="Armada Sollerets"})
- sets.engaged.DW.PetStance.LowAccHaste = set_combine(sets.engaged.DW.LowAccHaste,
- {head="Anwig Salade",
- body="Ankusa Jackcoat +1",hands="Regimen Mittens",
- waist="Hurch'lan Sash",legs="Wisent Kecks",feet="Armada Sollerets"})
- sets.engaged.DW.PetStance.MedAcc = set_combine(sets.engaged.DW.MedAcc,
- {head="Ankusa Helm +1",
- hands="Regimen Mittens",
- waist="Hurch'lan Sash"})
- sets.engaged.DW.PetStance.MedAccHaste = set_combine(sets.engaged.DW.MedAccHaste,
- {head="Ankusa Helm +1",
- hands="Regimen Mittens",
- waist="Hurch'lan Sash"})
- sets.engaged.DW.PetStance.HighAcc = set_combine(sets.engaged.DW.HighAcc,
- {hands="Regimen Mittens",
- waist="Hurch'lan Sash"})
- sets.engaged.DW.PetStance.HighAccHaste = set_combine(sets.engaged.DW.HighAccHaste,
- {hands="Regimen Mittens",
- waist="Hurch'lan Sash"})
- -- GEARSETS FOR MASTER ENGAGED (DUAL-WIELD) & PET TANKING
- sets.engaged.DW.PetTank = set_combine(sets.engaged.DW,
- {head="Anwig Salade",neck="Shepherd's Chain",ear1="Handler's Earring",ear2="Handler's Earring +1",
- body="Ankusa Jackcoat +1",hands="Ankusa Gloves +1",
- back="Oneiros Cappa",waist="Isa Belt",legs="Ferine Quijotes +2",feet="Ankusa Gaiters +1"})
- sets.engaged.DW.PetTank.LowAccHaste = set_combine(sets.engaged.DW.LowAccHaste,
- {head="Anwig Salade",neck="Shepherd's Chain",ear1="Handler's Earring",ear2="Handler's Earring +1",
- body="Ankusa Jackcoat +1",hands="Ankusa Gloves +1",
- back="Oneiros Cappa",waist="Isa Belt",legs="Ferine Quijotes +2",feet="Ankusa Gaiters +1"})
- sets.engaged.DW.PetTank.MedAcc = set_combine(sets.engaged.DW.MedAcc,
- {head="Anwig Salade",
- hands="Ankusa Gloves +1",
- back="Oneiros Cappa",legs="Ferine Quijotes +2"})
- sets.engaged.DW.PetTank.MedAccHaste = set_combine(sets.engaged.DW.MedAccHaste,
- {head="Anwig Salade",
- hands="Ankusa Gloves +1",
- back="Oneiros Cappa",legs="Ferine Quijotes +2"})
- sets.engaged.DW.PetTank.HighAcc = set_combine(sets.engaged.DW.HighAcc,
- {head="Anwig Salade",
- hands="Regimen Mittens"})
- sets.engaged.DW.PetTank.HighAccHaste = set_combine(sets.engaged.DW.HighAccHaste,
- {head="Anwig Salade",
- hands="Regimen Mittens"})
- sets.buff['Killer Instinct'] = {body="Ferine Gausape +2"}
- sets.buff.Doomed = {ring1="Eshmun's Ring"}
- sets.THBelt = {waist="Chaac Belt"}
- -------------------------------------------------------------------------------------------------------------------
- -- Complete Lvl 76-99 Jug Pet Precast List +Funguar +Courier +Amigo
- -------------------------------------------------------------------------------------------------------------------
- sets.precast.JA['Bestial Loyalty'].FunguarFamiliar = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Seedbed Soil"})
- sets.precast.JA['Bestial Loyalty'].CourierCarrie = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Fish Oil Broth"})
- sets.precast.JA['Bestial Loyalty'].AmigoSabotender = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Sun Water"})
- sets.precast.JA['Bestial Loyalty'].NurseryNazuna = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="D. Herbal Broth"})
- sets.precast.JA['Bestial Loyalty'].CraftyClyvonne = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Cng. Brain Broth"})
- sets.precast.JA['Bestial Loyalty'].PrestoJulio = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="C. Grass. Broth"})
- sets.precast.JA['Bestial Loyalty'].SwiftSieghard = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Mlw. Bird Broth"})
- sets.precast.JA['Bestial Loyalty'].MailbusterCetas = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Gob. Bug Broth"})
- sets.precast.JA['Bestial Loyalty'].AudaciousAnna = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="B. Carrion Broth"})
- sets.precast.JA['Bestial Loyalty'].TurbidToloi = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Auroral Broth"})
- sets.precast.JA['Bestial Loyalty'].LuckyLulush = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="L. Carrot Broth"})
- sets.precast.JA['Bestial Loyalty'].DipperYuly = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Wool Grease"})
- sets.precast.JA['Bestial Loyalty'].FlowerpotMerle = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Vermihumus"})
- sets.precast.JA['Bestial Loyalty'].DapperMac = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Briny Broth"})
- sets.precast.JA['Bestial Loyalty'].DiscreetLouise = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Deepbed Soil"})
- sets.precast.JA['Bestial Loyalty'].FatsoFargann = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="C. Plasma Broth"})
- sets.precast.JA['Bestial Loyalty'].FaithfulFalcorr = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Lucky Broth"})
- sets.precast.JA['Bestial Loyalty'].BugeyedBroncha = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Svg. Mole Broth"})
- sets.precast.JA['Bestial Loyalty'].BloodclawShasra = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Rzr. Brain Broth"})
- sets.precast.JA['Bestial Loyalty'].GorefangHobs = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="B. Carrion Broth"})
- sets.precast.JA['Bestial Loyalty'].GooeyGerard = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Cl. Wheat Broth"})
- sets.precast.JA['Bestial Loyalty'].CrudeRaphie = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Shadowy Broth"})
- -------------------------------------------------------------------------------------------------------------------
- -- Complete iLvl Jug Pet Precast List
- -------------------------------------------------------------------------------------------------------------------
- sets.precast.JA['Bestial Loyalty'].DroopyDortwin = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Swirling Broth"})
- sets.precast.JA['Bestial Loyalty'].PonderingPeter = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Vis. Broth"})
- sets.precast.JA['Bestial Loyalty'].SunburstMalfik = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Shimmering Broth"})
- sets.precast.JA['Bestial Loyalty'].AgedAngus = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Ferm. Broth"})
- sets.precast.JA['Bestial Loyalty'].WarlikePatrick = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Livid Broth"})
- sets.precast.JA['Bestial Loyalty'].ScissorlegXerin = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Spicy Broth"})
- sets.precast.JA['Bestial Loyalty'].BouncingBertha = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Bubbly Broth"})
- sets.precast.JA['Bestial Loyalty'].RhymingShizuna = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Lyrical Broth"})
- sets.precast.JA['Bestial Loyalty'].AttentiveIbuki = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Salubrious Broth"})
- sets.precast.JA['Bestial Loyalty'].SwoopingZhivago = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Windy Greens"})
- sets.precast.JA['Bestial Loyalty'].AmiableRoche = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Airy Broth"})
- sets.precast.JA['Bestial Loyalty'].HeraldHenry = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Trans. Broth"})
- sets.precast.JA['Bestial Loyalty'].BrainyWaluis = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Crumbly Soil"})
- sets.precast.JA['Bestial Loyalty'].HeadbreakerKen = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Blackwater Broth"})
- sets.precast.JA['Bestial Loyalty'].RedolentCandi = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Electrified Broth"})
- sets.precast.JA['Bestial Loyalty'].AlluringHoney = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Bug-Ridden Broth"})
- sets.precast.JA['Bestial Loyalty'].CaringKiyomaro = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Fizzy Broth"})
- sets.precast.JA['Bestial Loyalty'].VivaciousVickie = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Tant. Broth"})
- sets.precast.JA['Bestial Loyalty'].HurlerPercival = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Pale Sap"})
- sets.precast.JA['Bestial Loyalty'].BlackbeardRandy = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Meaty Broth"})
- sets.precast.JA['Bestial Loyalty'].GenerousArthur = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Dire Broth"})
- sets.precast.JA['Bestial Loyalty'].ThreestarLynn = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Muddy Broth"})
- sets.precast.JA['Bestial Loyalty'].BraveHeroGlenn = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Wispy Broth"})
- sets.precast.JA['Bestial Loyalty'].SharpwitHermes = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Saline Broth"})
- sets.precast.JA['Bestial Loyalty'].ColibriFamiliar = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Sugary Broth"})
- sets.precast.JA['Bestial Loyalty'].ChoralLeera = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Glazed Broth"})
- sets.precast.JA['Bestial Loyalty'].SpiderFamiliar = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Sticky Webbing"})
- sets.precast.JA['Bestial Loyalty'].GussyHachirobe = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Slimy Webbing"})
- sets.precast.JA['Bestial Loyalty'].AcuexFamiliar = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Poisonous Broth"})
- sets.precast.JA['Bestial Loyalty'].FluffyBredo = set_combine(sets.precast.JA['Bestial Loyalty'], {ammo="Venomous Broth"})
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Job-specific hooks that are called to process player actions at specific points in time.
- -------------------------------------------------------------------------------------------------------------------
- function job_precast(spell, action, spellMap, eventArgs)
- cancel_conflicting_buffs(spell, action, spellMap, eventArgs)
- if spell.type == "WeaponSkill" and spell.name ~= 'Mistral Axe' and spell.name ~= 'Bora Axe' and spell.target.distance > target_distance then
- cancel_spell()
- add_to_chat(123, spell.name..' Canceled: [Out of Range]')
- return
- end
- if spell.english == 'Reward' then
- if state.RewardMode.value == 'Theta' then
- equip(sets.precast.JA.Reward.Theta)
- elseif state.RewardMode.value == 'Zeta' then
- equip(sets.precast.JA.Reward.Zeta)
- elseif state.RewardMode.value == 'Eta' then
- equip(sets.precast.JA.Reward.Eta)
- end
- end
- if spell.english == 'Bestial Loyalty' or spell.english == 'Call Beast' then
- if state.JugMode.value == 'FunguarFamiliar' then
- equip(sets.precast.JA['Bestial Loyalty'].FunguarFamiliar)
- elseif state.JugMode.value == 'CourierCarrie' then
- equip(sets.precast.JA['Bestial Loyalty'].CourierCarrie)
- elseif state.JugMode.value == 'AmigoSabotender' then
- equip(sets.precast.JA['Bestial Loyalty'].AmigoSabotender)
- elseif state.JugMode.value == 'NurseryNazuna' then
- equip(sets.precast.JA['Bestial Loyalty'].NurseryNazuna)
- elseif state.JugMode.value == 'CraftyClyvonne' then
- equip(sets.precast.JA['Bestial Loyalty'].CraftyClyvonne)
- elseif state.JugMode.value == 'PrestoJulio' then
- equip(sets.precast.JA['Bestial Loyalty'].PrestoJulio)
- elseif state.JugMode.value == 'SwiftSieghard' then
- equip(sets.precast.JA['Bestial Loyalty'].SwiftSieghard)
- elseif state.JugMode.value == 'MailbusterCetas' then
- equip(sets.precast.JA['Bestial Loyalty'].MailbusterCetas)
- elseif state.JugMode.value == 'AudaciousAnna' then
- equip(sets.precast.JA['Bestial Loyalty'].AudaciousAnna)
- elseif state.JugMode.value == 'TurbidToloi' then
- equip(sets.precast.JA['Bestial Loyalty'].TurbidToloi)
- elseif state.JugMode.value == 'SlipperySilas' then
- equip(sets.precast.JA['Bestial Loyalty'].SlipperySilas)
- elseif state.JugMode.value == 'LuckyLulush' then
- equip(sets.precast.JA['Bestial Loyalty'].LuckyLulush)
- elseif state.JugMode.value == 'DipperYuly' then
- equip(sets.precast.JA['Bestial Loyalty'].DipperYuly)
- elseif state.JugMode.value == 'FlowerpotMerle' then
- equip(sets.precast.JA['Bestial Loyalty'].FlowerpotMerle)
- elseif state.JugMode.value == 'DapperMac' then
- equip(sets.precast.JA['Bestial Loyalty'].DapperMac)
- elseif state.JugMode.value == 'DiscreetLouise' then
- equip(sets.precast.JA['Bestial Loyalty'].DiscreetLouise)
- elseif state.JugMode.value == 'FatsoFargann' then
- equip(sets.precast.JA['Bestial Loyalty'].FatsoFargann)
- elseif state.JugMode.value == 'FaithfulFalcorr' then
- equip(sets.precast.JA['Bestial Loyalty'].FaithfulFalcorr)
- elseif state.JugMode.value == 'BugeyedBroncha' then
- equip(sets.precast.JA['Bestial Loyalty'].BugeyedBroncha)
- elseif state.JugMode.value == 'BloodclawShasra' then
- equip(sets.precast.JA['Bestial Loyalty'].BloodclawShasra)
- elseif state.JugMode.value == 'GorefangHobs' then
- equip(sets.precast.JA['Bestial Loyalty'].GorefangHobs)
- elseif state.JugMode.value == 'GooeyGerard' then
- equip(sets.precast.JA['Bestial Loyalty'].GooeyGerard)
- elseif state.JugMode.value == 'CrudeRaphie' then
- equip(sets.precast.JA['Bestial Loyalty'].CrudeRaphie)
- elseif state.JugMode.value == 'DroopyDortwin' then
- equip(sets.precast.JA['Bestial Loyalty'].DroopyDortwin)
- elseif state.JugMode.value == 'PonderingPeter' then
- equip(sets.precast.JA['Bestial Loyalty'].PonderingPeter)
- elseif state.JugMode.value == 'SunburstMalfik' then
- equip(sets.precast.JA['Bestial Loyalty'].SunburstMalfik)
- elseif state.JugMode.value == 'AgedAngus' then
- equip(sets.precast.JA['Bestial Loyalty'].AgedAngus)
- elseif state.JugMode.value == 'WarlikePatrick' then
- equip(sets.precast.JA['Bestial Loyalty'].WarlikePatrick)
- elseif state.JugMode.value == 'ScissorlegXerin' then
- equip(sets.precast.JA['Bestial Loyalty'].ScissorlegXerin)
- elseif state.JugMode.value == 'BouncingBertha' then
- equip(sets.precast.JA['Bestial Loyalty'].BouncingBertha)
- elseif state.JugMode.value == 'RhymingShizuna' then
- equip(sets.precast.JA['Bestial Loyalty'].RhymingShizuna)
- elseif state.JugMode.value == 'AttentiveIbuki' then
- equip(sets.precast.JA['Bestial Loyalty'].AttentiveIbuki)
- elseif state.JugMode.value == 'SwoopingZhivago' then
- equip(sets.precast.JA['Bestial Loyalty'].SwoopingZhivago)
- elseif state.JugMode.value == 'AmiableRoche' then
- equip(sets.precast.JA['Bestial Loyalty'].AmiableRoche)
- elseif state.JugMode.value == 'HeraldHenry' then
- equip(sets.precast.JA['Bestial Loyalty'].HeraldHenry)
- elseif state.JugMode.value == 'BrainyWaluis' then
- equip(sets.precast.JA['Bestial Loyalty'].BrainyWaluis)
- elseif state.JugMode.value == 'HeadbreakerKen' then
- equip(sets.precast.JA['Bestial Loyalty'].HeadbreakerKen)
- elseif state.JugMode.value == 'RedolentCandi' then
- equip(sets.precast.JA['Bestial Loyalty'].RedolentCandi)
- elseif state.JugMode.value == 'AlluringHoney' then
- equip(sets.precast.JA['Bestial Loyalty'].AlluringHoney)
- elseif state.JugMode.value == 'CaringKiyomaro' then
- equip(sets.precast.JA['Bestial Loyalty'].CaringKiyomaro)
- elseif state.JugMode.value == 'VivaciousVickie' then
- equip(sets.precast.JA['Bestial Loyalty'].VivaciousVickie)
- elseif state.JugMode.value == 'HurlerPercival' then
- equip(sets.precast.JA['Bestial Loyalty'].HurlerPercival)
- elseif state.JugMode.value == 'BlackbeardRandy' then
- equip(sets.precast.JA['Bestial Loyalty'].BlackbeardRandy)
- elseif state.JugMode.value == 'GenerousArthur' then
- equip(sets.precast.JA['Bestial Loyalty'].GenerousArthur)
- elseif state.JugMode.value == 'ThreestarLynn' then
- equip(sets.precast.JA['Bestial Loyalty'].ThreestarLynn)
- elseif state.JugMode.value == 'BraveHeroGlenn' then
- equip(sets.precast.JA['Bestial Loyalty'].BraveHeroGlenn)
- elseif state.JugMode.value == 'SharpwitHermes' then
- equip(sets.precast.JA['Bestial Loyalty'].SharpwitHermes)
- elseif state.JugMode.value == 'ColibriFamiliar' then
- equip(sets.precast.JA['Bestial Loyalty'].ColibriFamiliar)
- elseif state.JugMode.value == 'ChoralLeera' then
- equip(sets.precast.JA['Bestial Loyalty'].ChoralLeera)
- elseif state.JugMode.value == 'SpiderFamiliar' then
- equip(sets.precast.JA['Bestial Loyalty'].SpiderFamiliar)
- elseif state.JugMode.value == 'GussyHachirobe' then
- equip(sets.precast.JA['Bestial Loyalty'].GussyHachirobe)
- elseif state.JugMode.value == 'AcuexFamiliar' then
- equip(sets.precast.JA['Bestial Loyalty'].AcuexFamiliar)
- elseif state.JugMode.value == 'FluffyBredo' then
- equip(sets.precast.JA['Bestial Loyalty'].FluffyBredo)
- end
- end
- -- Define class for Sic and Ready moves.
- if ready_moves_to_check:contains(spell.english) then
- classes.CustomClass = "WS"
- if state.PetMode.Value == 'PetOnly' then
- equip(sets.midcast.Pet.ReadyRecastNE)
- else
- equip(sets.midcast.Pet.ReadyRecast)
- end
- end
- end
- function job_post_precast(spell, action, spellMap, eventArgs)
- -- If Killer Instinct is active during WS, equip Ferine Gausape +2.
- if spell.type:lower() == 'weaponskill' and buffactive['Killer Instinct'] then
- equip(sets.buff['Killer Instinct'])
- end
- -- Equip Chaac Belt for TH+1 on common Subjob Abilities or Spells.
- if abilities_to_check:contains(spell.english) and state.TreasureMode.value == 'Tag' then
- equip(sets.THBelt)
- end
- end
- function job_pet_midcast(spell, action, spellMap, eventArgs)
- if state.PetMode.value == 'PetOnly' then
- if state.OffenseMode.value == 'HighAcc' or state.OffenseMode.value == 'HighAccHaste' then
- equip(sets.midcast.Pet.ReadyNE.HighAcc)
- elseif state.OffenseMode.value == 'MedAcc' or state.OffenseMode.value == 'MedAccHaste' then
- equip(sets.midcast.Pet.ReadyNE.MedAcc)
- else
- equip(set_combine(sets.midcast.Pet.ReadyNE, sets.midcast.Pet[state.CorrelationMode.value]))
- end
- else
- if state.OffenseMode.value == 'HighAcc' or state.OffenseMode.value == 'HighAccHaste' then
- equip(sets.midcast.Pet.HighAcc)
- else
- equip(set_combine(sets.midcast.Pet.WS, sets.midcast.Pet[state.CorrelationMode.value]))
- end
- end
- if magic_ready_moves:contains(spell.name) then
- if state.PetMode.value == 'PetOnly' then
- equip(sets.midcast.Pet.MagicReadyNE)
- else
- equip(sets.midcast.Pet.MagicReady)
- end
- end
- -- If Pet TP, before bonuses, is less than a certain value then equip Nukumi Manoplas +1
- if tp_based_ready_moves:contains(spell.name) and PetJob == 'Warrior' then
- if pet.tp < 190 then
- equip(sets.midcast.Pet.TPBonus)
- end
- elseif tp_based_ready_moves:contains(spell.name) and PetJob ~= 'Warrior' then
- if pet.tp < 240 then
- equip(sets.midcast.Pet.TPBonus)
- end
- end
- end
- function job_pet_aftercast(spell, action, spellMap, eventArgs)
- if ready_moves_to_check:contains(spell.english) and state.PetMode.value == 'PetOnly' then
- equip(sets.IdleAxesNE)
- end
- end
- -- Return true if we handled the aftercast work. Otherwise it will fall back
- -- to the general aftercast() code in Mote-Include.
- function job_aftercast(spell, action, spellMap, eventArgs)
- if ready_moves_to_check:contains(spell.english) and state.PetMode.value == 'PetOnly' then
- equip(sets.IdleAxesNE)
- end
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Customization hook for idle sets.
- -------------------------------------------------------------------------------------------------------------------
- function customize_idle_set(idleSet)
- if player.hpp < 50 and pet.status ~= 'Engaged' then
- idleSet = set_combine(idleSet, sets.ExtraRegen)
- end
- return idleSet
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Hooks for Reward, Correlation, Treasure Hunter, and Pet Mode handling.
- -------------------------------------------------------------------------------------------------------------------
- function job_state_change(stateField, newValue, oldValue)
- if stateField == 'Correlation Mode' then
- state.CorrelationMode:set(newValue)
- elseif stateField == 'Reward Mode' then
- state.RewardMode:set(newValue)
- elseif stateField == 'Treasure Mode' then
- state.TreasureMode:set(newValue)
- elseif stateField == 'Pet Mode' then
- state.CombatWeapon:set(newValue)
- elseif stateField == 'Jug Mode' then
- state.JugMode:set(newValue)
- end
- end
- function get_custom_wsmode(spell, spellMap, default_wsmode)
- if default_wsmode == 'Normal' then
- if spell.english == "Ruinator" and (world.day_element == 'Water' or world.day_element == 'Wind' or world.day_element == 'Ice') then
- return 'Mekira'
- end
- end
- end
- -------------------------------------------------------------------------------------------------------------------
- -- User code that supplements self-commands.
- -------------------------------------------------------------------------------------------------------------------
- -- Called any time we attempt to handle automatic gear equips (ie: engaged or idle gear).
- function job_handle_equipping_gear(playerStatus, eventArgs)
- if player.equipment.back == 'Mecisto. Mantle' or player.equipment.back == 'Aptitude Mantle' or player.equipment.back == 'Aptitude Mantle +1' then
- disable('back')
- else
- enable('back')
- end
- 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)
- get_combat_form()
- if state.JugMode.value == 'FunguarFamiliar' then
- PetInfo = "Funguar, Plantoid"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'CourierCarrie' then
- PetInfo = "Crab, Aquan"
- PetJob = 'Paladin'
- elseif state.JugMode.value == 'AmigoSabotender' then
- PetInfo = "Cactuar, Plantoid"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'NurseryNazuna' then
- PetInfo = "Sheep, Beast"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'CraftyClyvonne' then
- PetInfo = "Coeurl, Beast"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'PrestoJulio' then
- PetInfo = "Flytrap, Plantoid"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'SwiftSieghard' then
- PetInfo = "Raptor, Lizard"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'MailbusterCetas' then
- PetInfo = "Fly, Vermin"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'AudaciousAnna' then
- PetInfo = "Lizard, Lizard"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'TurbidToloi' then
- PetInfo = "Pugil, Aquan"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'SlipperySilas' then
- PetInfo = "Toad, Aquan"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'LuckyLulush' then
- PetInfo = "Rabbit, Beast"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'DipperYuly' then
- PetInfo = "Ladybug, Vermin"
- PetJob = 'Thief'
- elseif state.JugMode.value == 'FlowerpotMerle' then
- PetInfo = "Mandragora, Plantoid"
- PetJob = 'Monk'
- elseif state.JugMode.value == 'DapperMac' then
- PetInfo = "Apkallu, Bird"
- PetJob = 'Monk'
- elseif state.JugMode.value == 'DiscreetLouise' then
- PetInfo = "Funguar, Plantoid"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'FatsoFargann' then
- PetInfo = "Leech, Amorph"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'FaithfulFalcorr' then
- PetInfo = "Hippogryph, Bird"
- PetJob = 'Thief'
- elseif state.JugMode.value == 'BugeyedBroncha' then
- PetInfo = "Eft, Lizard"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'BloodclawShasra' then
- PetInfo = "Lynx, Beast"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'GorefangHobs' then
- PetInfo = "Tiger, Beast"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'GooeyGerard' then
- PetInfo = "Slug, Amorph"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'CrudeRaphie' then
- PetInfo = "Adamantoise, Lizard"
- PetJob = 'Paladin'
- elseif state.JugMode.value == 'DroopyDortwin' then
- PetInfo = "Rabbit, Beast"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'PonderingPeter' then
- PetInfo = "HQ Rabbit, Beast"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'SunburstMalfik' then
- PetInfo = "Crab, Aquan"
- PetJob = 'Paladin'
- elseif state.JugMode.value == 'AgedAngus' then
- PetInfo = "HQ Crab, Aquan"
- PetJob = 'Paladin'
- elseif state.JugMode.value == 'WarlikePatrick' then
- PetInfo = "Lizard, Lizard"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'ScissorlegXerin' then
- PetInfo = "Chapuli, Vermin"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'BouncingBertha' then
- PetInfo = "HQ Chapuli, Vermin"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'RhymingShizuna' then
- PetInfo = "Sheep, Beast"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'AttentiveIbuki' then
- PetInfo = "Tulfaire, Bird"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'SwoopingZhivago' then
- PetInfo = "HQ Tulfaire, Bird"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'AmiableRoche' then
- PetInfo = "Pugil, Aquan"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'HeraldHenry' then
- PetInfo = "Crab, Aquan"
- PetJob = 'Paladin'
- elseif state.JugMode.value == 'BrainyWaluis' then
- PetInfo = "Funguar, Plantoid"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'HeadbreakerKen' then
- PetInfo = "Fly, Vermin"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'RedolentCandi' then
- PetInfo = "Snapweed, Plantoid"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'AlluringHoney' then
- PetInfo = "HQ Snapweed, Plantoid"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'CaringKiyomaro' then
- PetInfo = "Raaz, Beast"
- PetJob = 'Monk'
- elseif state.JugMode.value == 'VivaciousVickie' then
- PetInfo = "HQ Raaz, Beast"
- PetJob = 'Monk'
- elseif state.JugMode.value == 'HurlerPercival' then
- PetInfo = "Beetle, Vermin"
- PetJob = 'Paladin'
- elseif state.JugMode.value == 'BlackbeardRandy' then
- PetInfo = "Tiger, Beast"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'GenerousArthur' then
- PetInfo = "Slug, Amorph"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'ThreestarLynn' then
- PetInfo = "Ladybug, Vermin"
- PetJob = 'Thief'
- elseif state.JugMode.value == 'BraveHeroGlenn' then
- PetInfo = "Frog, Aquan"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'SharpwitHermes' then
- PetInfo = "Mandragora, Plantoid"
- PetJob = 'Monk'
- elseif state.JugMode.value == 'ColibriFamiliar' then
- PetInfo = "Colibri, Bird"
- PetJob = 'Red Mage'
- elseif state.JugMode.value == 'ChoralLeera' then
- PetInfo = "HQ Colibri, Bird"
- PetJob = 'Red Mage'
- elseif state.JugMode.value == 'SpiderFamiliar' then
- PetInfo = "Spider, Vermin"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'GussyHachirobe' then
- PetInfo = "HQ Spider, Vermin"
- PetJob = 'Warrior'
- elseif state.JugMode.value == 'AcuexFamiliar' then
- PetInfo = "Acuex, Amorph"
- PetJob = 'Black Mage'
- elseif state.JugMode.value == 'FluffyBredo' then
- PetInfo = "HQ Acuex, Amorph"
- PetJob = 'Black Mage'
- end
- end
- -- Updates gear based on pet status changes.
- function job_pet_status_change(newStatus, oldStatus, eventArgs)
- if newStatus == 'Idle' or newStatus == 'Engaged' then
- handle_equipping_gear(player.status)
- end
- end
- -- Set eventArgs.handled to true if we don't want the automatic display to be run.
- function display_current_job_state(eventArgs)
- local msg = 'Melee'
- if state.CombatForm.has_value then
- msg = msg .. ' (' .. state.CombatForm.value .. ')'
- end
- msg = msg .. ': '
- msg = msg .. state.OffenseMode.value
- if state.HybridMode.value ~= 'Normal' then
- msg = msg .. '/' .. state.HybridMode.value
- end
- msg = msg .. ', WS: ' .. state.WeaponskillMode.value
- if state.DefenseMode.value ~= 'None' then
- msg = msg .. ', ' .. 'Defense: ' .. state.DefenseMode.value .. ' (' .. state[state.DefenseMode.value .. 'DefenseMode'].value .. ')'
- end
- if state.Kiting.value then
- msg = msg .. ', Kiting'
- end
- msg = msg .. ', Reward: '..state.RewardMode.value..', Corr.: '..state.CorrelationMode.value
- if state.JugMode.value ~= 'None' then
- add_to_chat(8,'--- Jug Pet: '.. state.JugMode.value ..' --- ('.. PetInfo ..', '.. PetJob ..')')
- end
- add_to_chat(122, msg)
- eventArgs.handled = true
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Utility functions specific to this job.
- -------------------------------------------------------------------------------------------------------------------
- function get_combat_form()
- if player.sub_job == 'NIN' or player.sub_job == 'DNC' then
- state.CombatForm:set('DW')
- else
- state.CombatForm:reset()
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement