SHARE
TWEET

Untitled

a guest Jun 4th, 2018 105 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. -------------------------------------------------------------------------------------------------------------------
  2. -- Setup functions for this job.  Generally should not be modified.
  3. -------------------------------------------------------------------------------------------------------------------
  4.  
  5. -- Initialization function for this job file.
  6. function get_sets()
  7.     mote_include_version = 2
  8.    
  9.     -- Load and initialize the include file.
  10.     include('Mote-Include.lua')
  11. end
  12.  
  13.  
  14. -- Setup vars that are user-independent.  state.Buff vars initialized here will automatically be tracked.
  15. function job_setup()
  16.  
  17. end
  18.  
  19. -------------------------------------------------------------------------------------------------------------------
  20. -- User setup functions for this job.  Recommend that these be overridden in a sidecar file.
  21. -------------------------------------------------------------------------------------------------------------------
  22.  
  23. -- Setup vars that are user-dependent.  Can override this function in a sidecar file.
  24. function user_setup()
  25.     state.OffenseMode:options('Normal','DD')
  26.     state.CastingMode:options('Normal','ConserveMP','MACC')
  27.     state.IdleMode:options('Normal')
  28.    
  29.     state.MagicBurst = M(false, 'Magic Burst')
  30.    
  31.     -- Additional local binds
  32.     send_command('bind ^s input /ma Stun <t>')
  33.     send_command('bind ^p gs c cycle CastingMode')
  34.     send_command('bind ^o gs c toggle MagicBurst')
  35.     send_command('bind ^i gs c cycle IdleMode')    
  36.     send_command('bind ^h input /ma Haste <me>')
  37.     send_command('bind ^. input /ma Blink <me>')
  38.     send_command('bind ^/ input /ma Stoneskin <me>')
  39.     send_command('bind ^, input /ma Phalanx <me>')
  40.     send_command('bind ^c input /ma "Cure IV" <me>')
  41.     send_command('bind ^d input /ma "Diaga" <t>')
  42.     send_command('bind ^g input /ma Gravity <t>')
  43.     send_command('bind ^b input /ma Bind <t>') 
  44.     send_command('bind ^a input /item "Holy Water" <me>')
  45.     send_command('bind ^z input /item Panacea <me>')       
  46.     send_command('bind ^k input /ma Klimaform <me>')
  47.     send_command('bind ^l input /ma Aquaveil <me>')
  48.     send_command('bind ^t input /ma "Thunder I" <t>')
  49.     send_command('bind ^b input /ma "Blizzard I" <t>')
  50.     send_command('bind ^d input /ma "Watre I" <t>')
  51.     send_command('bind ^f input /ma "Fire I" <t>')
  52.     send_command('bind ^m input /ws Myrkr <me>')   
  53.     send_command('bind ^q input /item "Remedy" <me>')
  54.     send_command('bind ^g input /recast Stratagems <me>')
  55.  
  56.    
  57.    
  58.     select_default_macro_book()
  59. end
  60.  
  61. -- Called when this job file is unloaded (eg: job change)
  62.  
  63.  
  64. -- Define sets and vars used by this job file.
  65. function init_gear_sets()
  66.        
  67.     --------------------------------------
  68.     -- Start defining the sets
  69.     --------------------------------------
  70.     -- Obi --
  71.    
  72.     sets['Lightning'] = {waist="Hachirin-no-Obi"}
  73.     sets['Ice'] = {waist="Hachirin-no-Obi"}
  74.     sets['Water'] = {waist="Hachirin-no-Obi"}
  75.     sets['Fire'] = {waist="Hachirin-no-Obi"}
  76.     sets['Earth'] = {waist="Hachirin-no-Obi"}
  77.     sets['Wind'] = {waist="Hachirin-no-Obi"}
  78.     sets['Light'] = {waist="Hachirin-no-Obi",back="Twilight Cape"}
  79.     sets['Dark'] = {waist="Hachirin-no-Obi"}
  80.    
  81.     gear.default.obi_waist = "Refoccilation Stone"
  82.    
  83.     ---- Precast Sets ----
  84.    
  85.     -- Precast sets to enhance JAs
  86.     sets.precast.JA['Mana Wall'] = {feet="Wicce Sabots +1",
  87.     back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10','Phys. dmg. taken-10%',}},}
  88.  
  89.     sets.precast.JA.Manafont = {body={ name="Arch. Coat", augments={'Enhances "Manafont" effect',}},}
  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="Sapience Orb",
  98.     head={ name="Merlinic Hood", augments={'"Mag.Atk.Bns."+30','"Fast Cast"+7','Mag. Acc.+13',}},
  99.     body={ name="Merlinic Jubbah", augments={'Mag. Acc.+16','"Fast Cast"+6','CHR+8','"Mag.Atk.Bns."+8',}},
  100.     hands={ name="Merlinic Dastanas", augments={'Mag. Acc.+3','"Fast Cast"+7','"Mag.Atk.Bns."+12',}},
  101.     legs={ name="Psycloth Lappas", augments={'MP+80','Mag. Acc.+15','"Fast Cast"+7',}},
  102.     feet={ name="Merlinic Crackows", augments={'"Fast Cast"+7','INT+6','Mag. Acc.+14','"Mag.Atk.Bns."+3',}},
  103.     neck="Orunmila's Torque",
  104.     waist="Witful Belt",
  105.     left_ear="Loquac. Earring",
  106.     right_ear="Etiolation Earring",
  107.     left_ring="Kishar Ring",
  108.     right_ring="Metamorph Ring",
  109.     back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','"Fast Cast"+10',}},}
  110.        
  111.     sets.precast.FC['Elemental Magic'] = set_combine(sets.precast.FC, {right_ear="Barkaro. Earring",
  112.     right_ring="Lebeche Ring"})
  113.    
  114.     sets.precast.FC.Cure = {ammo="Pemphredo Tathlum",
  115.     head={ name="Vanya Hood", augments={'MP+50','"Cure" potency +7%','Enmity-6',}},
  116.     body="Vrikodara Jupon",
  117.     hands="Jhakri Cuffs +2",
  118.     legs="Doyen Pants",
  119.     feet={ name="Vanya Clogs", augments={'"Cure" potency +5%','"Cure" spellcasting time -15%','"Conserve MP"+6',}},
  120.     neck="Phalaina Locket",
  121.     waist="Luminary Sash",
  122.     left_ear="Regal Earring",
  123.     right_ear="Mendi. Earring",
  124.     left_ring="Lebeche Ring",
  125.     right_ring="Sirona's Ring",
  126.     back="Oretan. Cape +1",}
  127.        
  128.         sets.precast.FC.Curaga = sets.precast.FC.Cure
  129.        
  130.     -- Weaponskill sets
  131.     -- Default set for any weaponskill that isn't any more specifically defined
  132.     sets.precast.WS = {}
  133.  
  134.     -- Specific weaponskill sets.  Uses the base set if an appropriate WSMod version isn't found.
  135.     sets.precast.WS['Vidohunir'] = {}
  136.        
  137.     sets.precast.WS['Myrkr'] = {ammo="Pemphredo Tathlum",
  138.     head="Pixie Hairpin +1",
  139.     body={ name="Amalric Doublet +1", augments={'MP+80','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  140.     hands={ name="Amalric Gages +1", augments={'INT+12','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  141.     legs={ name="Psycloth Lappas", augments={'MP+80','Mag. Acc.+15','"Fast Cast"+7',}},
  142.     feet={ name="Merlinic Crackows", augments={'Mag. Acc.+23 "Mag.Atk.Bns."+23','Magic burst dmg.+8%','CHR+7','Mag. Acc.+11','"Mag.Atk.Bns."+13',}},
  143.     neck="Sanctity Necklace",
  144.     waist="Luminary Sash",
  145.     left_ear="Evans Earring",
  146.     right_ear="Etiolation Earring",
  147.     left_ring="Metamorph Ring",
  148.     right_ring="Mujin Band",
  149.     back="Bane Cape",}
  150.    
  151.     ---- Midcast Sets ----
  152.  
  153.     sets.midcast.FastRecast = {ammo="Sapience Orb",
  154.     head={ name="Merlinic Hood", augments={'"Mag.Atk.Bns."+30','"Fast Cast"+7','Mag. Acc.+13',}},
  155.     body={ name="Merlinic Jubbah", augments={'Mag. Acc.+16','"Fast Cast"+6','CHR+8','"Mag.Atk.Bns."+8',}},
  156.     hands={ name="Merlinic Dastanas", augments={'Mag. Acc.+3','"Fast Cast"+7','"Mag.Atk.Bns."+12',}},
  157.     legs={ name="Psycloth Lappas", augments={'MP+80','Mag. Acc.+15','"Fast Cast"+7',}},
  158.     feet={ name="Merlinic Crackows", augments={'"Fast Cast"+7','INT+6','Mag. Acc.+14','"Mag.Atk.Bns."+3',}},
  159.     neck="Stoicheion Medal",
  160.     waist="Witful Belt",
  161.     left_ear="Loquac. Earring",
  162.     right_ear="Etiolation Earring",
  163.     left_ring="Kishar Ring",
  164.     right_ring="Metamorph Ring",
  165.     back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','"Fast Cast"+10',}},}
  166.  
  167.     sets.midcast.Cure = {ammo="Staunch Tathlum",
  168.     head={ name="Merlinic Hood", augments={'Mag. Acc.+7','Phys. dmg. taken -3%','MND+7','"Mag.Atk.Bns."+6',}},
  169.     body="Vrikodara Jupon",
  170.     hands={ name="Amalric Gages +1", augments={'INT+12','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  171.     legs="Assid. Pants +1",
  172.     feet="Jhakri Pigaches +2",
  173.     neck="Loricate Torque +1",
  174.     waist="Fucho-no-Obi",
  175.     left_ear="Evans Earring",
  176.     right_ear="Etiolation Earring",
  177.     left_ring="Stikini Ring",
  178.     right_ring="Stikini Ring",
  179.     back="Moonbeam Cape",}
  180.        
  181.     sets.midcast['Enhancing Magic'] = {ammo="Pemphredo Tathlum",
  182.     head="Befouled Crown",
  183.     body="Manasa Chasuble",
  184.     hands={ name="Amalric Gages +1", augments={'INT+12','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  185.     legs="Jhakri Slops +2",
  186.     feet="Jhakri Pigaches +2",
  187.     neck="Incanter's Torque",
  188.     waist="Olympus Sash",
  189.     left_ear="Regal Earring",
  190.     right_ear="Andoaa Earring",
  191.     left_ring="Stikini Ring",
  192.     right_ring="Stikini Ring",
  193.     back="Perimede Cape",}
  194.    
  195.        
  196.     sets.midcast.Warp = sets.midcast.FastRecast
  197.    
  198.     sets.midcast.Haste = set_combine(sets.midcast.FastCast,
  199.         {})
  200.        
  201.     sets.midcast.Refresh = {ammo="Staunch Tathlum",feet="Inspirited Boots",}
  202.     sets.midcast.Blink = sets.midcast.FastRecast
  203.     sets.midcast.Stoneskin = set_combine(sets.midcast.FastCast,
  204.         {waist="Siegel Sash",legs="Doyen Pants",})
  205.    
  206.     sets.midcast.Phalanx = {ammo="Pemphredo Tathlum",
  207.     head="Ea Hat +1",
  208.     body="Spaekona's Coat +3",
  209.     hands="Jhakri Cuffs +2",
  210.     legs="Jhakri Slops +2",
  211.     feet="Jhakri Pigaches +2",
  212.     neck="Incanter's Torque",
  213.     waist="Olympus Sash",
  214.     left_ear="Regal Earring",
  215.     right_ear="Andoaa Earring",
  216.     left_ring="Stikini Ring",
  217.     right_ring="Stikini Ring",
  218.     back="Perimede Cape",} 
  219.    
  220.     sets.midcast['Enfeebling Magic'] = {ammo="Pemphredo Tathlum",
  221.     head="Befouled Crown",
  222.     body="Spaekona's Coat +3",
  223.     hands={ name="Amalric Gages +1", augments={'INT+12','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  224.     legs={ name="Psycloth Lappas", augments={'MP+80','Mag. Acc.+15','"Fast Cast"+7',}},
  225.     feet={ name="Merlinic Crackows", augments={'Mag. Acc.+23 "Mag.Atk.Bns."+23','Magic burst dmg.+8%','CHR+7','Mag. Acc.+11','"Mag.Atk.Bns."+13',}},
  226.     neck="Incanter's Torque",
  227.     waist="Rumination Sash",
  228.     left_ear="Regal Earring",
  229.     right_ear="Barkaro. Earring",
  230.     left_ring="Shiva Ring +1",
  231.     right_ring="Vertigo Ring",
  232.     back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10','Phys. dmg. taken-10%',}},}  
  233.        
  234.     sets.midcast.ElementalEnfeeble = sets.midcast['Enfeebling Magic']
  235.  
  236.     sets.midcast['Dark Magic'] = {ammo="Pemphredo Tathlum",
  237.     head="Pixie Hairpin +1",
  238.     body={ name="Amalric Doublet +1", augments={'MP+80','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  239.     hands={ name="Amalric Gages +1", augments={'INT+12','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  240.     legs="Spae. Tonban +3",
  241.     feet={ name="Merlinic Crackows", augments={'Mag. Acc.+23 "Mag.Atk.Bns."+23','Magic burst dmg.+8%','CHR+7','Mag. Acc.+11','"Mag.Atk.Bns."+13',}},
  242.     neck="Erra Pendant",
  243.     waist="Fucho-no-Obi",
  244.     left_ear="Regal Earring",
  245.     right_ear="Etiolation Earring",
  246.     left_ring="Evanescence Ring",
  247.     right_ring="Archon Ring",
  248.     back="Perimede Cape",}
  249.  
  250.     sets.midcast.Drain = {ammo="Pemphredo Tathlum",
  251.     head="Pixie Hairpin +1",
  252.     body={ name="Merlinic Jubbah", augments={'Mag. Acc.+23','"Drain" and "Aspir" potency +10','CHR+1','"Mag.Atk.Bns."+13',}},
  253.     hands={ name="Merlinic Dastanas", augments={'Mag. Acc.+24','"Drain" and "Aspir" potency +10','CHR+6','"Mag.Atk.Bns."+12',}},
  254.     legs="Spae. Tonban +3",
  255.     feet={ name="Merlinic Crackows", augments={'"Drain" and "Aspir" potency +10','CHR+5','Mag. Acc.+13','"Mag.Atk.Bns."+5',}},
  256.     neck="Erra Pendant",
  257.     waist="Fucho-no-Obi",
  258.     left_ear="Barkaro. Earring",
  259.     right_ear="Etiolation Earring",
  260.     left_ring="Evanescence Ring",
  261.     right_ring="Archon Ring",
  262.     back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10','Phys. dmg. taken-10%',}},}
  263.    
  264.     sets.midcast.Drain.Death = {ammo="Pemphredo Tathlum",
  265.     head="Pixie Hairpin +1",
  266.     body={ name="Merlinic Jubbah", augments={'Mag. Acc.+23','"Drain" and "Aspir" potency +10','CHR+1','"Mag.Atk.Bns."+13',}},
  267.     hands={ name="Merlinic Dastanas", augments={'Mag. Acc.+24','"Drain" and "Aspir" potency +10','CHR+6','"Mag.Atk.Bns."+12',}},
  268.     legs="Spae. Tonban +3",
  269.     feet={ name="Merlinic Crackows", augments={'"Drain" and "Aspir" potency +10','CHR+5','Mag. Acc.+13','"Mag.Atk.Bns."+5',}},
  270.     neck="Erra Pendant",
  271.     waist="Fucho-no-Obi",
  272.     left_ear="Barkaro. Earring",
  273.     right_ear="Etiolation Earring",
  274.     left_ring="Evanescence Ring",
  275.     right_ring="Archon Ring",
  276.     back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10','Phys. dmg. taken-10%',}},}
  277.    
  278.     sets.midcast.Aspir = sets.midcast.Drain
  279.     sets.midcast["Aspir II"] = sets.midcast.Drain
  280.     sets.midcast["Aspir III"] = sets.midcast.Drain
  281.            
  282.     sets.midcast.Stun = {ammo="Pemphredo Tathlum",
  283.     head="Pixie Hairpin +1",
  284.     body={ name="Amalric Doublet +1", augments={'MP+80','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  285.     hands={ name="Amalric Gages +1", augments={'INT+12','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  286.     legs="Spae. Tonban +3",
  287.     feet={ name="Merlinic Crackows", augments={'"Fast Cast"+7','INT+6','Mag. Acc.+14','"Mag.Atk.Bns."+3',}},
  288.     neck="Erra Pendant",
  289.     waist="Fucho-no-Obi",
  290.     left_ear="Regal Earring",
  291.     right_ear="Etiolation Earring",
  292.     left_ring="Evanescence Ring",
  293.     right_ring="Archon Ring",
  294.     back="Perimede Cape",}
  295.  
  296.  
  297.     -- Elemental Magic sets
  298.    
  299.     sets.midcast['Elemental Magic'] = {ammo="Pemphredo Tathlum",
  300.     head="Ea Hat +1",
  301.     body={ name="Amalric Doublet +1", augments={'MP+80','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  302.     hands={ name="Amalric Gages +1", augments={'INT+12','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  303.     legs="Ea Slops +1",
  304.     feet={ name="Merlinic Crackows", augments={'Mag. Acc.+23 "Mag.Atk.Bns."+23','Magic burst dmg.+8%','CHR+7','Mag. Acc.+11','"Mag.Atk.Bns."+13',}},
  305.     neck="Saevus Pendant +1",
  306.     waist="Refoccilation Stone",
  307.     left_ear="Regal Earring",
  308.     right_ear="Barkaro. Earring",
  309.     left_ring="Shiva Ring +1",
  310.     right_ring="Shiva Ring +1",
  311.     back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10','Phys. dmg. taken-10%',}},}
  312.    
  313.     sets.midcast['Elemental Magic'].MACC = {ammo="Pemphredo Tathlum",
  314.     head="Ea Hat +1",
  315.     body={ name="Amalric Doublet +1", augments={'MP+80','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  316.     hands={ name="Amalric Gages +1", augments={'INT+12','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  317.     legs="Ea Slops +1",
  318.     feet={ name="Merlinic Crackows", augments={'Mag. Acc.+23 "Mag.Atk.Bns."+23','Magic burst dmg.+8%','CHR+7','Mag. Acc.+11','"Mag.Atk.Bns."+13',}},
  319.     neck="Sanctity Necklace",
  320.     waist="Refoccilation Stone",
  321.     left_ear="Regal Earring",
  322.     right_ear="Barkaro. Earring",
  323.     left_ring="Shiva Ring +1",
  324.     right_ring="Shiva Ring +1",
  325.     back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10','Phys. dmg. taken-10%',}},}
  326.    
  327.     sets.midcast['Elemental Magic'].ConserveMP = {ammo="Pemphredo Tathlum",
  328.     head="Ea Hat +1",
  329.     body={ name="Amalric Doublet +1", augments={'MP+80','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  330.     hands={ name="Amalric Gages +1", augments={'INT+12','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  331.     legs="Ea Slops +1",
  332.     feet={ name="Merlinic Crackows", augments={'Mag. Acc.+23 "Mag.Atk.Bns."+23','Magic burst dmg.+8%','CHR+7','Mag. Acc.+11','"Mag.Atk.Bns."+13',}},
  333.     neck="Saevus Pendant +1",
  334.     waist="Refoccilation Stone",
  335.     left_ear="Regal Earring",
  336.     right_ear="Barkaro. Earring",
  337.     left_ring="Shiva Ring +1",
  338.     right_ring="Shiva Ring +1",
  339.     back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10','Phys. dmg. taken-10%',}},}
  340.        
  341.     sets.magic_burst = {ammo="Pemphredo Tathlum",
  342.     head="Ea Hat +1",
  343.     body="Spaekona's Coat +3",
  344.     hands={ name="Amalric Gages +1", augments={'INT+12','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  345.     legs="Ea Slops +1",
  346.     feet={ name="Merlinic Crackows", augments={'Mag. Acc.+23 "Mag.Atk.Bns."+23','Magic burst dmg.+8%','CHR+7','Mag. Acc.+11','"Mag.Atk.Bns."+13',}},
  347.     neck="Mizu. Kubikazari",
  348.     waist="Hachirin-no-Obi",
  349.     left_ear="Regal Earring",
  350.     right_ear="Barkaro. Earring",
  351.     left_ring="Mujin Band",
  352.     right_ring="Locus Ring",
  353.     back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10','Phys. dmg. taken-10%',}},}  
  354.        
  355.     sets.magic_burst.ConserveMP = {ammo="Pemphredo Tathlum",
  356.     head="Ea Hat +1",
  357.     body="Spaekona's Coat +3",
  358.     hands={ name="Amalric Gages +1", augments={'INT+12','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  359.     legs="Ea Slops +1",
  360.     feet={ name="Merlinic Crackows", augments={'Mag. Acc.+23 "Mag.Atk.Bns."+23','Magic burst dmg.+8%','CHR+7','Mag. Acc.+11','"Mag.Atk.Bns."+13',}},
  361.     neck="Mizu. Kubikazari",
  362.     waist="Hachirin-no-Obi",
  363.     left_ear="Regal Earring",
  364.     right_ear="Barkaro. Earring",
  365.     left_ring="Mujin Band",
  366.     right_ring="Locus Ring",
  367.     back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10','Phys. dmg. taken-10%',}},}
  368.    
  369.     sets.magic_burst.MACC = {ammo="Pemphredo Tathlum",
  370.     head="Ea Hat +1",
  371.     body="Spaekona's Coat +3",
  372.     hands={ name="Amalric Gages +1", augments={'INT+12','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  373.     legs="Ea Slops +1",
  374.     feet={ name="Merlinic Crackows", augments={'Mag. Acc.+23 "Mag.Atk.Bns."+23','Magic burst dmg.+8%','CHR+7','Mag. Acc.+11','"Mag.Atk.Bns."+13',}},
  375.     neck="Sanctity Necklace",
  376.     waist="Refoccilation Stone",
  377.     left_ear="Regal Earring",
  378.     right_ear="Barkaro. Earring",
  379.     left_ring="Shiva Ring +1",
  380.     right_ring="Shiva Ring +1",
  381.     back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10','Phys. dmg. taken-10%',}},}  
  382.        
  383.     -- Sets to return to when not performing an action.
  384.    
  385.     -- Idle sets
  386.    
  387.     -- Normal refresh idle set
  388.     sets.idle = {ammo="Staunch Tathlum",
  389.     head="Befouled Crown",
  390.     body={ name="Amalric Doublet +1", augments={'MP+80','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  391.     hands={ name="Amalric Gages +1", augments={'INT+12','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  392.     legs="Assid. Pants +1",
  393.     feet="Herald's Gaiters",
  394.     neck="Loricate Torque +1",
  395.     waist="Fucho-no-Obi",
  396.     left_ear="Regal Earring",
  397.     right_ear="Etiolation Earring",
  398.     left_ring="Vocane Ring",
  399.     right_ring="Defending Ring",
  400.     back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10','Phys. dmg. taken-10%',}},}
  401.    
  402.     -- Idle mode scopes:
  403.     -- Idle mode when weak.
  404.  
  405.     -- Defense sets
  406.  
  407.     sets.defense.PDT = {ammo="Staunch Tathlum",
  408.     head={ name="Merlinic Hood", augments={'Mag. Acc.+7','Phys. dmg. taken -3%','MND+7','"Mag.Atk.Bns."+6',}},
  409.     body="Mallquis Saio +2",
  410.     hands={ name="Merlinic Dastanas", augments={'"Mag.Atk.Bns."+24','Phys. dmg. taken -2%','STR+8',}},
  411.     legs={ name="Merlinic Shalwar", augments={'Mag. Acc.+19','Phys. dmg. taken -3%','STR+2',}},
  412.     feet="Hippomenes Socks",
  413.     neck="Loricate Torque +1",
  414.     waist="Luminary Sash",
  415.     left_ear="Halasz Earring",
  416.     right_ear="Etiolation Earring",
  417.     left_ring="Vocane Ring",
  418.     right_ring="Defending Ring",
  419.     back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10','Phys. dmg. taken-10%',}},}
  420.  
  421.     sets.Kiting = {feet="Herald's Gaiters"}
  422.  
  423.  
  424.     -- Buff sets: Gear that needs to be worn to actively enhance a current player buff.
  425.    
  426.     sets.buff['Mana Wall'] = {feet="Wicce Sabots +1",back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10',}},}
  427.    
  428.  
  429.     -- Engaged sets
  430.    
  431.     sets.engaged.DD = {ammo="Jukukik Feather",
  432.     head="Jhakri Coronal +1",
  433.     body={ name="Amalric Doublet +1", augments={'MP+80','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  434.     hands={ name="Amalric Gages +1", augments={'INT+12','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
  435.     legs="Jhakri Slops +2",
  436.     feet="Jhakri Pigaches +2",
  437.     neck="Combatant's Torque",
  438.     waist="Goading Belt",
  439.     left_ear="Cessance Earring",
  440.     right_ear="Telos Earring",
  441.     left_ring="Petrov Ring",
  442.     right_ring="Hetairoi Ring",
  443.     back={ name="Taranus's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10','Phys. dmg. taken-10%',}},}
  444.  
  445.     -- Variations for TP weapon and (optional) offense/defense modes.  Code will fall back on previous
  446.     -- sets if more refined versions aren't defined.
  447.     -- If you create a set with both offense and defense modes, the offense mode should be first.
  448.     -- EG: sets.engaged.Dagger.Accuracy.Evasion
  449.    
  450.    
  451.     -- Normal melee group
  452.    
  453.     sets.obi ={"Hachirin-no-Obi"}
  454.  
  455.        
  456. end
  457.  
  458. -------------------------------------------------------------------------------------------------------------------
  459. -- Job-specific hooks for standard casting events.
  460. -------------------------------------------------------------------------------------------------------------------
  461. function job_setup()
  462.    state.BurstMode = M{['description']='Magic Burst Mode', 'MB1', 'MB2','MBMacc'}
  463. end
  464. -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
  465. -- Set eventArgs.useMidcastGear to true if we want midcast gear equipped on precast.
  466. function job_precast(spell, action, spellMap, eventArgs)
  467.     if buffactive ['storm'] then
  468.     equip(sets.obi)
  469.     end
  470.     if spellMap == 'Cure' or spellMap == 'Curaga' then
  471.         gear.default.obi_waist = "Refoccilation Stone"
  472.     elseif spell.skill == 'Elemental Magic' then
  473.         if state.CastingMode.value == 'Proc' then
  474.             classes.CustomClass = 'Proc'
  475.         end
  476.     end
  477. end
  478. function job_post_precast(spell, action, spellMap, eventArgs)
  479.             if spell.english == "Vidohunir" and (buffactive['Voidstorm'] or buffactive['Voidstorm II']) then
  480.         --print('weather mode')
  481.         equip({waist="Hachirin-no-Obi"})
  482.     end
  483.             if spell.english == "Sunburst" or "Starburst" and (buffactive['Voidstorm'] or buffactive['Voidstorm II']) then
  484.         --print('weather mode')
  485.         equip({waist="Hachirin-no-Obi"})
  486.     end
  487.             if spell.english == "Rock Crusher" or "Earth Crusher" and (buffactive['Sandstorm'] or buffactive['Sandstorm II']) then
  488.         --print('weather mode')
  489.         equip({waist="Hachirin-no-Obi"})
  490. end
  491. end
  492.  
  493. -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
  494. function job_midcast(spell, action, spellMap, eventArgs)
  495.  
  496. end
  497.  
  498. function job_post_midcast(spell, action, spellMap, eventArgs)
  499.     if spell.skill == 'Elemental Magic' or spell.english == "Kaustra" then
  500.         if (spell.element == world.day_element or spell.element == world.weather_element) then
  501.             equip(sets.Obi)
  502.         end
  503. if spell.action_type == 'Magic' then
  504.     if spell.element == "Earth" and spell.skill == 'Elemental Magic' and (state.CastingMode.value == "Normal" or state.CastingMode.value == "ConserveMP")  then
  505.         equip({ neck="Quanpur Necklace" })
  506.     end
  507.         if spellMap == 'Cure' and spell.target.type == 'SELF' then
  508.         equip(sets.midcast.CureSelf)
  509.     end
  510.         if spell.skill == 'Elemental Magic' and state.MagicBurst.value then
  511.         if state.CastingMode.value == "ConserveMP" then
  512.             equip(sets.magic_burst.ConserveMP)     
  513.         elseif state.CastingMode.value == "MACC" then
  514.         equip(sets.magic_burst.MACC)        
  515.         else
  516.         equip(sets.magic_burst)
  517.         end
  518.          if spell.english == "Impact" then
  519.             equip(sets.midcast.Impact)
  520.     if  spell.element == world.weather_element or spell.element == world.day_element or
  521.             (spell.element == 'Lightning' and buffactive['Thunderstorm']) or
  522.             (spell.element == 'Ice' and buffactive['Hailstorm']) or
  523.             (spell.element == 'Water' and buffactive['Rainstorm']) or
  524.             (spell.element == 'Fire' and buffactive['Firestorm']) or
  525.             (spell.element == 'Earth' and buffactive['Sandstorm']) or
  526.             (spell.element == 'Wind' and buffactive['Windstorm']) or
  527.             (spell.element == 'Light' and buffactive['Aurorastorm']) or
  528.             (spell.element == 'Dark' and buffactive['Voidstorm']) then
  529.         if spell.skill == 'Elemental Magic' and spellMap ~= 'Helix' then
  530.             equip(sets[spell.element])
  531.         elseif string.find(spell.english,'Cure') then
  532.             equip(sets[spell.element])
  533.         end
  534.     end
  535.         end
  536.         end
  537. end
  538. end
  539. end
  540.  
  541. function job_aftercast(spell, action, spellMap, eventArgs)
  542.     -- Lock feet after using Mana Wall.
  543.     if not spell.interrupted then
  544.         if spell.english == 'Mana Wall' then
  545.             enable('feet','back')
  546.             equip(sets.buff['Mana Wall'])
  547.             disable('feet','back')  
  548.  
  549.         end
  550.     end
  551.         if not spell.interrupted then
  552.         if spell.english == 'Break' or spell.english == 'Breakga' then
  553.             send_command('@timers c "'..spell.english..' ['..spell.target.name..']" 33 down spells/00220.png')
  554.         elseif spell.english == 'Sleep' or spell.english == 'Sleepga' then
  555.             send_command('@timers c "'..spell.english..' ['..spell.target.name..']" 66 down spells/00220.png')
  556.         elseif spell.english == 'Sleep II' or spell.english == 'Sleepga II' then
  557.             send_command('@timers c "'..spell.english..' ['..spell.target.name..']" 99 down spells/00220.png')
  558.         end
  559.         classes.CustomIdleGroups:clear()
  560.     end
  561. end
  562.  
  563. -------------------------------------------------------------------------------------------------------------------
  564. -- Job-specific hooks for non-casting events.
  565. -------------------------------------------------------------------------------------------------------------------
  566.  
  567. -- Called when a player gains or loses a buff.
  568. -- buff == buff gained or lost
  569. -- gain == true if the buff was gained, false if it was lost.
  570. function job_buff_change(buff, gain)
  571.     -- Unlock feet when Mana Wall buff is lost.
  572.     if buff == "Mana Wall" and not gain then
  573.         enable('feet','back')
  574.         handle_equipping_gear(player.status)
  575.     end
  576. end
  577.  
  578. -- Handle notifications of general user state change.
  579. function job_state_change(stateField, newValue, oldValue)
  580. end
  581.  
  582.  
  583. -------------------------------------------------------------------------------------------------------------------
  584. -- User code that supplements standard library decisions.
  585. -------------------------------------------------------------------------------------------------------------------
  586.  
  587. -- Custom spell mapping.
  588. function job_get_spell_map(spell, default_spell_map)
  589.     if spell.action_type == 'Magic' then
  590.         if default_spell_map == 'Cure' or default_spell_map == 'Curaga' then
  591.             if world.weather_element == 'Light' then
  592.                 return 'CureWithLightWeather'
  593.             end
  594.             end
  595.         end
  596.     end
  597.  
  598. -- Modify the default idle set after it was constructed.
  599. function customize_idle_set(idleSet)
  600.     if player.mpp < 51 then
  601.         idleSet = set_combine(idleSet, sets.latent_refresh)
  602.     end
  603.    
  604.     return idleSet
  605. end
  606.  
  607.  
  608. -- Function to display the current relevant user state when doing an update.
  609. function display_current_job_state(eventArgs)
  610.     display_current_caster_state()
  611.     eventArgs.handled = true
  612. end
  613.  
  614. -------------------------------------------------------------------------------------------------------------------
  615. -- Utility functions specific to this job.
  616. -------------------------------------------------------------------------------------------------------------------
  617.  
  618. -- Select default macro book on initial load or subjob change.
  619. function select_default_macro_book()
  620.     set_macro_page(1,9)
  621. end
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Not a member of Pastebin yet?
Sign Up, it unlocks many cool features!
 
Top