midash

Orangebear_BLM

Jan 4th, 2014
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
XML 20.95 KB | None | 0 0
  1.     include('organizer-lib')
  2. -------------------------------------------------------------------------------------------------------------------
  3. -- Setup functions for this job.  Generally should not be modified.
  4. -------------------------------------------------------------------------------------------------------------------
  5.  
  6. -- Initialization function for this job file.
  7. function get_sets()
  8.     mote_include_version = 2
  9.    
  10.     -- Load and initialize the include file.
  11.     include('Mote-Include.lua')
  12. end
  13.  
  14.  
  15. -- Setup vars that are user-independent.  state.Buff vars initialized here will automatically be tracked.
  16. function job_setup()
  17.    
  18. end
  19.  
  20. -------------------------------------------------------------------------------------------------------------------
  21. -- User setup functions for this job.  Recommend that these be overridden in a sidecar file.
  22. -------------------------------------------------------------------------------------------------------------------
  23.  
  24. -- Setup vars that are user-dependent.  Can override this function in a sidecar file.
  25. function user_setup()
  26.     state.OffenseMode:options('None', 'Normal')
  27.     state.CastingMode:options('Normal', 'Resistant')
  28.     state.IdleMode:options('Normal', 'PDT', 'Death')
  29.    
  30.     state.MagicBurst = M(false, 'Magic Burst')
  31.     state.ArtifactBody = M(false, 'Use AF Body')
  32.     lowTierNukes = S{'Stone', 'Water', 'Aero', 'Fire', 'Blizzard', 'Thunder',
  33.         'Stone II', 'Water II', 'Aero II', 'Fire II', 'Blizzard II', 'Thunder II',
  34.         'Stone III', 'Water III', 'Aero III', 'Fire III', 'Blizzard III', 'Thunder III',
  35.         'Stonega', 'Waterga', 'Aeroga', 'Firaga', 'Blizzaga', 'Thundaga',
  36.         'Stonega II', 'Waterga II', 'Aeroga II', 'Firaga II', 'Blizzaga II', 'Thundaga II'}
  37.  
  38.     effectspells = S{'Stoneja','Waterja','Aeroja','Firaja','Blizzaja','Thundaja','a'}
  39.        
  40.         gear.default.obi_waist = "Hachirin-no-obi"
  41.     gear.default.obi_back = "Toro Cape"
  42.     gear.default.obi_ring = "Shiva Ring +1"
  43.     elements.obi_of = {['Light']='Hachirin-no-obi', ['Dark']='Hachirin-no-obi', ['Fire']='Hachirin-no-obi',
  44.                     ['Ice']='Hachirin-no-obi', ['Wind']='Hachirin-no-obi',['Earth']='Hachirin-no-obi',
  45.                     ['Lightning']='Hachirin-no-obi', ['Water']='Hachirin-no-obi'}
  46.      
  47.     -- Additional local binds
  48.     send_command('bind ^- gs c toggle ArtifactBody') -- Control ` turns AF body on and off
  49.     send_command('bind !` gs c toggle MagicBurst') -- Alt ` turns magic burst set on and off
  50.     send_command('bind f9 input /equip main "Lathi"; input /equip sub "Niobid Strap"; gs disable main; gs disable sub;') -- F9 Locks your staff and grip slots so you wont lose TP
  51.     send_command('bind !f9 gs enable main; gs enable sub;') -- Alt F9 enables staff and grip , so other weapons/grip can swap
  52.     send_command('bind f10 gs c set DefenseMode Physical') -- F10 turns PDT gear on, after spells/JAs you will return to PDT set automatically
  53.     send_command('bind f11 gs c set DefenseMode Magical') -- F11 turns MDT gear on, same as above for PDT
  54.     send_command('bind ^f11 gs c cycle CastingMode') -- Control F11 changes your casting mode between normal and resistant (magic accuracy)
  55.     send_command('bind f12 gs c update user') -- F12 forces an update (gear changes and other file options), also displays some current info
  56.     send_command('bind ^f12 gs c cycle IdleMode') -- Control F12 changes idle mode between idle and idle PDT, you shouldn't need to use this
  57.     send_command('bind !f12 gs c reset DefenseMode') -- Alt F12 clears your PDT or MDT and turns you to normal idle sets
  58.  
  59.     send_command('bind ^= gs c cycle pctargetmode')
  60.    
  61.    
  62.     select_default_macro_book()
  63. end
  64.  
  65. -- Called when this job file is unloaded (eg: job change)
  66. function user_unload()
  67.     send_command('unbind ^`')
  68.     send_command('unbind @`')
  69. end
  70.  
  71.  
  72. -- Define sets and vars used by this job file.
  73. function init_gear_sets()
  74.     --------------------------------------
  75.     -- Start defining the sets
  76.     --------------------------------------
  77. organizer_items = {
  78.   echos="Echo Drops",
  79.   remedy="Remedy",
  80.   orb="Macrocosmic Orb",
  81.   Crepe="Pear Crepe",
  82. }
  83.    
  84.     ---- Precast Sets ----
  85.    
  86.     -- Precast sets to enhance JAs
  87.     sets.precast.JA['Mana Wall'] = {feet="Goetia Sabots +2"}
  88.  
  89.     sets.precast.JA.Manafont = {body="Archmage's Coat"}
  90.    
  91.     -- equip to maximize HP (for Tarus) and minimize MP loss before using convert
  92.     sets.precast.JA.Convert = {}
  93.  
  94.  
  95.     -- Fast cast sets for spells
  96.  
  97.     sets.precast.FC = {ammo="Impatiens",
  98.         head="Amalric Coif",neck="Orunmila's Torque",ear1="Etiolation Earring",ear2="Loquacious Earring",
  99.             body={ name="Merlinic Jubbah", augments={'"Mag.Atk.Bns."+4','"Fast Cast"+7',}},hands="Telchine Gloves",ring1="Prolix Ring",ring2="Weatherspoon Ring",
  100.         back="Swith Cape +1",waist="Witful Belt",legs="Psycloth Lappas",feet="Regal Pumps +1"}
  101.  
  102.     sets.precast.Death = {ammo="Psilomene",
  103.         head="Amalric Coif",
  104.         neck="Orunmila's Torque",ear1="Loquacious Earring",ear2="Etiolation Earring",
  105.         body={ name="Merlinic Jubbah", augments={'Mag. Acc.+18 "Mag.Atk.Bns."+18','Magic burst mdg.+11%','INT+3','"Mag.Atk.Bns."+4',}},
  106.         Hands="Otomi Gloves",
  107.         legs="Psycloth Lappas",
  108.         feet="Merlinic Crackows",
  109.         ring1="Mephitas's Ring +1",ring2="Weather. Ring",back="Bane Cape",waist="Witful Belt"
  110.     }  
  111.        
  112.     sets.precast.FC['Enhancing Magic'] = set_combine(sets.precast.FC, {waist="Siegel Sash"})
  113.     sets.precast.FC.Stoneskin = set_combine(sets.precast.FC, {head="Umuthi Hat",waist="Siegel Sash"})
  114.     sets.precast.FC.Aquaveil = set_combine(sets.precast.FC, {head="Amalric Coif"})
  115.     sets.precast.FC['Elemental Magic'] = set_combine(sets.precast.FC, {ear2="Barkarole Earring",neck="Stoicheion Medal",legs="Merlinic Shalwar",head="Wicce Petasos +1"})
  116.  
  117.     sets.precast.FC.Cure = set_combine(sets.precast.FC, {body="Heka's Kalasiris", back="Pahtli Cape"})
  118.  
  119.     sets.precast.FC.Curaga = sets.precast.FC.Cure
  120.  
  121.     -- Weaponskill sets
  122.     -- Default set for any weaponskill that isn't any more specifically defined
  123.    
  124.     -- You can add gear to this set if you plan on doing any weaponskills not defined below
  125.     sets.precast.WS = {}
  126.  
  127.     -- Specific weaponskill sets.  Uses the base set if an appropriate WSMod version isn't found.
  128.     sets.precast.WS['Vidohunir'] = {}
  129.    
  130.     sets.precast.WS['Myrkr'] = {ammo="Pemphredo Tathlum",
  131.         head="Merlinic Hood",neck="Fotia Gorget",ear1="Influx Earring",ear2="Moonshade Earring",
  132.         body="Helios Jacket",hands="Otomi Gloves",ring1="Sangoma Ring",ring2="Fenrir Ring +1",
  133.         back="Bane Cape",waist="Fotia Belt",legs="Merlinic Shalwar",feet="Regal Pumps +1"}
  134.    
  135.     ---- Midcast Sets ----
  136.  
  137.     sets.midcast.FastRecast = {ammo="Impatiens",
  138.         head="Amalric Coif",neck="Orunmila's Torque",ear2="Loquacious Earring",
  139.             body={ name="Merlinic Jubbah", augments={'"Mag.Atk.Bns."+4','"Fast Cast"+7',}},hands="Telchine Gloves",ring1="Prolix Ring",ring2="Weatherspoon Ring",
  140.         back="Swith Cape +1",waist="Witful Belt",legs="Psycloth Lappas",feet="Regal Pumps +1"}
  141.  
  142.     sets.midcast.Cure = {main="Tamaxchi",sub="Genbu's Shield",
  143.         head="Amalric Coif",neck="Phalaina Locket",ear2="Loquacious Earring",
  144.         body="Heka's Kalasiris",hands="Bokwus Gloves",ring1="Prolix Ring",
  145.         back="Pahtli Cape",waist=gear.ElementalObi,legs="Mes'yohi Slacks",feet="Regal Pumps +1"}
  146.  
  147.     sets.midcast.Curaga = sets.midcast.Cure
  148.  
  149.     sets.midcast['Enhancing Magic'] = {main="Kirin's Pole",
  150.         head="Umuthi Hat",ear1="Andoaa Earring",
  151.         feet="Regal Pumps +1"}
  152.    
  153.     sets.midcast.Stoneskin = set_combine(sets.midcast['Enhancing Magic'], {waist="Siegel Sash"})
  154.    
  155.    
  156.     sets.midcast['Enfeebling Magic'] = {main="Lathi",sub="Mephitis Grip",ammo="Pemphredo Tathlum",
  157.         head="Befouled Crown",neck="Imbodla Necklace",ear1="Psystorm Earring",ear2="Lifestorm Earring",
  158.         body="Vanya Robe",hands="Lurid Mitts",ring1="Sangoma Ring",ring2="Fenrir Ring +1",
  159.         back="Refraction Cape",waist="Rumination Sash",legs="Mes'yohi Slacks",feet="Medium's Sabots"}
  160.        
  161.     sets.midcast.ElementalEnfeeble = sets.midcast['Enfeebling Magic']
  162.  
  163.     sets.midcast['Dark Magic'] = {main="Lathi",sub="Niobid Strap",ammo="Pemphredo Tathlum",
  164.         head="Befouled Crown",neck="Eddy Necklace",ear1="Psystorm Earring",ear2="Lifestorm Earring",
  165.         body="Wretched Coat",hands="Lurid Mitts",ring1="Sangoma Ring",ring2="Fenrir Ring +1",
  166.         back="Bane Cape",waist="Witful Belt",legs="Psycloth Lappas",feet="Regal Pumps +1"}
  167.  
  168.     sets.midcast.Drain = {main="Lathi",sub="Niobid Strap",ammo="Pemphredo Tathlum",
  169.         head="Befouled Crown",neck="Eddy Necklace",ear1="Psystorm Earring",ear2="Lifestorm Earring",
  170.         body="Wretched Coat",hands="Lurid Mitts",ring1="Sangoma Ring",ring2="Fenrir Ring +1",
  171.         back="Bane Cape",waist="Fucho-no-Obi",legs="Psycloth Lappas",feet="Regal Pumps +1"}
  172.    
  173.     sets.midcast.Aspir = {ammo="Impatiens",
  174.     head="Pixie Hairpin +1",neck="Orunmila's Torque",ear1="Gwati Earring",ear2="Barkarole Earring",
  175.         body={ name="Merlinic Jubbah", augments={'"Mag.Atk.Bns."+4','"Fast Cast"+7',}},hands="Otomi Gloves",ring1="Mephitas's Ring",ring2="Sangoma Ring",
  176.     back="Bane Cape",waist="Fucho-no-Obi",legs="Psycloth Lappas",feet="Merlinic Crackows"
  177.     }
  178.  
  179.     sets.midcast.Stun = {main="Lathi",sub="Niobid Strap",ammo="Pemphredo Tathlum",
  180.         head="Amalric Coif",neck="Eddy Necklace",ear1="Psystorm Earring",ear2="Lifestorm Earring",
  181.         body="Wretched Coat",hands="Lurid Mitts",ring1="Sangoma Ring",ring2="Fenrir Ring +1",
  182.         back="Bane Cape",waist="Witful Belt",legs="Psycloth Lappas",feet="Regal Pumps +1"}
  183.  
  184.  
  185.     -- Elemental Magic sets
  186.    
  187.     sets.midcast['Elemental Magic'] = {main="Lathi",sub="Niobid Strap",ammo="Pemphredo Tathlum",
  188.         head="Merlinic Hood",neck="Eddy Necklace",ear1="Friomisi Earring",ear2="Barkarole Earring",
  189.         body={ name="Merlinic Jubbah", augments={'Mag. Acc.+18 "Mag.Atk.Bns."+18','Magic burst mdg.+11%','INT+3','"Mag.Atk.Bns."+4',}},    
  190.         hands="Amalric Gages",ring1="Shiva Ring",ring2="Shiva Ring +1",
  191.         back="Bane Cape",waist="Refoccilation Stone",legs="Merlinic Shalwar",feet="Merlinic Crackows"}
  192.  
  193.     sets.midcast.Comet = {main="Lathi",sub="Niobid Strap",ammo="Pemphredo Tathlum",
  194.         head="Merlinic Hood",neck="Eddy Necklace",ear1="Friomisi Earring",ear2="Barkarole Earring",
  195.         body={ name="Merlinic Jubbah", augments={'Mag. Acc.+18 "Mag.Atk.Bns."+18','Magic burst mdg.+11%','INT+3','"Mag.Atk.Bns."+4',}},    
  196.         hands="Amalric Gages",ring1="Shiva Ring",ring2="Shiva Ring +1",
  197.         back="Bane Cape",waist="Refoccilation Stone",legs="Wicce Chausses +1",feet="Merlinic Crackows"}    
  198.        
  199.     sets.midcast.Death = {main="Lathi",sub="Niobid Strap",ammo="Pemphredo Tathlum",
  200.         head="Pixie Hairpin +1",neck="Eddy Necklace",
  201.         ear1="Friomisi Earring",ear2="Barkarole Earring",
  202.         body={ name="Merlinic Jubbah", augments={'Mag. Acc.+18 "Mag.Atk.Bns."+18','Magic burst mdg.+11%','INT+3','"Mag.Atk.Bns."+4',}},
  203.         hands="Amalric Gages",
  204.         ring1="Mephitas's Ring +1",ring2="Mephitas's Ring",
  205.         back="Bane Cape",waist="Hachirin-no-obi",
  206.         legs="Merlinic Shalwar",feet="Merlinic Crackows"}  
  207.        
  208.     sets.midcast.Impact = {main="Lathi",sub="Niobid Strap",ammo="Pemphredo Tathlum",
  209.         head='empty',neck="Eddy Necklace",ear1="Friomisi Earring",ear2="Barkarole Earring",
  210.         body="Twilight Cloak",hands="Amalric Gages",ring1="Shiva Ring",ring2="Shiva Ring +1",
  211.         back="Bane Cape",waist="Refoccilation Stone",legs="Merlinic Shalwar",feet="Merlinic Crackows"} 
  212.        
  213.         -- More magic accuracy & skill in this set
  214.    sets.midcast['Elemental Magic'].Resistant = {main="Lathi",sub="Niobid Strap",ammo="Pemphredo Tathlum",
  215.        head="Merlinic Hood",neck="Eddy Necklace",ear1="Friomisi Earring",ear2="Barkarole Earring",
  216.        body={ name="Merlinic Jubbah", augments={'Mag. Acc.+18 "Mag.Atk.Bns."+18','Magic burst mdg.+11%','INT+3','"Mag.Atk.Bns."+4',}},    
  217.         hands="Amalric Gages",ring1="Weather. Ring",ring2="Sangoma Ring",
  218.        back="Bane Cape",waist="Eschan Stone",legs="Merlinic Shalwar",feet="Merlinic Crackows"}
  219.        
  220.         -- Not much changes here, this is for higher tier spells, you can use more INT/MAB then magic damage.
  221.    sets.midcast['Elemental Magic'].HighTierNuke = set_combine(sets.midcast['Elemental Magic'], {})
  222.    sets.midcast['Elemental Magic'].HighTierNuke.Resistant = set_combine(sets.midcast['Elemental Magic'], {})
  223.  
  224.    sets.af_body = {body="Spaekona's Coat +1"}
  225.    
  226.    -- Sets to return to when not performing an action.
  227.    
  228.    -- Resting sets
  229.    sets.resting = {ammo="Clarus Stone",
  230.         head=empty,
  231.         body="Respite Cloak",hands="Serpentes Cuffs",ring1="Sheltered Ring",
  232.        waist="Austerity Belt",legs="Assid. Pants +1",feet="Serpentes Sabots"}
  233.    
  234.  
  235.    -- Idle sets
  236.    
  237.    -- Normal refresh idle set
  238.    sets.idle = {main="Lathi",sub="Oneiros Grip",ammo="Pemphredo Tathlum",
  239.         neck="Loricate Torque +1",ear1="Loquacious Earring",ear2="Barkarole Earring",
  240.         head='Befouled Crown',body="Witching Robe",hands="Serpentes Cuffs",
  241.        back="Kumbira Cape",waist="Fucho-no-Obi",legs="Assid. Pants +1",feet="Serpentes Sabots"}
  242.  
  243.    -- Idle mode that keeps PDT gear on, but doesn't prevent normal gear swaps for precast/etc.
  244.    sets.idle.PDT = {ammo="Pemphredo Tathlum",
  245.         neck="Loricate Torque +1",ear1="Etiolation Earring",ear2="Sanare Earring",
  246.         head='Befouled Crown',body="Witching Robe",hands="Serpentes Cuffs",ring1="Dark Ring",ring2="Dark Ring",
  247.        back="Kumbira Cape",waist="Fucho-no-Obi",legs="Assid. Pants +1",feet="Serpentes Sabots"}
  248.  
  249.     sets.idle.Death = {ammo="Psilomene",
  250.     head="Befouled Crown",
  251.     neck="Orunmila's Torque",ear1="Etiolation Earring",ear2="Barkarole Earring",
  252.     body="Witching Robe",
  253.     hands="Otomi Gloves",
  254.     legs="Assid. Pants +1",
  255.     feet="Medium's Sabots",
  256.     ring1="Mephitas's Ring",ring2="Mephitas's Ring +1",waist="Fucho-no-Obi",back="Bane Cape"   
  257.     }  
  258.        
  259.    -- Idle mode scopes:
  260.    -- Idle mode when weak.
  261.    sets.idle.Weak = {ammo="Pemphredo Tathlum",
  262.         neck="Loricate Torque +1",ear1="Etiolation Earring",ear2="Sanare Earring",
  263.         head='Befouled Crown',body="Witching Robe",hands="Serpentes Cuffs",ring1="Dark Ring",ring2="Dark Ring",
  264.        back="Kumbira Cape",waist="Fucho-no-Obi",legs="Assid. Pants +1",feet="Serpentes Sabots"}
  265.    
  266.    -- Town gear.
  267.    sets.idle.Town = {main="Lathi",sub="Oneiros Grip",ammo="Pemphredo Tathlum",
  268.         neck="Loricate Torque +1",ear1="Etiolation Earring",ear2="Sanare Earring",
  269.         head='Befouled Crown',body="Witching Robe",hands="Serpentes Cuffs",ring1="Dark Ring",ring2="Dark Ring",
  270.        back="Kumbira Cape",waist="Fucho-no-Obi",legs="Assid. Pants +1",feet="Herald's Gaiters"}
  271.        
  272.    -- Defense sets
  273.  
  274.    sets.defense.PDT = {
  275.        head="Befouled Crown",neck="Loricate Torque +1",ear1="Etiolation Earring",ear2="Sanare Earring",
  276.        body="Hagondes Coat +1",hands="Hagondes Cuffs +1",ring1="Dark Ring",ring2="Dark Ring",
  277.        back="Kumbira Cape",waist="Lieutenant's Sash",legs="Assid. Pants +1",feet="Hagondes Sabots"}
  278.  
  279.    sets.defense.MDT = {ammo="Demonry Stone",
  280.        head="Befouled Crown",neck="Loricate Torque +1",ear1="Etiolation Earring",ear2="Sanare Earring",
  281.        body="Hagondes Coat +1",hands="Hagondes Cuffs +1",ring1="Dark Ring",ring2="Dark Ring",
  282.        back="Kumbira Cape",waist="Lieutenant's Sash",legs="Assid. Pants +1",feet="Hagondes Sabots"}
  283.  
  284.    sets.Kiting = {feet="Herald's Gaiters"}
  285.  
  286.    sets.latent_refresh = {waist="Fucho-no-obi"}
  287.  
  288.    -- Buff sets: Gear that needs to be worn to actively enhance a current player buff.
  289.    
  290.    sets.buff['Mana Wall'] = {feet="Goetia Sabots +2"}
  291.  
  292.    sets.magic_burst = {main="Lathi",
  293.         head="Merlinic Hood",neck="Mizukage-no-Kubikazari",
  294.         hands="Amalric Gages",
  295.         ring2="Shiva Ring +1",ring1="Mujin Band",
  296.         legs="Merlinic Shalwar",
  297.         feet="Merlinic Crackows",back="Toro Cape"}
  298.  
  299.        sets.DeathMB = {main="Lathi",
  300.         head="Pixie Hairpin +1",neck="Mizukage-no-Kubikazari",waist="Hachirin-no-obi",
  301.         body={ name="Merlinic Jubbah", augments={'Mag. Acc.+18 "Mag.Atk.Bns."+18','Magic burst mdg.+11%','INT+3','"Mag.Atk.Bns."+4',}},
  302.         hands="Amalric Gages",ear1="Friomisi Earring",ear2="Barkarole Earring",
  303.         ring1="Sangoma Ring",ring2="Mujin Band",
  304.         feet="Helios Boots",back="Bane Cape"}
  305.  
  306.        
  307.        
  308.    -- Engaged sets
  309.  
  310.    -- Variations for TP weapon and (optional) offense/defense modes.  Code will fall back on previous
  311.    -- sets if more refined versions aren't defined.
  312.    -- If you create a set with both offense and defense modes, the offense mode should be first.
  313.    -- EG: sets.engaged.Dagger.Accuracy.Evasion
  314.    
  315.    -- Normal melee group
  316.    sets.engaged = {main="Lathi",sub="Niobid Strap",ammo="Pemphredo Tathlum",
  317.        head="Merlinic Hood",neck="Eddy Necklace",ear1="Friomisi Earring",ear2="Barkarole Earring",
  318.        body={ name="Merlinic Jubbah", augments={'Mag. Acc.+18 "Mag.Atk.Bns."+18','Magic burst mdg.+11%','INT+3','"Mag.Atk.Bns."+4',}},
  319.         hands="Amalric Gages",ring1="Shiva Ring",ring2="Shiva Ring +1",
  320.        back="Bane Cape",waist="Refoccilation Stone",legs="Merlinic Shalwar",feet="Merlinic Crackows"}
  321. end
  322.  
  323. -------------------------------------------------------------------------------------------------------------------
  324. -- Job-specific hooks for standard casting events.
  325. -------------------------------------------------------------------------------------------------------------------
  326.  
  327. -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
  328. -- Set eventArgs.useMidcastGear to true if we want midcast gear equipped on precast.
  329. function job_precast(spell, action, spellMap, eventArgs)
  330.  
  331. end
  332.  
  333.  
  334. -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
  335. function job_midcast(spell, action, spellMap, eventArgs)
  336.  
  337. end
  338.  
  339. function job_post_midcast(spell, action, spellMap, eventArgs)
  340.    if spell.skill == 'Elemental Magic' and state.MagicBurst.value then
  341.        equip(sets.magic_burst)
  342.    elseif spell.skill == 'Elemental Magic' and state.ArtifactBody.value then
  343.         equip(sets.af_body)
  344.     end
  345. end
  346.  
  347. --function job_post_midcast(spell, action, spellMap, eventArgs)
  348.     --if spell.english == 'Death' and state.MagicBurst.value then
  349.         --equip(sets.DeathMB)
  350.     --elseif spell.name == 'Death' and state.ArtifactBody.value then
  351.         --equip(sets.af.body)
  352.     --end
  353. --end
  354.  
  355. function job_aftercast(spell, action, spellMap, eventArgs)
  356.    -- Lock feet after using Mana Wall.
  357.    if not spell.interrupted then
  358.        if spell.english == 'Mana Wall' then
  359.            enable('feet')
  360.            equip(sets.buff['Mana Wall'])
  361.            disable('feet')
  362.        --elseif spell.skill == 'Elemental Magic' then
  363.            --state.MagicBurst:reset()
  364.        end
  365.    end
  366. end
  367.  
  368.  
  369. -------------------------------------------------------------------------------------------------------------------
  370. -- Job-specific hooks for non-casting events.
  371. -------------------------------------------------------------------------------------------------------------------
  372.  
  373. -- Called when a player gains or loses a buff.
  374. -- buff == buff gained or lost
  375. -- gain == true if the buff was gained, false if it was lost.
  376. function job_buff_change(buff, gain)
  377.    -- Unlock feet when Mana Wall buff is lost.
  378.    if buff == "Mana Wall" and not gain then
  379.        enable('feet')
  380.        handle_equipping_gear(player.status)
  381.    end
  382. end
  383.  
  384. -- Handle notifications of general user state change.
  385. function job_state_change(stateField, newValue, oldValue)
  386.    --[[if stateField == 'Offense Mode' then
  387.        if newValue == 'Normal' then
  388.            disable('main','sub','range')
  389.        else
  390.            enable('main','sub','range')
  391.        end
  392.    end]]--
  393. end
  394.  
  395.  
  396. -------------------------------------------------------------------------------------------------------------------
  397. -- User code that supplements standard library decisions.
  398. -------------------------------------------------------------------------------------------------------------------
  399.  
  400. -- Custom spell mapping.
  401. function job_get_spell_map(spell, default_spell_map)
  402.    if spell.skill == 'Elemental Magic' and default_spell_map ~= 'ElementalEnfeeble' then
  403.        if lowTierNukes:contains(spell.english) then
  404.            return 'LowTierNuke'
  405.        else
  406.            return 'HighTierNuke'
  407.        end
  408.    end
  409. end
  410.  
  411.    
  412. -- Modify the default idle set after it was constructed.
  413. function customize_idle_set(idleSet)
  414.    if player.mpp < 51 then
  415.        idleSet = set_combine(idleSet, sets.latent_refresh)
  416.    end
  417.    
  418.    return idleSet
  419. end
  420.  
  421.  
  422. -- Function to display the current relevant user state when doing an update.
  423. function display_current_job_state(eventArgs)
  424.    display_current_caster_state()
  425.    eventArgs.handled = true
  426. end
  427.  
  428. -------------------------------------------------------------------------------------------------------------------
  429. -- Utility functions specific to this job.
  430. -------------------------------------------------------------------------------------------------------------------
  431.  
  432. -- Select default macro book on initial load or subjob change.
  433. function select_default_macro_book()
  434.    set_macro_page(1, 3)
  435. end
Advertisement
Add Comment
Please, Sign In to add comment