Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -------------------------------------------------------------------------------------------------------------------
- -- 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')
- -- Organizer
- include('organizer-lib')
- include('organizer-items.lua')
- end
- -- Setup vars that are user-independent. state.Buff vars initialized here will automatically be tracked.
- function job_setup()
- state.Buff.Sentinel = buffactive.sentinel or false
- state.Buff.Cover = buffactive.cover or false
- state.Buff.Doom = buffactive.Doom or false
- end
- -------------------------------------------------------------------------------------------------------------------
- -- User setup functions for this job. Recommend that these be overridden in a sidecar file.
- -------------------------------------------------------------------------------------------------------------------
- -- Setup vars that are user-dependent. Can override this function in a sidecar file.
- function user_setup()
- state.OffenseMode:options('Normal', 'Acc')
- state.HybridMode:options('Normal', 'PDT', 'Reraise')
- state.WeaponskillMode:options('Normal', 'Acc')
- state.CastingMode:options('Normal', 'Resistant')
- state.PhysicalDefenseMode:options('PDT', 'HP', 'Reraise', 'Charm')
- state.MagicalDefenseMode:options('MDT', 'HP', 'Reraise', 'Charm')
- state.IdleMode:options('Normal', 'Refresh')
- state.ExtraDefenseMode = M{['description']='Extra Defense Mode', 'None', 'MP', 'Knockback', 'MP_Knockback'}
- state.EquipShield = M(false, 'Equip Shield w/Defense')
- gear.Weard = { name="Weard Mantle", augments={'VIT+3','Enmity+3','Phalanx +4',}}
- gear.RudianosWS = { name="Rudianos's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','Weapon skill damage +10%',}}
- gear.RudianosFC = { name="Rudianos's Mantle", augments={'HP+60','"Fast Cast"+10',}}
- gear.RudianosEnm = { name="Rudianos's Mantle", augments={'Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','Enmity+10',}}
- gear.Ejekamal = { name="Ejekamal Boots", augments={'Haste+2','"Snapshot"+2','"Fast Cast"+3',}}
- gear.EschiteLegsFC = { name="Eschite Cuisses", augments={'"Mag.Atk.Bns."+25','"Conserve MP"+6','"Fast Cast"+5',}}
- target_distance = 5.5 -- Set Default Distance Here --
- update_defense_mode()
- send_command('bind ^f11 gs c cycle MagicalDefenseMode')
- send_command('bind !f11 gs c cycle ExtraDefenseMode')
- send_command('bind @f10 gs c toggle EquipShield')
- send_command('bind @f11 gs c toggle EquipShield')
- send_command('pld')
- select_default_macro_book()
- end
- function user_unload()
- send_command('unbind ^f11')
- send_command('unbind !f11')
- send_command('unbind @f10')
- send_command('unbind @f11')
- send_command('gs enable all')
- end
- -- Define sets and vars used by this job file.
- function init_gear_sets()
- --------------------------------------
- -- Precast sets
- --------------------------------------
- -- Fast cast sets for spells
- sets.precast.FC = {ammo="sapience orb",
- head="Carmine mask",neck="Diemer gorget",ear1="Loquac. Earring",ear2="Etiolation Earring",
- body="Odyssean chesplate",hands="Leyline Gloves",ring1="Veneficium Ring",ring2="Defending Ring",
- back="Rudianos's Mantle",waist="Sailfi Belt +1",legs="Eschite cuisses",feet="Carmine greaves"}
- sets.precast.FC['Enhancing Magic'] = set_combine(sets.precast.FC, {waist="Olympus Sash"})
- --Enmity
- sets.precast.Enmity = {ammo="Iron Goblet",
- head="Loess Barbuta +1",neck="Unmoving Collar +1",ear2="Cryptic Earring",
- body="Souveran Cuirass +1",hands="Souveran Handschuhs +1",ring1="Apeile Ring",ring2="Pernicious Ring",
- back="Rudianos's Mantle",waist="Creed Baudrier",legs="Souveran Diechlings +1",feet="Eschite greaves"}
- -- Precast sets to enhance JAs
- sets.precast.JA['Invincible'] = set_combine(sets.precast.Enmity, {legs="Caballarius Breeches +1"})
- sets.precast.JA['Holy Circle'] = set_combine(sets.precast.Enmity, {feet="Reverence Leggings +1"})
- sets.precast.JA['Shield Bash'] = set_combine(sets.precast.Enmity, {hands="Caballarius Gauntlets +1", ear2="Knightly Earring"})
- sets.precast.JA['Sentinel'] = set_combine(sets.precast.Enmity, {feet="Caballarius Leggings +1"})
- sets.precast.JA['Rampart'] = set_combine(sets.precast.Enmity, {head="Caballarius Coronet +1"})
- sets.precast.JA['Fealty'] = set_combine(sets.precast.Enmity, {body="Caballarius Surcoat +1"})
- sets.precast.JA['Divine Emblem'] = set_combine(sets.precast.Enmity, {feet="Chevalier's Sabatons +1"})
- sets.precast.JA['Sepulcher'] = sets.precast.Enmity
- sets.precast.JA['Palisade'] = sets.precast.Enmity
- sets.precast.JA['Cover'] = set_combine(sets.precast.Enmity, {head="Reverence Coronet +1"})
- -- add mnd for Chivalry
- sets.precast.JA['Chivalry'] = {ammo="Staunch Tathlum",
- head="Souveran Schaller +1",neck="Loricate Torque +1",ear1="Nourish. Earring +1",ear2="Lifestorm Earring",
- body="Souveran Cuirass +1",hands="Souveran Handschuhs +1",ring1="Vocane Ring",ring2="Defending Ring",
- back="Reiki Cloak",waist="Creed Baudrier",legs="Souveran Cuisses +1",feet="Souveran Schuhs +1"}
- -- /WAR
- sets.precast.JA['Provoke'] = set_combine(sets.precast.Enmity, {})
- sets.precast.JA['Berserk'] = set_combine(sets.precast.Enmity, {})
- sets.precast.JA['Warcry'] = set_combine(sets.precast.Enmity, {})
- sets.precast.JA['Aggressor'] = set_combine(sets.precast.Enmity, {})
- sets.precast.JA['Defender'] = set_combine(sets.precast.Enmity, {})
- -- Waltz set (chr and vit)
- sets.precast.Waltz = {
- head="Sulevia's Mask +2",
- body="Sulevia's Platemail +2",hands="Sulevia's Gauntlets +2",
- waist="Caudata Belt",legs="Sulevia's Cuisses +1",feet="Sulevia's Leggings +2"}
- -- Don't need any special gear for Healing Waltz.
- sets.precast.Waltz['Healing Waltz'] = {}
- sets.precast.Step = {ammo="Hasty Pinion +1",
- head="Flamma Zucchetto +2",neck="Loricate Torque +1",ear1="Steelflash Earring",ear2="Heartseeker Earring",
- body="Flamma Korazin +2",hands="Flamma Manopolas +2",ring1="Defending Ring",ring2="Patricius Ring",
- back="Rudianos's Mantle",waist="Sailfi Belt +1",legs="Flamma Dirs +1",feet="Flamma Gambieras +2"}
- sets.precast.Flourish1 = {ammo="Plumose Sachet",
- head="Flamma Zucchetto +2",neck="Loricate Torque +1",ear1="Lifestorm Earring",ear2="Psystorm Earring",
- body="Flamma Korazin +2",hands="Flamma Manopolas +2",ring1="Defending Ring",ring2="Sangoma Ring",
- back="Rudianos's Mantle",waist="Sailfi Belt +1",legs="Flamma Dirs +1",feet="Flamma Gambieras +2"}
- -- Weaponskill sets
- -- Default set for any weaponskill that isn't any more specifically defined
- sets.precast.WS = {ammo="Hasty Pinion +1",
- head="Flamma Zucchetto +2",neck="Fotia Gorget",ear1="Moonshade Earring",ear2="Brutal Earring",
- body="Flamma Korazin +2",hands="Sulevia's Gauntlets +2",ring1="Ifrit Ring",ring2="Ifrit Ring",
- back="Buquwik Cape",waist="Fotia Belt",legs="Sulevia's Cuisses +1",feet="Sulevia's Leggings +2"}
- sets.precast.WS.Acc = {ammo="Hasty Pinion +1",
- head="Flamma Zucchetto +2",neck="Fotia Gorget",ear1="Moonshade Earring",ear2="Telos Earring",
- body="Flamma Korazin +2",hands="Flamma Manopolas +2",ring1="Petrov Ring",ring2="Patricius Ring",
- back="Buquwik Cape",waist="Sailfi Belt +1",legs="Flamma Dirs +1",feet="Flamma Gambieras +2"}
- -- Specific weaponskill sets. Uses the base set if an appropriate WSMod version isn't found.
- sets.precast.WS['Requiescat'] = set_combine(sets.precast.WS, {ring2="Patricius Ring",})
- sets.precast.WS['Requiescat'].Acc = set_combine(sets.precast.WS.Acc, {waist="Fotia Belt"})
- sets.precast.WS['Chant du Cygne'] = set_combine(sets.precast.WS, {hands="Flamma Manopolas +2",waist="Windbuffet Belt"})
- sets.precast.WS['Chant du Cygne'].Acc = set_combine(sets.precast.WS.Acc, {hands="Flamma Manopolas +2"})
- sets.precast.WS['Sanguine Blade'] = {ammo="Plumose Sachet",
- head="Flamma Zucchetto +2",neck="Eddy Necklace",ear1="Friomisi Earring",ear2="Hecate's Earring",
- body="Flamma Korazin +2",hands="Flamma Manopolas +2",ring1="Shiva Ring",ring2="Shiva Ring",
- back="Rudianos's Mantle",waist="Fotia Belt",legs="Flamma Dirs +1",feet="Sulevia's Leggings +2"}
- sets.precast.WS['Aeolian Edge'] = set_combine(sets.precast.WS['Sanguine Blade'], {head="Terminal helm"})
- sets.precast.WS['Atonement'] = {ammo="Iron goblet",
- head={ name="Odyssean Helm", augments={'Accuracy+28','Weapon skill damage +3%','STR+11','Attack+4',}},neck="Fotia Gorget",ear1="Moonshade Earring",ear2="Ishvara Earring",
- body="Flamma Korazin +2",hands="Souveran Handsch. +1",ring1="Pernicious Ring",ring2="Apeile Ring",
- back="Rudiano's mantle",waist="Fotia Belt",legs={ name="Odyssean Cuisses", augments={'Accuracy+21 Attack+21','Weapon skill damage +4%','Accuracy+15','Attack+11',}},feet="Sulevia's Leggings +2"}
- sets.precast.WS['Savage Blade'] = {ammo="Jukukik feather",
- head="Sulevia's Mask +2",neck="Fotia Gorget",ear1="Moonshade Earring",ear2="Brutal Earring",
- body="Flamma Korazin +2",hands="Valorous Mitts",ring1="Rajas Ring",ring2="Ifrit Ring",
- back="Buquwik Cape",waist="Fotia Belt",legs={ name="Odyssean Cuisses", augments={'Accuracy+21 Attack+21','Weapon skill damage +4%','Accuracy+15','Attack+11',}},feet="Sulevia's Leggings +2"}
- --------------------------------------
- -- Midcast sets
- --------------------------------------
- sets.midcast.FastRecast = {ammo="Sapience Orb",head="Carmine Mask",body="Odyssean Chestplate",hands="Leyline Gloves",legs="Eschite Cuisses",
- feet="Carmine Greaves",neck="Loricate Torque +1",waist="Creed Baudrier",ear1="Loquacious Earring",ear2="Etiolation Earring",
- ring1="Defending Ring",ring2="Veneficium Ring",waist="Sailfi belt +1",back="Reiki Cloak"}
- sets.midcast.Enmity = sets.precast.Enmity
- sets.midcast.Flash = set_combine(sets.midcast.Enmity, {neck="Divine Torque"})
- sets.midcast.Stun = sets.midcast.Flash
- sets.midcast.Cure = {ammo="Staunch tathlum","Souveran Schaller +1",
- ear1="Mendi. Earring",ear2="Nourishing Earring +1","Souveran Cuirass +1",
- hands="Buremte Gloves",ring1="Vocane Ring",ring2="Kunaji Ring",
- waist="Chuq'aba Belt",legs="Souveran Diechlings +1","Souveran Schuhs +1",neck="Phalaina locket"}
- sets.midcast['Blue Magic'] = set_combine(sets.midcast.Enmity, {})
- sets.midcast['Blue Magic']['Wild Carrot'] = set_combine(sets.midcast.Enmity, sets.midcast.Cure)
- sets.midcast['Enhancing Magic'] = {sub="Priwen",ammo="Staunch Tathlum",
- head="Yorium Barbuta",body="Shabti Cuirass",hands="Souveran Handschuhs +1",legs="Yorium Cuisses",
- feet="Souveran Schuhs +1",neck="Enhancing Torque",waist="Olympus Sash",ear1="Andoaa Earring",
- ear2="Etiolation Earring",ring1="Defending Ring",ring2="Vocane Ring",back="Weard Mantle"}
- sets.midcast.Protect = {ring1="Sheltered Ring"}
- sets.midcast.Shell = {ring1="Sheltered Ring"}
- --------------------------------------
- -- Idle/resting/defense/etc sets
- --------------------------------------
- sets.Reraise = {head="Twilight Helm", body="Twilight Mail"}
- sets.resting = {ammo="Staunch Tathlum",
- head="Souveran Schaller +1",neck="Creed Collar",
- body="Souveran Cuirass +1",ring1="Sheltered Ring",ring2="Paguroidea Ring"}
- -- Idle sets
- sets.idle = {ammo="Staunch Tathlum",
- head="Sulevia's Mask +2",neck="Coatl gorget +1",ear1="Infused Earring",ear2="Hearty Earring",
- body="Reverence Surcoat +2",hands="Sulevia's Gauntlets +2",ring1="Vocane Ring",ring2="Defending Ring",
- back="Rudiano's mantle","Flume Belt",legs="Carmine Cuisses +1",feet="Sulevia's Leggings +2"}
- sets.idle.Refresh = set_combine(sets.idle, {ammo="Staunch Tathlum",
- neck="Coatl gorget +1",body="Respite cloak",legs="Carmine Cuisses +1",waist="Fucho-no-obi",
- ear1="Infused Earring",ring1="Sheltered Ring",ring2="Paguroidea Ring"})
- sets.idle.Town = {ammo="Staunch Tathlum",
- head="Flamma Zucchetto +2",neck="Loricate Torque +1",ear1="Telos Earring",ear2="Etiolation Earring",
- body="Flamma Korazin +2",hands="Flamma Manopolas +2",ring1="Vocane Ring",ring2="Defending Ring",
- back="Rudiano's Mantle",waist="Windbuffet Belt",legs="Carmine Cuisses +1",feet="Flamma Gambieras +2"}
- sets.idle.Weak = set_combine(sets.idle,{back="Rudiano's Mantle",legs="Sulevia's Cuisses +2"})
- sets.idle.Weak.Reraise = set_combine(sets.idle.Weak, sets.Reraise)
- sets.Kiting = {legs="Carmine Cuisses +1"}
- sets.latent_refresh = {waist="Fucho-no-obi"}
- --------------------------------------
- -- Defense sets
- --------------------------------------
- -- Extra defense sets. Apply these on top of melee or defense sets.
- sets.Knockback = {ring1="Vocane Ring",back="Impassive Mantle"}
- sets.MP = {ammo="Homiliary",neck="Creed Collar",waist="Flume Belt"} --Chev. Armet +1
- sets.MP_Knockback = set_combine(sets.MP, sets.Knockback)
- -- If EquipShield toggle is on (Win+F10 or Win+F11), equip the weapon/shield combos here
- -- when activating or changing defense mode:
- sets.PhysicalShield = {main="Flyssa +1",sub="Ochain"}
- sets.MagicalShield = {main="Flyssa +1",sub="Aegis"}
- -- Basic defense sets.
- sets.defense.PDT = {ammo="Staunch Tathlum",
- head="Loess Barbuta +1",neck="Loricate Torque +1",ear1="Thureous Earring",ear2="Cryptic Earring",
- body="Souveran Cuirass +1",hands="Sulevia's Gauntlets +2",ring1="Vocane Ring",ring2="Defending Ring",
- back="Reiki Cloak",waist="Creed baudrier",legs="Souveran Cuisses +1",feet="Souveran Schuhs +1"}
- sets.defense.HP = {ammo="Staunch Tathlum",
- head="Souveran Schaller +1",neck="Loricate Torque +1",ear1="Odnowa Earring +1",ear2="Etiolation Earring",
- body="Souveran Cuirass +1",hands="Souveran Handschuhs +1",ring1="Vocane Ring",ring2="Defending Ring",
- back="Reiki Cloak",waist="Creed Baudrier",legs="Souveran Cuisses +1",feet="Souveran Schuhs +1"}
- sets.defense.Reraise = {ammo="Staunch Tathlum",
- head="Twilight Helm",neck="Loricate Torque +1",ear1="Odnowa Earring +1",ear2="Creed Earring",
- body="Twilight Mail",hands="Sulevia's Gauntlets +2",ring1="Vocane Ring",ring2="Defending Ring",
- back="Reiki cloak",waist="Nierenschutz",legs="Sulevia's Cuisses +2",feet="Sulevia's Leggings +2"}
- sets.defense.Charm = {ammo="Homiliary",
- head="Sulevia's Mask +2",neck="Twilight Torque",ear1="Oneiros Earring",ear2="Creed Earring",
- body="Sulevia's Platemail +2",hands="Sulevia's Gauntlets +2",ring1="Vocane Ring",ring2="Defending Ring",
- back=gear.Weard,waist="Flume Belt",legs="Sulevia's Cuisses +2",feet="Sulevia's Leggings +2"}
- -- To cap MDT with Shell IV (52/256), need 76/256 in gear.
- -- Shellra V can provide 75/256, which would need another 53/256 in gear.
- sets.defense.MDT = {ammo="Staunch Tathlum",
- head="Souveran Schaller +1",neck="Loricate Torque +1",ear1="Odnowa Earring +1",ear2="Etiolation Earring",
- body="Souveran Cuirass +1",hands="Souveran Handschuhs +1",ring1="Vocane Ring",ring2="Defending Ring",
- back="Reiki Cloak",waist="Creed Baudrier",legs="Souveran Cuisses +1",feet="Souveran Schuhs +1"}
- --------------------------------------
- -- Engaged sets
- --------------------------------------
- sets.engaged = {ammo="Staunch Tathlum",
- head="Souveran Schaller +1",neck="Loricate Torque +1",ear1="Odnowa Earring +1",ear2="Etiolation Earring",
- body="Souveran Cuirass +1",hands="Souveran Handschuhs +1",ring1="Vocane Ring",ring2="Defending Ring",
- back="Reiki Cloak",waist="Creed Baudrier",legs="Souveran Cuisses +1",feet="Souveran Schuhs +1"}
- sets.engaged.Acc = {ammo="Staunch Tathlum",
- head="Souveran Schaller +1",neck="Loricate Torque +1",ear1="Odnowa Earring +1",ear2="Etiolation Earring",
- body="Souveran Cuirass +1",hands="Souveran Handschuhs +1",ring1="Vocane Ring",ring2="Defending Ring",
- back="Reiki Cloak",waist="Creed Baudrier",legs="Souveran Cuisses +1",feet="Souveran Schuhs +1"}
- sets.engaged.DW = set_combine(sets.engaged, {ear1="Suppanomimi",ear2="Brutal Earring",legs="Carmine Cuisses +1"})
- sets.engaged.DW.Acc = set_combine(sets.engaged.Acc, {ear1="Dudgeon Earring",ear2="Heartseeker Earring"})
- sets.engaged.PDT = {ammo="Staunch Tathlum",
- head="Souveran Schaller +1",neck="Loricate Torque +1",ear1="Odnowa Earring +1",ear2="Etiolation Earring",
- body="Souveran Cuirass +1",hands="Souveran Handschuhs +1",ring1="Vocane Ring",ring2="Defending Ring",
- back="Reiki Cloak",waist="Creed Baudrier",legs="Souveran Cuisses +1",feet="Souveran Schuhs +1"}
- sets.engaged.Acc.PDT = sets.engaged.PDT
- sets.engaged.Reraise = set_combine(sets.engaged, sets.Reraise)
- sets.engaged.Acc.Reraise = set_combine(sets.engaged.Acc, sets.Reraise)
- sets.engaged.DW.PDT = set_combine(sets.engaged.PDT, {ear1="Suppanomimi",ear2="Brutal Earring"})
- sets.engaged.DW.Acc.PDT = set_combine(sets.engaged.PDT, {ear1="Dudgeon Earring",ear2="Heartseeker Earring"})
- sets.engaged.DW.Reraise = set_combine(sets.engaged.DW, sets.Reraise)
- sets.engaged.DW.Acc.Reraise = set_combine(sets.engaged.DW.Acc, sets.Reraise)
- --------------------------------------
- -- Custom buff sets
- --------------------------------------
- sets.buff.Doom = {ring1="Purity Ring",ring2="Saida Ring",legs="Shabti cuisses",waist="Gishdubar sash"}
- sets.buff.Cover = {head="Reverence Coronet +1", body="Caballarius Surcoat +1"}
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Job-specific hooks for standard casting events.
- -------------------------------------------------------------------------------------------------------------------
- function job_pretarget(spell, action, spellMap, eventArgs)
- if spell.type == "WeaponSkill" and player.status == 'Engaged' and spell.target.distance > target_distance then -- Cancel WS If You Are Out Of Range --
- eventArgs.cancel=true
- add_to_chat(123, spell.name..' Canceled: [Out of Range]')
- return
- end
- end
- function job_midcast(spell, action, spellMap, eventArgs)
- -- If DefenseMode is active, apply that gear over midcast
- -- choices. Precast is allowed through for fast cast on
- -- spells, but we want to return to def gear before there's
- -- time for anything to hit us.
- -- Exclude Job Abilities from this restriction, as we probably want
- -- the enhanced effect of whatever item of gear applies to them,
- -- and only one item should be swapped out.
- if state.DefenseMode.value ~= 'None' and spell.type ~= 'JobAbility' then
- handle_equipping_gear(player.status)
- eventArgs.handled = true
- end
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Job-specific hooks for non-casting events.
- -------------------------------------------------------------------------------------------------------------------
- -- Called when the player's state changes (e.g. Normal to Acc Engaged mode).
- function job_state_change(field, new_value, old_value)
- classes.CustomDefenseGroups:clear()
- classes.CustomDefenseGroups:append(state.ExtraDefenseMode.current)
- if state.EquipShield.value == true then
- classes.CustomDefenseGroups:append(state.DefenseMode.current .. 'Shield')
- end
- classes.CustomMeleeGroups:clear()
- classes.CustomMeleeGroups:append(state.ExtraDefenseMode.current)
- end
- -------------------------------------------------------------------------------------------------------------------
- -- User code that supplements standard library decisions.
- -------------------------------------------------------------------------------------------------------------------
- -- 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_defense_mode()
- end
- -- Called when status changes (Idle to Engaged, Resting, etc.)
- function job_status_change(newStatus, oldStatus, eventArgs)
- update_defense_mode()
- end
- -- Modify the default idle set after it was constructed.
- function customize_idle_set(idleSet)
- if world.area:contains('Adoulin') then
- idleSet = set_combine(idleSet, {body="Councilor's Garb"})
- end
- if player.mpp < 51 then
- idleSet = set_combine(idleSet, sets.latent_refresh)
- end
- if state.Buff.Doom then
- idleSet = set_combine(idleSet, sets.buff.Doom)
- end
- return idleSet
- end
- -- Modify the default melee set after it was constructed.
- function customize_melee_set(meleeSet)
- if state.Buff.Doom then
- meleeSet = set_combine(meleeSet, sets.buff.Doom)
- end
- return meleeSet
- end
- function customize_defense_set(defenseSet)
- if state.ExtraDefenseMode.value ~= 'None' then
- defenseSet = set_combine(defenseSet, sets[state.ExtraDefenseMode.value])
- end
- if state.EquipShield.value == true then
- defenseSet = set_combine(defenseSet, sets[state.DefenseMode.current .. 'Shield'])
- end
- if state.Buff.Doom then
- defenseSet = set_combine(defenseSet, sets.buff.Doom)
- end
- return defenseSet
- end
- 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.ExtraDefenseMode.value ~= 'None' then
- msg = msg .. ', Extra: ' .. state.ExtraDefenseMode.value
- end
- if state.EquipShield.value == true then
- msg = msg .. ', Force Equip Shield'
- end
- if state.Kiting.value == true then
- msg = msg .. ', Kiting'
- end
- if state.PCTargetMode.value ~= 'default' then
- msg = msg .. ', Target PC: '..state.PCTargetMode.value
- end
- if state.SelectNPCTargets.value == true then
- msg = msg .. ', Target NPCs'
- end
- add_to_chat(122, msg)
- eventArgs.handled = true
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Utility functions specific to this job.
- -------------------------------------------------------------------------------------------------------------------
- function update_defense_mode()
- if player.sub_job == 'NIN' or player.sub_job == 'DNC' then
- if player.equipment.sub and not player.equipment.sub:contains('Shield') and
- player.equipment.sub ~= 'Aegis' and player.equipment.sub ~= 'Ochain' then
- state.CombatForm:set('DW')
- else
- state.CombatForm:reset()
- end
- end
- end
- -- Select default macro book on initial load or subjob change.
- function select_default_macro_book()
- -- Default macro set/book
- if player.sub_job == 'WAR' then
- set_macro_page(5, 1)
- elseif player.sub_job == 'DNC' then
- set_macro_page(1, 1)
- elseif player.sub_job == 'THF' then
- set_macro_page(6, 1)
- elseif player.sub_job == 'SAM' then
- set_macro_page(7, 1)
- elseif player.sub_job == 'RNG' then
- set_macro_page(8, 1)
- elseif player.sub_job == 'PLD' then
- set_macro_page(9, 1)
- elseif player.sub_job == 'WHM' then
- set_macro_page(1, 2)
- elseif player.sub_job == 'RDM' then
- set_macro_page(1, 3)
- elseif player.sub_job == 'SCH' then
- set_macro_page(1, 4)
- elseif player.sub_job == 'BLU' then
- set_macro_page(1, 5)
- elseif player.sub_job == 'DRK' then
- set_macro_page(5, 5)
- elseif player.sub_job == 'RUN' then
- set_macro_page(1, 6)
- elseif player.sub_job == 'NIN' then
- set_macro_page(10, 1)
- else
- set_macro_page(1, 7) --BRD
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement