Tiralay

Blank DRK lua

Nov 30th, 2017
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 7.92 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. -- User setup functions for this job.  Recommend that these be overridden in a sidecar file.
  15. -------------------------------------------------------------------------------------------------------------------
  16.  
  17. -- Setup vars that are user-dependent.  Can override this function in a sidecar file.
  18. function user_setup()
  19.     state.OffenseMode:options('Apoc', 'ApocAcc', 'ApocHighAcc', 'Rag', 'RagAcc', 'RagHighAcc', 'NoStpTrait', 'DW')
  20.     state.HybridMode:options ('Reraise')
  21.     state.WeaponskillMode:options('Normal', 'Acc')
  22.     state.CastingMode:options('Normal', 'Resistant')
  23.     state.PhysicalDefenseMode:options('PDT')
  24.     state.MagicalDefenseMode:options('MDT')
  25.  
  26. end
  27.  
  28.     -- Define sets and vars used by this job file.
  29.     function init_gear_sets()
  30.             --------------------------------------
  31.             -- Start defining the sets
  32.             --------------------------------------
  33.             -- Precast Sets
  34.             sets.WSDayBonus = {head="Gavialis Helm"}
  35.  
  36.             -- Precast sets to enhance JAs
  37.             sets.precast.JA['Diabolic Eye'] = {hands="Fallen's finger gauntlets +1"}
  38.             sets.precast.JA['Arcane Circle'] = {feet="Ignominy Sollerets +1"}
  39.             sets.precast.JA['Nether Void'] = {legs="Heathen's Flanchard +1"}
  40.             sets.precast.JA['Souleater'] = {head="Ignominy Burgeonet +1"}
  41.             sets.precast.JA['Weapon Bash'] = {hands="Ignominy Gauntlets +1"}
  42.             sets.precast.JA['Last Resort'] = back="Ankou's Mantle",feet="Fallen's Sollerets"}
  43.             sets.precast.JA['Dark Seal'] = {head="Fallen's Burgeonet"}
  44.             sets.precast.JA['Blood Weapon'] = {head="Fallen's Cuirass"}
  45.  
  46.              
  47.            -- Waltz set (chr and vit)
  48.     sets.precast.Waltz = {}        
  49.            
  50.             -- Fast cast sets for spells
  51.                      
  52.             -- Precast Sets
  53.     sets.precast.FC = {}
  54.                    
  55.             -- Specific spells
  56.     sets.midcast.Utsusemi = {}
  57.      
  58.     sets.midcast.DarkMagic = {}
  59.              
  60.     sets.midcast.Endark = {}
  61.              
  62.     sets.midcast['Endark II'] = sets.midcast.Endark
  63.            
  64.     sets.midcast['Dread Spikes'] = {}
  65.              
  66.     sets.midcast['Elemental Magic'] = {}
  67.              
  68.     sets.midcast['Enfeebling Magic'] = {}
  69.            
  70.     sets.midcast.Stun = {}
  71.              
  72.     sets.midcast.Absorb = {}
  73.                    
  74.     sets.midcast.Drain = {}
  75.                    
  76.     sets.midcast['Aspir'] = {}
  77.                  
  78.     sets.midcast['Aspir II'] = {}
  79.              
  80.  
  81.     sets.midcast['Drain II'] = {}
  82.              
  83.     sets.midcast['Drain III'] = {}
  84.  
  85.                                            
  86.             -- Weaponskill sets
  87.             -- Default set for any weaponskill that isn't any more specifically defined
  88.     sets.precast.WS = {}
  89.  
  90.  
  91.             -- Specific weaponskill sets.  Uses the base set if an appropriate WSMod version isn't found.
  92.     sets.precast.WS['Catastrophe'] = {}
  93.                      
  94.     sets.precast.WS['Catastrophe'].Acc = {}
  95.                      
  96.     sets.precast.WS['Sanguine Blade'] = {}
  97.      
  98.     sets.precast.WS['Torcleaver'] = {}
  99.                      
  100.     sets.precast.WS['Torcleaver'].Acc = {}
  101.  
  102.     sets.precast.WS['Scourge'] = {}
  103.  
  104.     sets.precast.WS['Scourge'].Acc = {}
  105.  
  106.     sets.precast.WS['Savage Blade'] = {}
  107.              
  108.     sets.precast.WS['Requiescat'] = {}
  109.              
  110.     sets.precast.WS['Cross Reaper'] = {}
  111.                      
  112.     sets.precast.WS['Cross Reaper'].Acc = {}
  113.                      
  114.     sets.precast.WS['Quietus'] = {}
  115.                      
  116.     sets.precast.WS['Quietus'].Acc = {}
  117.                      
  118.     sets.precast.WS['Entropy'] = {}
  119.  
  120.                      
  121.     sets.precast.WS['Entropy'].Acc = {}
  122.  
  123.     sets.precast.WS['Insurgency'] = {}
  124.  
  125.                      
  126.     sets.precast.WS['Insurgency'].Acc = {}
  127.                      
  128.     sets.precast.WS['Resolution'] = {}
  129.                      
  130.     sets.precast.WS['Resolution'].Acc = {}
  131.                                
  132.             -- Sets to return to when not performing an action.
  133.            
  134.             -- Resting sets
  135.     sets.resting = {}
  136.            
  137.      
  138.             -- Idle sets (default idle set not needed since the other three are defined, but leaving for testing purposes)
  139.     sets.idle = {}
  140.  
  141.             -- Defense sets
  142.     sets.defense.PDT = {}
  143.      
  144.     sets.defense.Reraise = {}
  145.      
  146.     sets.defense.MDT = {}
  147.      
  148.      
  149.      
  150.             -- Engaged sets
  151.              
  152.     sets.engaged.Rag = {}
  153.              
  154.     sets.engaged.RagAcc = {}
  155.              
  156.     sets.engaged.RagHighAcc = {}
  157.      
  158.     sets.engaged.NoStpTrait = {}    
  159.      
  160.     sets.engaged.Apoc = {}
  161.      
  162.     sets.engaged.ApocAcc = {}
  163.              
  164.     sets.engaged.ApocHighAcc = {}      
  165.              
  166.     sets.engaged.DW = {}
  167.      
  168.      
  169.     end
  170.      
  171. function precast(spell,abil)
  172.     --equips favorite weapon if disarmed
  173.     if player.equipment.main == "empty" or player.equipment.sub == "empty" then
  174.         equip({main="Ragnarok",
  175.         sub="Nepenthe Grip +1"})
  176.     end
  177. end
  178.  
  179. -- Run after the default midcast() is done.
  180. -- eventArgs is the same one used in job_midcast, in case information needs to be persisted.
  181. function job_post_midcast(spell, action, spellMap, eventArgs)
  182.     if spell.skill == 'Elemental Magic' then
  183.         if spell.element == world.day_element or spell.element == world.weather_element then
  184.             equip(sets.midcast['Elemental Magic'], {waist="Hachirin-No-Obi"})
  185.         end
  186.     end
  187. end
  188. ------------------------------------------------------------------------------
  189. function job_post_midcast(spell, action, spellMap, eventArgs)
  190.     if (skillchain_elements[spell.skillchain_a]:contains(world.day_element) or skillchain_elements[spell.skillchain_b]:contains(world.day_element) or skillchain_elements[spell.skillchain_c]:contains(world.day_element))
  191.         then equip({head="Gavialis Helm"})
  192.     end
  193. end
  194.  
  195.  
  196. function job_post_midcast(spell, action, spellMap, eventArgs)
  197.     if S{"Drain","Drain II","Drain III"}:contains(spell.english) and (spell.element==world.day_element or spell.element==world.weather_element) then
  198.         equip({waist="Hachirin-no-obi"})
  199.     end
  200. end
  201. -------------------------------------------------------------------------------------------------------------------
  202. -- Utility functions specific to this job.
  203. -------------------------------------------------------------------------------------------------------------------
  204. -- Called when a player gains or loses a buff.
  205. -- buff == buff gained or lost
  206. -- gain == true if the buff was gained, false if it was lost.
  207. function job_buff_change(buff, gain)
  208.     if state.Buff[buff] ~= nil then
  209.         state.Buff[buff] = gain
  210.     end
  211.     if buff:lower()=='sleep' then
  212.         if gain and player.hp > 120 and player.status == "Engaged" then -- Equip Berserker's Torque When You Are Asleep
  213.             equip({neck="Berserker's Torque"})
  214.         elseif not gain then -- Take Berserker's off
  215.             handle_equipping_gear(player.status)
  216.         end
  217.     end
  218. end
  219.  
  220. function customize_melee_set(meleeSet)
  221.     if state.Buff.Sleep and player.hp > 120 and player.status == "Engaged" then -- Equip Berserker's Torque When You Are Asleep
  222.         meleeSet = set_combine(meleeSet,{neck="Berserker's Torque"})
  223.     end
  224.     return meleeSet
  225. end
Advertisement
Add Comment
Please, Sign In to add comment