Advertisement
Guest User

Drk3

a guest
Dec 20th, 2014
176
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.    
  2.  
  3.     -------------------------------------------------------------------------------------------------------------------
  4.     -- Initialization function that defines sets and variables to be used.
  5.     -------------------------------------------------------------------------------------------------------------------
  6.      
  7.     -- IMPORTANT: Make sure to also get the Mote-Include.lua file (and its supplementary files) to go with this.
  8.      
  9. include('perfectbob/perfectbob')    
  10. -- Initialization function for this job file.
  11.     function get_sets()
  12.             -- Load and initialize the include file.
  13.             include('Mote-Include.lua')
  14.     end
  15.    
  16.      
  17.     -- Setup vars that are user-independent.
  18.     function job_setup()
  19.                     state.Buff['Aftermath'] = buffactive['Aftermath: Lv.1'] or
  20.                     buffactive['Aftermath: Lv.2'] or
  21.                     buffactive['Aftermath: Lv.3']
  22.                     or false
  23.     end
  24.      
  25.      
  26.     -- Setup vars that are user-dependent.  Can override this function in a sidecar file.
  27.  
  28.     function user_setup()
  29.          
  30.    -- Options: Override default values
  31.             options.OffenseModes = {'Normal', 'Acc', 'Multi'}
  32.             options.DefenseModes = {'Normal', 'PDT', 'Reraise'}
  33.             options.WeaponskillModes = {'Normal', 'Acc', 'Att', 'Mod'}
  34.             options.CastingModes = {'Normal'}
  35.             options.IdleModes = {'Normal'}
  36.             options.RestingModes = {'Normal'}
  37.             options.PhysicalDefenseModes = {'PDT', 'Reraise'}
  38.             options.MagicalDefenseModes = {'MDT'}
  39.      
  40.             state.Defense.PhysicalMode = 'PDT'
  41.            
  42.             adjust_engaged_sets()
  43.      
  44.             -- Additional local binds
  45.             send_command('bind ^` input /ja "Hasso" <me>')
  46.             send_command('bind !` input /ja "Seigan" <me>')
  47.      
  48.             select_default_macro_book()    
  49.  
  50.     end
  51.      
  52.     -- Called when this job file is unloaded (eg: job change)
  53.     function file_unload()
  54.             if binds_on_unload then
  55.                     binds_on_unload()
  56.             end
  57.      
  58.             send_command('unbind ^`')
  59.             send_command('unbind !-')
  60.     end
  61.      
  62.            
  63.     -- Define sets and vars used by this job file.
  64.     function init_gear_sets()
  65.             --------------------------------------
  66.             -- Start defining the sets
  67.             --------------------------------------
  68.            
  69.                         -- Precast Sets
  70.             -- Precast sets to enhance JAs
  71.             sets.precast.JA['Diabolic Eye'] = {hands=""}
  72.             sets.precast.JA['Arcane Circle'] = {feet=""}
  73.             sets.precast.JA['Nether Void'] = {legs=""}
  74.                         sets.precast.JA['Souleater'] = {head=""}
  75.                         sets.precast.JA['Weapon Bash'] = {hands=""}
  76.             sets.precast.JA['Last Resort'] = {feet=""}
  77.                         sets.precast.JA['Dark Seal'] = {head=""}
  78.                        
  79.             -- Waltz set (chr and vit)
  80.             sets.precast.Waltz = {ammo="",
  81.                     head="Yaoyotl Helm",
  82.                     body="Mikinaak Breastplate",hands="",
  83.                     legs="Cizin Breeches +1",feet=""}
  84.                    
  85.             -- Don't need any special gear for Healing Waltz.
  86.             sets.precast.Waltz['Healing Waltz'] = {}
  87.            
  88.             -- Fast cast sets for spells
  89.                      
  90.             -- Midcast Sets
  91.             sets.midcast.FastRecast = {ammo="",
  92.                     head="Otomi Helm",neck="Orunmila's Torque",ear1="Loquacious Earring",ear2="",
  93.                     body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Prolix Ring",ring2="K'ayres Ring",
  94.                     back="",waist="",legs="Cizin Breeches +1",feet=""}
  95.                    
  96.             -- Specific spells
  97.             sets.midcast.Utsusemi = {ammo="Impatiens",
  98.                     head="",neck="Orunmila's Torque",ear1="Loquacious Earring",ear2="",
  99.                     body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Prolix Ring",ring2="K'ayres Ring",
  100.                     waist="",legs="Cizin Breeches +1",feet=""}
  101.      
  102.             sets.midcast.DarkMagic = {ammo="Impatiens",
  103.                     head="",neck="",ear1="",ear2="",
  104.                     body="",hands="",ring1="",ring2="",
  105.                     back="Merciful Cape",waist="",legs="",feet=""}
  106.            
  107.                     sets.midcast.EnfeeblingMagic = sets.midcast.DarkMagic
  108.                    
  109.             sets.midcast['Dread Spikes'] = {body=""}
  110.            
  111.             sets.midcast.Stun = set_combine(sets.midcast.DarkMagic, {
  112.                     head="",ear1="Gwati Earring",ear2="",
  113.                     body="",ring1="Prolix Ring",ring2="Sangoma Ring"})
  114.                    
  115.             sets.midcast.Drain = {ammo="",
  116.                     head="",neck="",ear1="",ear2="",
  117.                     body="",hands="",ring1="",ring2="",
  118.                     back="Merciful Cape",waist="",legs="",feet=""}
  119.                    
  120.             sets.midcast.Aspir = sets.midcast.Drain
  121.                                                                    
  122.             -- Weaponskill sets
  123.             -- Default set for any weaponskill that isn't any more specifically defined
  124.             sets.precast.WS = {ammo="Bomb core",
  125.                 head="Otomi Helm",neck="Soil gorget",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  126.                 body="Ignominy Cuirass +1",hands="Mikinaak Gauntlets",ring1="Rajas Ring",ring2="Karieyh Ring",
  127.                 back="Niht mantle",waist="Soil Belt",legs="Ignominy Flanchard +1",feet="Ejekamal boots"}
  128.  
  129.             sets.precast.WS.Acc = set_combine(sets.precast.WS, {back="Vespid mantle",body="",head="Yaoyotl Helm",feet="Ejekamal Boots"})
  130.      
  131.             -- Specific weaponskill sets.  Uses the base set if an appropriate WSMod version isn't found.
  132.             sets.precast.WS['Catastrophe'] = set_combine(sets.precast.WS, {ammo="Bomb core",
  133.                 head="Otomi Helm",neck="Soil gorget",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  134.                 body="Phorcys Korazin",hands="Mikinaak Gauntlets",ring1="Rajas Ring",ring2="Karieyh Ring",
  135.                 back="Niht mantle",waist="Soil Belt",legs="Ignominy Flanchard +1",feet="Ejekamal boots"})
  136.            
  137.         sets.precast.WS['Catastrophe'].Acc = set_combine(sets.precast.WS.Acc, {ammo="Bomb core",
  138.                 head="Yaoyotl Helm",neck="Soil gorget",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  139.                 body="Phorcys Korazin",hands="Mikinaak Gauntlets",ring1="Rajas Ring",ring2="Karieyh Ring",
  140.                 back="Vespid mantle",waist="Soil Belt",legs="Ignominy Flanchard +1",feet="Ejekamal boots"})
  141.            
  142.             sets.precast.WS['Catastrophe'].Mod = set_combine(sets.precast.WS['Catastrophe'], {})
  143.      
  144.             sets.precast.WS['Entropy'] = set_combine(sets.precast.WS, {ammo="Aqreqaq Bomblet",
  145.                 head="Otomi Helm",neck="Soil gorget",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  146.                 body="Phorcys Korazin",hands="Mikinaak Gauntlets",ring1="Rajas Ring",ring2="Karieyh Ring",
  147.                 back="Niht mantle",waist="Soil Belt",legs="Ignominy Flanchard +1",feet="Ejekamal boots"})
  148.  
  149.             sets.precast.WS['Entropy'].Acc = set_combine(sets.precast.WS.Acc, {ammo="Aqreqaq Bomblet",
  150.                 head="Yaoyotl Helm",neck="Soil gorget",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  151.                 body="Phorcys Korazin",hands="Mikinaak Gauntlets",ring1="Rajas Ring",ring2="Karieyh Ring",
  152.                 back="Vespid mantle",waist="Soil Belt",legs="Ignominy Flanchard +1",feet="Ejekamal boots"})
  153.            
  154.             sets.precast.WS['Entropy'].Mod = set_combine(sets.precast.WS['Entropy'], {})
  155.                        
  156.             sets.precast.WS['Spiral Hell'] = set_combine(sets.precast.WS, {ammo="Aqreqaq Bomblet",
  157.                 head="Otomi Helm",neck="Soil gorget",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  158.                 body="Phorcys Korazin",hands="Mikinaak Gauntlets",ring1="Rajas Ring",ring2="Karieyh Ring",
  159.                 back="Niht mantle",waist="Soil Belt",legs="Ignominy Flanchard +1",feet="Ejekamal boots"})
  160.  
  161.             sets.precast.WS['Spiral Hell'].Acc = set_combine(sets.precast.WS.Acc, {ammo="Bomb core",
  162.                 head="Yaoyotl Helm",neck="Soil gorget",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  163.                 body="Phorcys Korazin",hands="Mikinaak Gauntlets",ring1="Rajas Ring",ring2="Karieyh Ring",
  164.                 back="Vespid mantle",waist="Soil Belt",legs="Ignominy Flanchard +1",feet="Ejekamal boots"})
  165.            
  166.             sets.precast.WS['Spiral Hell'].Mod = set_combine(sets.precast.WS['Spiral Hell'], {})
  167.                        
  168.             sets.precast.WS['Quietus'] = set_combine(sets.precast.WS, {neck="",ring1="",waist=""})
  169.  
  170.             sets.precast.WS['Quietus'].Acc = set_combine(sets.precast.WS.Acc, {neck="",ring1="",waist=""})
  171.  
  172.             sets.precast.WS['Quietus'].Mod = set_combine(sets.precast.WS['Quietus'], {})
  173.                        
  174.             sets.precast.WS['Cross Reaper'] = set_combine(sets.precast.WS, {neck="",waist=""})
  175.  
  176.             sets.precast.WS['Cross Reaper'].Acc = set_combine(sets.precast.WS.Acc, {neck="",waist=""})
  177.  
  178.             sets.precast.WS['Cross Reaper'].Mod = set_combine(sets.precast.WS['Cross Reaper'], {})
  179.                        
  180.             sets.precast.WS['Resolution'] = set_combine(sets.precast.WS, {ammo="Aqreqaq Bomblet",
  181.                 head="Otomi Helm",neck="Soil gorget",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  182.                 body="Ignominy Cuirass +1",hands="Mikinaak Gauntlets",ring1="Rajas Ring",ring2="Karieyh Ring",
  183.                 back="Niht mantle",waist="Soil Belt",legs="Ignominy Flanchard +1",feet="Ejekamal boots"})
  184.            
  185.             sets.precast.WS['Resolution'].Acc = set_combine(sets.precast.WS.Acc, {ammo="Aqreqaq Bomblet",
  186.                 head="Yaoyotl Helm",neck="Soil gorget",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  187.                 body="Ignominy Cuirass +1",hands="Mikinaak Gauntlets",ring1="Rajas Ring",ring2="Karieyh Ring",
  188.                 back="Vespid mantle",waist="Soil Belt",legs="Ignominy Flanchard +1",feet="Ejekamal boots"})
  189.  
  190.             sets.precast.WS['Resolution'].Mod = set_combine(sets.precast.WS['Resolution'], {})
  191.                        
  192.             sets.precast.WS['Scourge'] = set_combine(sets.precast.WS, {ammo="Aqreqaq Bomblet",
  193.                 head="Otomi Helm",neck="Soil gorget",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  194.                 body="Ignominy Cuirass +1",hands="Mikinaak Gauntlets",ring1="Rajas Ring",ring2="Karieyh Ring",
  195.                 back="Niht mantle",waist="Soil Belt",legs="Ignominy Flanchard +1",feet="Ejekamal boots"})
  196.  
  197.             sets.precast.WS['Scourge'].Acc = set_combine(sets.precast.WS.Acc,{ammo="Aqreqaq Bomblet",
  198.                 head="Yaoyotl Helm",neck="Soil gorget",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  199.                 body="Ignominy Cuirass +1",hands="Mikinaak Gauntlets",ring1="Rajas Ring",ring2="Karieyh Ring",
  200.                 back="Vespid mantle",waist="Soil Belt",legs="Ignominy Flanchard +1",feet="Ejekamal boots"})
  201.  
  202.  
  203.             sets.precast.WS['Scourge'].Mod = set_combine(sets.precast.WS['Scourge'], {})
  204.                        
  205.             sets.precast.WS['Torcleaver'] = set_combine(sets.precast.WS, {ammo="Aqreqaq Bomblet",
  206.                 head="Otomi Helm",neck="Soil gorget",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  207.                 body="Ignominy Cuirass +1",hands="Mikinaak Gauntlets",ring1="Rajas Ring",ring2="Karieyh Ring",
  208.                 back="Niht mantle",waist="Soil Belt",legs="Ignominy Flanchard +1",feet="Ejekamal boots"})
  209.  
  210.             sets.precast.WS['Torcleaver'].Acc = set_combine(sets.precast.WS.Acc, {ammo="Aqreqaq Bomblet",
  211.                 head="Yaoyotl Helm",neck="Soil gorget",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  212.                 body="Ignominy Cuirass +1",hands="Mikinaak Gauntlets",ring1="Rajas Ring",ring2="Karieyh Ring",
  213.                 back="Vespid mantle",waist="Soil Belt",legs="Ignominy Flanchard +1",feet="Ejekamal boots"})
  214.  
  215.             sets.precast.WS['Torcleaver'].Mod = set_combine(sets.precast.WS['Torcleaver'], {})
  216.      
  217.      
  218.            
  219.             -- Sets to return to when not performing an action.
  220.            
  221.             -- Resting sets
  222.             sets.resting = {head="Twilight Helm",neck="Coatl Gorget +1",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  223.                     body="Twilight Mail",hands="Cizin Mufflers",ring1="",ring2="",
  224.                     back="",waist="",legs="Crimson Cuisses",feet=""}
  225.            
  226.      
  227.             -- Idle sets (default idle set not needed since the other three are defined, but leaving for testing purposes)
  228.             sets.idle.Town = {head="Otomi Helm",neck="Ganesha's Mala",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  229.                 body="Ignominy Cuirass +1",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="Karieyh Ring",
  230.                 back="Niht mantle",waist="Windbuffet Belt +1",legs="Ignominy Flanchard +1",feet="Ejekamal boots"}
  231.            
  232.             sets.idle.Field = {head="Otomi Helm",neck="Ganesha's Mala",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  233.                 body="Ignominy Cuirass +1",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="Karieyh Ring",
  234.                 back="Niht mantle",waist="Windbuffet Belt +1",legs="Ignominy Flanchard +1",feet="Ejekamal boots"}
  235.      
  236.             sets.idle.Weak = {head="Twilight Helm",neck="Coatl Gorget +1",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  237.                 body="Twilight Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="Karieyh Ring",
  238.                 back="Niht mantle",waist="Windbuffet Belt +1",legs="Ignominy Flanchard +1",feet="Ejekamal boots"}
  239.            
  240.             -- Defense sets
  241.             sets.defense.PDT = {head="Ogier's helm",neck="Twilight Torque",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  242.                     body="Mekira meikogai",hands="Magma gauntlets",ring1="Rajas Ring",ring2="K'ayres Ring",
  243.                     back="Mollusca Mantle",waist="Nierenschutz",legs="Ogier's breeches",feet="Phorcys schuhs"}
  244.      
  245.             sets.defense.Reraise = {head="Twilight Helm",neck="Twilight Torque",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  246.                     body="Twilight Mail",hands="Magma gauntlets",ring1="Rajas Ring",ring2="K'ayres Ring",
  247.                     back="Mollusca Mantle",waist="Nierenschutz",legs="Ogier's breeches",feet="Phorcys schuhs"}
  248.      
  249.             sets.defense.MDT = {head="Ogier's helm",neck="Twilight Torque",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  250.                     body="Mekira meikogai",hands="Magma gauntlets",ring1="Rajas Ring",ring2="K'ayres Ring",
  251.                     back="Mollusca Mantle",waist="Nierenschutz",legs="Ogier's breeches",feet="Phorcys schuhs"}
  252.      
  253.             sets.Kiting = {legs="Crimson Cuisses"}
  254.      
  255.             sets.Reraise = {head="Twilight Helm",body="Twilight Mail"}
  256.      
  257.             -- Engaged sets
  258.      sets.engaged = {ammo="Hagneia stone",
  259.                 head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  260.                 body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  261.                 back="Atheling Mantle",waist="Goading Belt",legs="Cizin Breeches +1",feet="Mikinaak greaves"}
  262.         sets.engaged.Acc = {ammo="Hagneia stone",
  263.                 head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  264.                 body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  265.                 back="Atheling Mantle",waist="Goading Belt",legs="Cizin Breeches +1",feet="Mikinaak greaves"}
  266.         sets.engaged = {ammo="Hagneia stone",
  267.                 head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  268.                 body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  269.                 back="Atheling Mantle",waist="Goading Belt",legs="Cizin Breeches +1",feet="Mikinaak greaves"}
  270.         sets.engaged.Multi = {ammo="Hagneia stone",
  271.                 head="Otomi Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  272.                 body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  273.                 back="Atheling Mantle",waist="Windbuffet Belt +1",legs="Cizin Breeches +1",feet="Ejekamal Boots"}
  274.         sets.engaged.Reraise = {ammo="Hagneia stone",
  275.                 head="Twilight Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  276.                 body="Twilight Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  277.                 back="Atheling Mantle",waist="Goading Belt",legs="Cizin Breeches +1",feet="Mikinaak greaves"}
  278.        
  279.          
  280.             -- Variations for TP weapon and (optional) offense/defense modes.  Code will fall back on previous
  281.             -- sets if more refined versions aren't defined.
  282.             -- If you create a set with both offense and defense modes, the offense mode should be first.
  283.             -- EG: sets.engaged.Dagger.Accuracy.Evasion
  284.            
  285.             -- Normal melee group
  286.             sets.engaged.Apocalypse = {ammo="Hagneia stone",
  287.                 head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  288.                 body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  289.                 back="Atheling Mantle",waist="Goading Belt",legs="Cizin Breeches +1",feet="Mikinaak greaves"}
  290.             sets.engaged.Apocalypse.Acc = {ammo="Hagneia stone",
  291.                 head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  292.                 body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  293.                 back="Atheling Mantle",waist="Goading Belt",legs="Cizin Breeches +1",feet="Mikinaak greaves"}
  294.             sets.engaged.Apocalypse.HighAcc = {ammo="Hagneia stone",
  295.                 head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  296.                 body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  297.                 back="Atheling Mantle",waist="Goading Belt",legs="Cizin Breeches +1",feet="Mikinaak greaves"}
  298.             sets.engaged.Apocalypse.AM = {ammo="Hagneia stone",
  299.                 head="Otomi Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  300.                 body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  301.                 back="Atheling Mantle",waist="Windbuffet Belt +1",legs="Cizin Breeches +1",feet="Ejekamal Boots"}
  302.             sets.engaged.Apocalypse.Multi = {ammo="Hagneia stone",
  303.                 head="Otomi Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  304.                 body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  305.                 back="Atheling Mantle",waist="Windbuffet Belt +1",legs="Cizin Breeches +1",feet="Ejekamal Boots"}
  306.             sets.engaged.Apocalypse.Multi.PDT = {ammo="Hagneia stone",
  307.                 head="Otomi Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  308.                 body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  309.                 back="Atheling Mantle",waist="Windbuffet Belt +1",legs="Cizin Breeches +1",feet="Ejekamal Boots"}
  310.             sets.engaged.Apocalypse.Multi.Reraise = {ammo="Hagneia stone",
  311.                 head="Twilight Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  312.                 body="Twilight Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  313.                 back="Atheling Mantle",waist="Windbuffet Belt +1",legs="Cizin Breeches +1",feet="Ejekamal Boots"}
  314.             sets.engaged.Apocalypse.PDT = {head="Ogier's helm",neck="Twilight Torque",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  315.                 body="Mekira meikogai",hands="Magma gauntlets",ring1="Rajas Ring",ring2="K'ayres Ring",
  316.                 back="Mollusca Mantle",waist="Nierenschutz",legs="Ogier's breeches",feet="Phorcys schuhs"}
  317.             sets.engaged.Apocalypse.Acc.PDT = {head="Ogier's helm",neck="Twilight Torque",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  318.                 body="Mekira meikogai",hands="Magma gauntlets",ring1="Rajas Ring",ring2="K'ayres Ring",
  319.                 back="Mollusca Mantle",waist="Nierenschutz",legs="Ogier's breeches",feet="Phorcys schuhs"}
  320.             sets.engaged.Apocalypse.Reraise = {ammo="Hagneia stone",
  321.                 head="Twilight Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  322.                 body="Twilight Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  323.                 back="Atheling Mantle",waist="Windbuffet Belt +1",legs="Cizin Breeches +1",feet="Ejekamal Boots"}
  324.             sets.engaged.Apocalypse.Acc.Reraise = {ammo="Hagneia stone",
  325.                 head="Twilight Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  326.                 body="Twilight Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  327.                 back="Atheling Mantle",waist="Windbuffet Belt +1",legs="Cizin Breeches +1",feet="Ejekamal Boots"}
  328.                                        
  329.  
  330.             -- Custom Melee Group
  331.             sets.engaged['Ragnarok'] = {ammo="Hagneia stone",
  332.                 head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  333.                 body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  334.                 back="Atheling Mantle",waist="Goading Belt",legs="Cizin Breeches +1",feet="Mikinaak greaves"}
  335.             sets.engaged['Ragnarok'].Acc = {ammo="Hagneia stone",
  336.                 head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  337.                 body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  338.                 back="Atheling Mantle",waist="Goading Belt",legs="Cizin Breeches +1",feet="Mikinaak greaves"}
  339.             sets.engaged['Ragnarok'].HighAcc = {ammo="Hagneia stone",
  340.                 head="Yaoyotl Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  341.                 body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  342.                 back="Atheling Mantle",waist="Goading Belt",legs="Cizin Breeches +1",feet="Mikinaak greaves"}
  343.             sets.engaged['Ragnarok'].Multi = {ammo="Hagneia stone",
  344.                 head="Otomi Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  345.                 body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  346.                 back="Atheling Mantle",waist="Windbuffet Belt +1",legs="Cizin Breeches +1",feet="Ejekamal Boots"}
  347.             sets.engaged['Ragnarok'].Multi.PDT = {ammo="Hagneia stone",
  348.                 head="Otomi Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  349.                 body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  350.                 back="Atheling Mantle",waist="Windbuffet Belt +1",legs="Cizin Breeches +1",feet="Ejekamal Boots"}
  351.             sets.engaged['Ragnarok'].Multi.Reraise = {ammo="Hagneia stone",
  352.                 head="Twilight Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  353.                 body="Twilight Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  354.                 back="Atheling Mantle",waist="Windbuffet Belt +1",legs="Cizin Breeches +1",feet="Ejekamal Boots"}
  355.             sets.engaged['Ragnarok'].PDT = {ammo="Hagneia stone",
  356.                 head="Otomi Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  357.                 body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  358.                 back="Atheling Mantle",waist="Windbuffet Belt +1",legs="Cizin Breeches +1",feet="Ejekamal Boots"}
  359.             sets.engaged['Ragnarok'].Acc.PDT = {ammo="Hagneia stone",
  360.                 head="Otomi Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  361.                 body="Xaddi Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  362.                 back="Atheling Mantle",waist="Windbuffet Belt +1",legs="Cizin Breeches +1",feet="Ejekamal Boots"}
  363.             sets.engaged['Ragnarok'].Reraise = {ammo="Hagneia stone",
  364.                 head="Twilight Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  365.                 body="Twilight Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  366.                 back="Atheling Mantle",waist="Windbuffet Belt +1",legs="Cizin Breeches +1",feet="Ejekamal Boots"}
  367.             sets.engaged['Ragnarok'].Acc.Reraise = {ammo="Hagneia stone",
  368.                 head="Twilight Helm",neck="Ganesha's Mala",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  369.                 body="Twilight Mail",hands="Cizin Mufflers +1",ring1="Rajas Ring",ring2="K'ayres Ring",
  370.                 back="Atheling Mantle",waist="Windbuffet Belt +1",legs="Cizin Breeches +1",feet="Ejekamal Boots"}
  371.      
  372.     end
  373.      
  374.     -------------------------------------------------------------------------------------------------------------------
  375.     -- Job-specific hooks that are called to process player actions at specific points in time.
  376.     -------------------------------------------------------------------------------------------------------------------
  377.      
  378.  
  379.     -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
  380.     -- Set eventArgs.useMidcastGear to true if we want midcast gear equipped on precast.
  381.     function job_precast(spell, action, spellMap, eventArgs)
  382.             if spell.action_type == 'Magic' then
  383.             equip(sets.precast.FC)
  384.             end
  385.     end
  386.      
  387.  
  388.      
  389.      
  390.     -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
  391.     function job_midcast(spell, action, spellMap, eventArgs)
  392.             if spell.action_type == 'Magic' then
  393.                 equip(sets.midcast.FastRecast)
  394.             end
  395.     end
  396.      
  397.     -- Run after the default midcast() is done.
  398.     -- eventArgs is the same one used in job_midcast, in case information needs to be persisted.
  399.     function job_post_midcast(spell, action, spellMap, eventArgs)
  400.             if state.DefenseMode == 'Reraise' or
  401.                     (state.Defense.Active and state.Defense.Type == 'Physical' and state.Defense.PhysicalMode == 'Reraise') then
  402.                     equip(sets.Reraise)
  403.             end
  404.     end
  405.      
  406.     -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
  407.   --  function job_aftercast(spell, action, spellMap, eventArgs)
  408.   --      if not spell.interrupted then
  409.   --              if state.Buff[spell.english] ~= nil then
  410.   --                      state.Buff[spell.english] = true
  411.   --              end
  412.   --       end
  413.   --  end
  414.      
  415.     -------------------------------------------------------------------------------------------------------------------
  416.     -- Customization hooks for idle and melee sets, after they've been automatically constructed.
  417.     -------------------------------------------------------------------------------------------------------------------
  418.     -- Modify the default idle set after it was constructed.
  419.     function customize_idle_set(idleSet)
  420.             return idleSet
  421.     end
  422.      
  423.     -- Modify the default melee set after it was constructed.
  424.     function customize_melee_set(meleeSet)
  425.             return meleeSet
  426.     end
  427.      
  428.     -------------------------------------------------------------------------------------------------------------------
  429.     -- General hooks for other events.
  430.     -------------------------------------------------------------------------------------------------------------------
  431.      
  432.     -- Called when the player's status changes.
  433.     function job_status_change(newStatus, oldStatus, eventArgs)
  434.      
  435.     end
  436.      
  437.     -- Called when a player gains or loses a buff.
  438.     -- buff == buff gained or lost
  439.     -- gain == true if the buff was gained, false if it was lost.
  440.     function job_buff_change(buff, gain)
  441.             if buff:startswith('Aftermath') then
  442.                 state.Buff.Aftermath = gain
  443.                 adjust_melee_groups()
  444.                 handle_equipping_gear(player.status)
  445.         end
  446.     end
  447.      
  448.      
  449.     -------------------------------------------------------------------------------------------------------------------
  450.     -- User code that supplements self-commands.
  451.     -------------------------------------------------------------------------------------------------------------------
  452.      
  453.     -- Called by the 'update' self-command, for common needs.
  454.     -- Set eventArgs.handled to true if we don't want automatic equipping of gear.
  455. function job_update(cmdParams, eventArgs)
  456.         print(cmdParams)
  457.         eventArgs.handled = pb.self_command(cmdParams)
  458.     adjust_engaged_sets()
  459. end
  460.  
  461. -------------------------------------------------------------------------------------------------------------------
  462. -- Utility functions specific to this job.
  463. -------------------------------------------------------------------------------------------------------------------
  464.  
  465. function adjust_engaged_sets()
  466.     state.CombatWeapon = player.equipment.main
  467.     adjust_melee_groups()
  468. end
  469.  
  470. function adjust_melee_groups()
  471.     classes.CustomMeleeGroups:clear()
  472.     if state.Buff.Aftermath then
  473.         classes.CustomMeleeGroups:append('AM')
  474.     end
  475. end
  476.      
  477.     function select_default_macro_book()
  478.             -- Default macro set/book
  479.                     set_macro_page(1, 1)
  480.                     -- I realize this will be better used with different /subs per book,
  481.                     -- but I won't worry about that till I get this working properly.
  482.     end
  483.      
  484.     function user_pb_function()    
  485.         local koruflag, ulmiaflag, joachimflag
  486.         for i,character in pairs(alliance[1]) do
  487.             if character and character.name then
  488.                 if character.name == 'Koru-Moru' then
  489.                     koruflag = true
  490.                 elseif character.name == 'Ulmia' then
  491.                     ulmiaflag = true
  492.                 elseif character.name == 'Joachim' then
  493.                     joachimflag = true
  494.                 end
  495.             end
  496.         end
  497.         if (pbuser.party_list['Koru-Moru'] or pbuser.Number_of_Attackers > 0) and pbvar.running.suspended then
  498.             pb.run_resume()
  499.         end
  500.        
  501.         if not ulmiaflag and pbuser.Number_of_Attackers == 0 and pb.use_MA('Ulmia',nil,0) then
  502.         elseif not joachimflag and pbuser.Number_of_Attackers == 0 and pb.use_MA('Joachim',nil,0) then
  503.         elseif not koruflag and pbuser.Number_of_Attackers == 0 and pb.use_MA('Koru-Moru',nil,0) then
  504.        
  505.         elseif player.target.type == 'MONSTER' and player.target.claim_id ~= player.id and pb.use_JA("Provoke",nil,15) then
  506.         elseif player.hpp < 60 and player.tp > 450 and pb.use_JA('Curing Waltz III',nil,0) then
  507.         elseif player.target.type == 'MONSTER' and player.target.hpp > 20 and player.tp >= 1000 and player.target.claim_id == player.id and pb.use_WS("Tachi: Fudo",nil,3) then
  508.         elseif not buffactive['Berserk'] and pb.use_JA('Berserk',nil,0) then
  509.         elseif not buffactive['Berserk'] and pb.use_JA('Warcry',nil,0) then
  510.         elseif not buffactive['Last Resort'] and pb.use_JA('Last Resort',nil,0) then
  511.         elseif player.tp >= 350 and not buffactive['Haste Samba'] and pb.use_JA('Haste Samba',nil,0) then
  512.         end
  513.     end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement