Guest User

Untitled

a guest
Oct 2nd, 2017
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 7.46 KB | None | 0 0
  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','DPS','NIN')
  26.     state.WeaponskillMode:options('Normal', 'Acc')
  27.     state.RangedMode:options('Normal')
  28.     state.HybridMode:options('Normal')
  29.     state.WeaponskillMode:options('Normal')
  30.     state.CastingMode:options('Normal')
  31.     state.IdleMode:options('Normal', 'Refresh')
  32.     state.RestingMode:options('Normal')
  33.     state.PhysicalDefenseMode:options('PDT')
  34.     state.MagicalDefenseMode:options('MDT')
  35.    
  36.             -- Default macro set/book
  37.         set_macro_page(1, 4)
  38. end
  39.  
  40.  
  41. -- Called when this job file is unloaded (eg: job change)
  42. function user_unload()
  43.  
  44. end
  45.  
  46. function init_gear_sets()
  47.  
  48.     --------------------------------------
  49.         -- Start defining the sets
  50.         --------------------------------------
  51.        
  52.         -- Precast Sets
  53.        
  54.            
  55.     sets.precast.JA['Shield Bash'] = {head="Chaos Gauntlets"}
  56.        
  57.         -- Fast cast sets for spells
  58.         sets.precast.FC = {waist="Velocious Belt",ear2="Loquacious Earring",legs="Homam Cosciales"}
  59.  
  60.         -- sets.precast.FC.Utsusemi = set_combine(sets.precast.FC, {neck="Magoraga Beads"})
  61.    
  62.        
  63.         -- Weaponskill sets
  64.         -- Default set for any weaponskill that isn't any more specifically defined
  65.         sets.precast.WS = {
  66.         head="Hecatomb Cap +1",neck="Fotia Gorget",ear1="Assault Earring",ear2="Brutal Earring",
  67.         body="Hecatomb Harness",hands="Alkyoneus's Brc.",ring1="Flame Ring",ring2="Rajas Ring",
  68.         back="Cerberus Mantle +1",waist="Potent Belt",legs="Ryl.Kgt. Breeches",feet="Hecatomb Leggings +1"}
  69.  
  70.         -- Specific weaponskill sets. Uses the base set if an appropriate WSMod version isn't found.
  71.     sets.precast.WS['Vorpal Blade'] = set_combine(sets.precast.WS, {ear1="Abyssal Earring"})
  72.        
  73.        
  74.         -- Midcast Sets
  75.         sets.midcast.Cure = set_combine(sets.midcast.Enmity, {waist="Trance Belt"})
  76.        
  77.         sets.midcast.Flash = set_combine(sets.midcast.Enmity, {})
  78.        
  79.         sets.precast.Provoke = set_combine(sets.midcast.Enmity, {})
  80.        
  81.         sets.midcast['Utsusemi'] = set_combine(sets.midcast.Haste, {})
  82.                        
  83.         -- Specific spells
  84.         sets.midcast.Haste = {
  85.             head="Walahra Turban",
  86.             hands="Dusk Gloves +1",ring1="Blitz Ring",
  87.             waist="Velocious Belt",feet="Homam Gambieras",feet="Homam Gambieras"}
  88.        
  89.         -- Idle sets
  90.         sets.idle = {
  91.         neck="Parade Gorget",ear2="Loquacious Earring",
  92.         hands="Heavy Gauntlets",ring1="Jelly Ring",ring2="Bloodbead Ring",
  93.         back="Shadow Mantle",waist="Velocious Belt",legs="Crimson Cuisses"}
  94.        
  95.         sets.midcast.Enmity = {
  96.         head="Aegishjalmr",neck="Ritter Gorget",ear1="Hades Earring +1",ear2="Hades Earring +1",
  97.         body="Hydra Haubert",hands="Hydra Moufles",ring1="Hercule's Ring",ring2="Mermaids Ring",
  98.         back="Cerberus Mantle +1",legs="Hydra Brayettes",feet="Hydra Sollerets"}
  99.        
  100.         sets.PDT = {}
  101.        
  102.         sets.MDT = {}
  103.        
  104.         sets.FireRes = {}
  105.    
  106.         sets.Refresh = {
  107.             neck="Parade Gorget"}
  108.        
  109.         -- Defense sets
  110.         sets.defense.PDT = {}
  111.  
  112.         sets.defense.MDT = {}
  113.        
  114.         sets.Kiting = {legs="Crimson Cuisses"}
  115.        
  116.         -- Engaged sets
  117.  
  118.         -- Variations for TP weapon and (optional) offense/defense modes. Code will fall back on previous
  119.         -- sets if more refined versions aren't defined.
  120.         -- If you create a set with both offense and defense modes, the offense mode should be first.
  121.         -- EG: sets.engaged.Dagger.Accuracy.Evasion
  122.        
  123.         -- Normal melee group
  124.         sets.engaged = {
  125.             ammo="Bibiki Seashell",
  126.         head="Koenig Schaller",neck="Ritter Gorget",ear1="Ethereal Earring",ear2="Cassie Earring",
  127.         body="Valhalla Breastplate",hands="Koenig Handschuhs",ring1="Jelly Ring",ring2="",
  128.         back="Boxer's Mantle",waist="Warwolf Belt",legs="Crimson Cuisses",feet="Gallant Leggings"}
  129.  
  130.         sets.engaged.DPS = {
  131.         ammo="Bibiki Seashell",
  132.         head="Walahra Turban",neck="Peacock Amulet",ear1="Assault Earring",ear2="Brutal Earring",
  133.         body="Homam Corazza",hands="Dusk Gloves +1",ring1="Sniper's Ring +1",ring2="Rajas Ring",
  134.         back="Cerberus Mantle +1",waist="Velocious Belt",legs="Homam Cosciales",feet="Homam Gambieras"}
  135.  
  136.         sets.engaged.NIN = {
  137.         ammo="Bibiki Seashell",
  138.         head="Walahra Turban",neck="Ajase Beads",ear1="Cassie Earring",ear2="Brutal Earring",
  139.         body="Adaman Hauberk",hands="Dusk Gloves +1",ring1="Bloodbead Ring",ring2="Rajas Ring",
  140.         back="Gigant Mantle",waist="Velocious Belt",legs="Homam Cosciales",feet="Homam Gambieras"}
  141.  
  142. end
  143.  
  144. -------------------------------------------------------------------------------------------------------------------
  145. -- Idle
  146. -------------------------------------------------------------------------------------------------------------------
  147.  
  148. function customize_idle_set(idleSet)
  149.     if player.mpp < 71 then
  150.         idleSet = set_combine(idleSet, sets.Refresh)
  151.     end
  152.     return idleSet
  153. end
  154.  
  155. -------------------------------------------------------------------------------------------------------------------
  156. -- Job-specific hooks for non-casting events.
  157. -------------------------------------------------------------------------------------------------------------------
  158.  
  159. -- Called when a player gains or loses a buff.
  160. -- buff == buff gained or lost
  161. -- gain == true if the buff was gained, false if it was lost.
  162. function job_buff_change(buff, gain)
  163. if buff == "sleep" and gain and player.hp > 200 then
  164.                 equip({neck="Berserker's Torque"})
  165.                 else
  166.                 handle_equipping_gear(player.status)
  167.         end
  168. end
  169.    
  170. -------------------------------------------------------------------------------------------------------------------
  171. -- User code that supplements self-commands.
  172. -------------------------------------------------------------------------------------------------------------------
  173.  
  174.  
  175. -- Set eventArgs.handled to true if we don't want the automatic display to be run.
  176. function display_current_job_state(eventArgs)
  177.     local defenseString = ''
  178.     if state.Defense.Active then
  179.         local defMode = state.Defense.PhysicalMode
  180.         if state.Defense.Type == 'Magical' then
  181.             defMode = state.Defense.MagicalMode
  182.         end
  183.  
  184.         defenseString = 'Defense: '..state.Defense.Type..' '..defMode..', '
  185.     end
  186.  
  187.     add_to_chat(122,'Melee: '..state.OffenseMode..'/'..state.DefenseMode..', WS: '..state.WeaponskillMode..', '..defenseString..
  188.         'Kiting: '..on_off_names[state.Kiting])
  189.  
  190.  
  191.     eventArgs.handled = true
  192. end
Advertisement
Add Comment
Please, Sign In to add comment