Advertisement
FalownPSA

Keme_MNK with accparser

Jan 24th, 2015
477
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 54.73 KB | None | 0 0
  1. -- Multiple TP Sets "Normal", ACC, P/MDT, Hybrid
  2. -- Multiple WS Sets, VS(Acc, Impetus, Impetus + ACC) SS(Normal, Acc) FH(Normal, Acc) Others WS
  3. -- Impetus active, auto VS WS Gear depending on TP Set
  4. -- Impetus Wear off, Remove Impetus Gear and back to "Normal"
  5. -- Auto Boost on Certain WS.
  6. -- SE Macros /console sc c .... Commands are Normal, PDT, MDT, Impetus, Hybrid, AutoBoost
  7.  
  8. -- Opens a file in append mode
  9. --require('files')
  10.  
  11. function user_setup()
  12. -- Default macro set/book
  13. set_macro_page(1, 13)
  14. end
  15.  
  16. function get_sets()
  17.  
  18. mataon = 0
  19. magicT = "Normal"  
  20. annulrun = 0
  21. countmata = 0
  22. enga = 0
  23. kindofdelve = 0
  24. killingmandy = 0
  25. -- Debug mode - register packets
  26. regpack = 1
  27.  
  28. accparsing = 0
  29.  
  30. -- Runes
  31. Runes = S{"Lux", "Tenebrae", "Unda", "Flabra", "Gelus", "Ignis", "Tellus", "Sulpor"}
  32.  
  33. WeaponG = "Glanzfaust"
  34. -- WS Auto-Boost list
  35. BoostdWS = S{"Final Heaven","Victory Smite","Shijin Spiral","Asuran Fists", "Ascetic's Fury"}
  36.  
  37. KickAtk = S{""}
  38. include("MNK/AccLvl/NTP.lua")
  39. include("MNK/AccLvl/SAcc.lua")
  40. include("MNK/AccLvl/HAcc.lua")
  41. include("MNK/AccLvl/FAcc.lua")
  42. --AccLvlSAcc = S{"Wopket", "Utkux", "Hyoscya", "Muyingwa", "Supernal Chapuli"}
  43. --AccLvlHAcc = S{"Hurkan", "Azeman"}
  44. --AccLvlFAcc = S{"Ircinraq"}
  45.  
  46. PDTTrigger = S{"Plague Swipe", "Dreadstorm", "Ripper Fang", "Chomp Rush", "Scythe Tail", "Cyclotail", "Delta Thrust", "Torpefying Charge", "Head Butt", "Tortoise Stomp", "Painful Whip", "Recoil Dive", "Gnash", "Deathgnash", "Seismic Tail", "Big Scissors", "Megascissors", "Drill Branch", "Pinecone Bomb", "Scorching Lash", "Wings of Woe", "Ravenous Wail", "Wings of Agony","Rending Talons", "Typhoean Rage", "Kaleidoscopic Fury", "Keraunos Quill", "Velkkan Ambush", "Coming Through"}
  47. MDTTrigger = S{"Fulmination", "Thunderstrike", "Tourbillon", "Whirling Inferno", "Foul Breath", "Tarichutoxin", "Aqua Fortis", "Regurgitation", "Calcifying Mist", "Aqua Breath", "Earth Breath", "Tetsudo Tremor", "Palsynyxis", "Aqua Ball", "Leeching Current", "Seaspray", "Venom Shower", "Bubble Shower", "Marine Mayhem", "Tidal Guillotine", "Leafstorm", "Sulfurous Breath", "Lava Spit", "Gates of Hades", "Acheron Flame","Shrieking Gale"}
  48. SleepTrigger = S{"Dream Flower"}
  49. ParaTrigger = S{"Ululation", "Jungle Hoodoo"}
  50. SlowTrigger = S{"Saurian Swamp"}
  51. MEvaTrigger = S{"Saurian Slide"}
  52. CharmTrigger = S{"Danse Macabre", "Frond Fatale", "Belly Dance"}
  53.  
  54.  
  55. --- Qaaxo Leggings differentiation
  56. QaaxoAcc = { name="Qaaxo Leggings", augments={'Accuracy+15','STR+7', "Phys. dmg. taken -3%"}}
  57. QaaxoMAB = { name="Qaaxo Leggings", augments={'Attack+15','"Mag.Atk.Bns."+15','STR+12',}}
  58.  
  59.  
  60.  
  61.  
  62. -- Delve specific
  63. Jagil = 0
  64.  
  65. -- Specific Elemental NMs
  66. FireNM = S{"Ifrit Prime","Cerberus","Orthrus Seether","Tojil","Perdurable Raptor","Tax'et", "Achuka",  "Volatile Matamata", "Achuka"}
  67. WaterNM = S{"Leviathan Prime","Dakuwaqa","Nerrivik", "Krabakarpo", "Divagating Jagil", "Tchakka", "Shimmering Tarichuk", "Faded Craklaw", "Divagating Jagil", "Ironbeak Inguza", "Tchakka"}
  68. IceNM = S{"Shiva Prime","Aberrant Uragnite", "Utkux", "Kumhau"}
  69. WindNM = S{"Garuda Prime","Aello", "Muyingwa", "Laevvid", "Unfettered Twitherym", "Supernal Chapuli", "Broxa", "Plaguevein Bats", "Hakawai", "Podarge"}
  70. ThunderNM = S{"Ramuh Prime", "Khimaira", "Khrysokhimaira Elder", "Hurkan", "Tutewehiwehi", "Cailimh", "Sinaa", "Colkhab"}
  71. EarthNM = S{"Titan Prime", "Resplendent Luckybug", "Wopket", "Yumcax", "Kurma", "Transcendent Scorpion", "Xag'Nar", "Morseiu", "Ircinraq", "Hyoscya", "Calydontis", "Cherti", "Mirka"}
  72. LightNM = S{}
  73. DarkNM = S{"Mastop", "Azeman"}
  74.  
  75. autoboost = 0    -- Auto-Boost On by default
  76. autoswap = 1
  77.  
  78. -- AUTOSET
  79.     numberofautoset = 2
  80.     autoset = {}
  81.     -- Chakra
  82.     autoset[1] = {}
  83.     -- Focus
  84.     autoset[2] = {}
  85.        
  86. -- JA Precast
  87.     sets.precast = {}
  88.     sets.precast['Hundred Fists'] = {head="Ebon Mask", body="Ebon Harness", legs="Hes. Hose +1"}
  89.     sets.precast['Formless Strikes'] = {body="Hes. Cyclas +1"}
  90.     sets.precast.Counterstance = {feet="Hes. Gaiters +1"}
  91.     sets.precast.Dodge = {feet="Anch. Gaiters +1"}
  92.     sets.precast.Boost = {hands="Anch. Gloves +1"}
  93.     sets.precast.Focus = {head="Anchorite's Crown +1"}
  94.    
  95.     sets.precast.Chakra =
  96.         {
  97.         ammo="Iron Gobbet",
  98.         head="Lithelimb Cap",
  99.         neck="Tjukurrpa Medal",
  100.         ear1="Soil Pearl",
  101.         ear2="Soil Pearl",
  102.         body="Anchorite's Cyclas +1",
  103.         hands="Hes. Gloves +1",
  104.         ring1="Titan Ring",
  105.         ring2="Titan Ring",
  106.         back="Iximulew Cape",
  107.         waist="Caudata Belt",
  108.         legs="Kaabnax Trousers",
  109.         feet="Thur. Boots +1"
  110.         }
  111.  
  112.    
  113.     sets.precast.Mantra =
  114.         {
  115.         head="Whirlpool Mask",
  116.         neck="Cuamiz Collar",
  117.         ear1="Bloodgem Earring",
  118.         body="Hes. Cyclas +1",
  119.         hands="Hes. Gloves +1",
  120.         ring1="K'Ayres Ring",
  121.         ring2="Beeline Ring",
  122.         back="Earthcry Mantle",
  123.         waist="Steppe Sash",
  124.         legs="Hes. Hose +1",
  125.         feet="Hes. Gaiters +1"
  126.         }
  127.        
  128.     -- Subjob JA precast   
  129.    
  130.     sets.precast.Waltz =
  131.         {
  132.         head="Kheper Bonnet",
  133.         neck="Aife's Medal",
  134.         ear1="Roundel Earring",
  135.         ear2="Aqua Pearl",
  136.         body="Otronif Harness",
  137.         hands="Hes. Gloves +1",
  138.         ring1="Aquasoul Ring",
  139.         ring2="Kunaji Ring",
  140.         waist="Cognizant Belt",
  141.         legs="Nahtirah Trousers",
  142.         feet="Hes. Gaiters +1"
  143.         }
  144.        
  145.     sets.precast.Provoke =
  146.         {
  147.         ammo="Iron Gobbet",
  148.         neck="Invidia Torque",
  149.         body="Arhat's Gi +1",
  150.         back="Fravashi Mantle"
  151.         }
  152.     sets.precast['Flash'] = sets.precast.Provoke
  153.    
  154.     -- VS Base
  155.     sets.precast.VSDD =
  156.         {
  157.         ammo="Potestas Bomblet",
  158.         head="Uk'uxkaj Cap",
  159.         neck="Rancor Collar",
  160.         left_ear="Tati Earring",
  161.         right_ear="Tati Earring",
  162.         body="Anch. Cyclas +1",
  163.         hands="Anch. Gloves +1",
  164.         left_ring="Ifrit Ring",
  165.         right_ring="Ifrit Ring",
  166.         back="Rancorous Mantle",
  167.         waist="Prosilio Belt",     
  168.         legs="Otronif brais +1",
  169.         feet=QaaxoMAB
  170.         }
  171.        
  172.     sets.precast.VSSACC = set_combine(sets.precast.VSDD,
  173.         {
  174.             legs="Ighwa Trousers",
  175.            
  176.             feet="Daihanshi Habaki"
  177.         })
  178.        
  179.     sets.precast.VSHACC = set_combine(sets.precast.VSSACC,
  180.         {
  181.             head="Whirlpool Mask",
  182.             ammo="Honed Tathlum",
  183.             neck="Light Gorget",
  184.             back="Rancorous Mantle"
  185.         })
  186.    
  187.     -- VS Impetus
  188.     sets.precast.VSImpetus = set_combine(sets.precast.VSDD,
  189.         {
  190.         body="Tantra Cyclas +2",
  191.         back="Vespid Mantle"
  192.         })
  193.        
  194.     -- VS Acc Base
  195.     sets.precast.VSACC= set_combine(sets.precast.VSHACC,
  196.         {
  197.             body="Manibozho Jerkin",
  198.             waist="Anguinus Belt",
  199.             back="Anchoret's Mantle"
  200.         })
  201.        
  202.    
  203.    
  204.     -- VS Acc + Impetus
  205.     sets.precast.VSImpacc = set_combine(sets.precast.VSACC,
  206.         {
  207.         body="Tantra Cyclas +2",
  208.         })
  209.     sets.precast.VSImpSacc = set_combine(sets.precast.VSSACC,
  210.         {
  211.         body="Tantra Cyclas +2",
  212.         })
  213.     sets.precast.VSImpHacc = set_combine(sets.precast.VHACC,
  214.         {
  215.         body="Tantra Cyclas +2",
  216.         })
  217.        
  218.     -- Default Set for VS  
  219.     sets.precast['Victory Smite'] = sets.precast.VSDD
  220.    
  221.     sets.precast['Spinning Attack'] = sets.precast.VSDD
  222.    
  223.    
  224.  
  225.    
  226.     -- AF Set
  227.     sets.precast.AFDD =
  228.         {
  229.             hands= "Anch. Gloves +1",
  230.             body= "Anch. Cyclas +1",
  231.             feet= "Qaaxo Leggings",
  232.             ammo= "Potestas Bomblet",
  233.             ring1= "Ifrit Ring",
  234.             ring2= "Ifrit Ring",
  235.             waist= "Caudata Belt",
  236.             legs= "Qaaxo Tights",
  237.             ear1= "Tati Earring",
  238.             back= "Rancorous Mantle",
  239.             neck= "Rancor Collar",
  240.             ear2= "Tati Earring",
  241.             head= "Uk'uxkaj Cap"
  242.  
  243.         }
  244.    
  245.     sets.precast.AFSACC = set_combine(sets.precast.AFDD,
  246.         {
  247.             hands= "Hegira Wristbands",
  248.             legs= "Ighwa Trousers"
  249.         })
  250.    
  251.     sets.precast.AFHACC = set_combine(sets.precast.AFSACC,
  252.         {
  253.             feet= "Qaaxo Leggings",
  254.             body ="Shned. Tabard +1",
  255.             waist= "Caudata Belt"
  256.         })
  257.    
  258.     sets.precast.AFACC = set_combine(sets.precast.AFHACC,
  259.         {
  260.            
  261.             back= "Letalis Mantle",
  262.             ear1= "Steelflash Earring",
  263.             ear2= "Zennaroi Earring",
  264.             ammo= "Honed Tathlum",
  265.             neck ="Tjukurrpa Medal",
  266.             head ="Whirlpool Mask"
  267.  
  268.         })
  269.  
  270.     -- Default Set for AF  
  271.     sets.precast['Ascetic\'s Fury'] = sets.precast.AFDD
  272.    
  273.     -- Lunge/Swipe sets MAB +104 - INT + 97 = 152MAB
  274.     sets.precast['Lunge'] =
  275.         {
  276.             --sub="Zuuxowu Grip",
  277.             ammo="Dosis Tathlum",
  278.             head="Fugacity Beret +1",
  279.             body="Sombra Harness",
  280.             hands="Nilas GLoves",
  281.             legs="Shneddick tights +1",
  282.             feet=QaaxoMAB,
  283.             left_ear="Friomisi Earring",
  284.             right_ear="Crematio Earring",
  285.             back="Toro Cape",
  286.             neck="Stoicheion Medal",
  287.             ring1 = "Acumen Ring",
  288.             ring2 = "Fenrir Ring +1"
  289.         }
  290.        
  291.     sets.precast['Swipe'] = sets.precast['Lunge']
  292.     sets.precast['Shoulder Tackle'] = sets.precast['Lunge']
  293.     sets.precast['Shattersoul'] = sets.precast['Lunge']
  294.     -- SS Base
  295.     sets.precast.SSDD =
  296.         {
  297.         ammo="Potestas Bomblet",
  298.         head="Felistris Mask",
  299.         neck="Justiciar's Torque",
  300.         ear1="Tati Earring",
  301.         ear2="Pixie Earring",
  302.         body="Dread Jupon",
  303.         hands="Anch. Gloves +1",
  304.         ring1="Thundersoul Ring",
  305.         ring2="Rajas Ring",
  306.         back="Vespid Mantle",
  307.         waist="Wanion belt",
  308.         legs="Manibozho brais",
  309.         feet="Daihanshi Habaki"
  310.         }
  311.        
  312.     -- SS SAcc
  313.     sets.precast.SSSACC= set_combine(sets.precast.SSDD,
  314.         {
  315.             neck="Light Gorget",
  316.             back="Anchoret's Mantle"
  317.         })
  318.        
  319.     -- SS HAcc
  320.     sets.precast.SSHACC= set_combine(sets.precast.SSSACC,
  321.         {
  322.             head="Whirlpool Mask",
  323.             ammo="Honed Tathlum"
  324.         })
  325.    
  326.     -- SS Acc
  327.     sets.precast.SSACC= set_combine(sets.precast.SSHACC,
  328.         {
  329.             body="Manibozho Jerkin",
  330.             waist="Anguinus Belt"
  331.         })
  332.        
  333.     -- SS Acc
  334.     sets.precast['Utsusemi: Ichi']=  
  335.         {
  336.         head="Haruspex Hat",
  337.         neck="Magoraga Beads",
  338.         body="Dread Jupon",
  339.         Right_ring = "Prolix Ring",
  340.         Left_ear = "Loquac. Earring",
  341.         waist = "Black Belt",
  342.         feet = "Daihanshi Habaki",
  343.         hands = "Thaumas Gloves"
  344.         }
  345.     sets.precast['Utsusemi: Ni']=  
  346.         {
  347.         head="Haruspex Hat",
  348.         neck="Magoraga Beads",
  349.         body="Dread Jupon",
  350.         Right_ring = "Prolix Ring",
  351.         Left_ear = "Loquac. Earring",
  352.         waist = "Black Belt",
  353.         feet = "Daihanshi Habaki",
  354.         hands = "Thaumas Gloves"
  355.         }
  356.    
  357.     -- Default Set for SS
  358.     sets.precast['Shijin Spiral']= sets.precast.SSDD
  359.    
  360.     -- FH Base
  361.     sets.precast.FHDD =
  362.         {
  363.         ammo="Tantra Tathlum",
  364.         head="Whirlpool Mask",
  365.         neck="Asperity Necklace",
  366.         left_ear="Bladeborn Earring",
  367.         right_ear="Soil Pearl",    
  368.         body="Manibozho Jerkin",
  369.         hands="Hes. Gloves +1",
  370.         back="Vespid Mantle",
  371.         waist="Prosilio Belt",
  372.         left_ring="Terrasoul Ring",
  373.         right_ring="Terrasoul Ring",
  374.         legs="Anch. Hose +1",
  375.         feet="Hes. Gaiters +1 +1"
  376.         }
  377.    
  378.     -- FH Acc
  379.    
  380.     sets.precast.FHACC = set_combine(sets.precast.FHDD,
  381.         {
  382.         ammo="Tantra Tathlum",
  383.         neck="Light Gorget",
  384.         hands="Hes. Gloves +1",
  385.         waist="Caudata Belt",
  386.         legs="Kaabnax Trousers",
  387.         feet="Hes. Gaiters +1 +1",
  388.         })
  389.    
  390.     -- Default set for FH
  391.     sets.precast['Final Heaven'] = sets.precast.FHDD
  392.    
  393.     -- Others WS Set   
  394.     sets.precast.WS =
  395.         {    
  396.         ammo="Potestas Bomblet",
  397.         head="Uk'uxkaj Cap",
  398.         neck="Tjukurrpa Medal",
  399.         left_ear="Steelflash Earring",
  400.         right_ear="Bladeborn Earring",
  401.         body="Manibozho Jerkin",
  402.         hands="Anch. Gloves +1",
  403.         left_ring="Ifrit Ring",
  404.         right_ring="Ifrit Ring",
  405.         back="Vespid Mantle",
  406.         waist="Windbuffet Belt +1",
  407.         legs="Quiahuiz Trousers",
  408.         feet="Hes. Gaiters +1 +1"
  409.         }
  410.    
  411.     -- TP sets
  412.     sets.TP = {}
  413.    
  414.     -- TP DD
  415.    
  416.     sets.TP.DD =
  417.         {
  418.         ammo="Ginsen",
  419.         head="Felistris Mask",
  420.         neck="Asperity Necklace",
  421.         ear1="Steelflash Earring",
  422.         ear2="Bladeborn Earring",
  423.         body="Thaumas Coat",
  424.         hands="Otronif Gloves +1",
  425.         ring1="Rajas Ring",
  426.         ring2="Epona's Ring",
  427.         back="Atheling Mantle",
  428.         waist="Windbuffet Belt +1",
  429.         legs="Otronif Brais +1",
  430.         feet="Soku. Sune-Ate",
  431.         }
  432.    
  433.     sets.sTP =
  434.         {
  435.         ammo="Ginsen",
  436.         head="Otronif Mask +1",
  437.         neck="Dakatsu Nodowa",
  438.         ear1="Steelflash Earring",
  439.         ear2="Tripudio Earring",
  440.         body="Thaumas Coat",
  441.         hands="Otronif Gloves +1",
  442.         ring1="Rajas Ring",
  443.         ring2="Epona's Ring",
  444.         back="Tactical Mantle",
  445.         waist="Windbuffet Belt +1",
  446.         legs="Otronif Brais +1",
  447.         feet="Soku. Sune-Ate",
  448.         }
  449.    
  450.     sets.KickAtk = set_combine(sets.TP.DD,
  451.         {
  452.             legs="Hes. Hose +1",
  453.             feet="Soku. Sune-Ate"
  454.         })
  455.        
  456.     sets.TP.SAcc = set_combine(sets.TP.DD,
  457.         {
  458.             back="Anchoret's mantle",
  459.             head="Whirlpool Mask",
  460.             ammo="Honed Tathlum"
  461.         })
  462.        
  463.     sets.TP.HAcc = set_combine(sets.TP.SAcc,
  464.         {
  465.             neck="Iqabi Necklace",
  466.             hands="Hes. Gloves +1",
  467.             legs="Ighwa Trousers",
  468.             waist="Olseni Belt",
  469.             feet="Daihanshi Habaki"
  470.         })
  471.        
  472.     -- TP Acc sets 
  473.    
  474.     sets.TP.Acc = set_combine(sets.TP.HAcc,
  475.         {
  476.             body="Mekosu. Harness",
  477.             ring2="Enlivened Ring",
  478.             ring1="Beeline Ring",
  479.             ear2="Zennaroi earring",
  480.             feet=QaaxoAcc
  481.         })
  482.        
  483.     sets.precast.acclvl = sets.TP.DD
  484.    
  485.     -- TP Hybrid Acc/PDT
  486.    
  487.     sets.TP.Hybrid= set_combine(sets.TP.Acc,
  488.         {
  489.  
  490.         head="Whirlpool Mask",
  491.         body="Otro. Harness +1",
  492.         hands="Otronif Gloves +1",
  493.         legs="Otronif Brais +1",
  494.         feet="Otronif Boots +1",
  495.         neck="Twilight Torque",
  496.         left_ring="Defending Ring",
  497.         back="Shadow Mantle",
  498.         })
  499.    
  500.     -- TP Impetus
  501.     sets.TP.Impetus=set_combine(sets.TP.DD,
  502.         {
  503.         body="Tantra Cyclas +2"
  504.         })
  505.    
  506.     -- PDT
  507.     sets.PDT =
  508.         {
  509.  
  510.         ammo="Brigantia Pebble",
  511.         head="Otronif Mask +1",
  512.         left_ear="Black Earring",
  513.         right_ear="Black Earring",
  514.         neck="Twilight Torque",
  515.         body="Otro. Harness +1",
  516.         hands="Otronif Gloves +1",
  517.         left_ring="Dark Ring",
  518.         right_ring="Defending Ring",
  519.         back="Shadow Mantle",
  520.         waist="Black Belt",
  521.         legs="Otronif Brais +1",
  522.         feet="Otronif Boots +1"
  523.         }
  524.  
  525.     --EVASION
  526.     sets.Evasion =
  527.         {
  528.         feet= "Qaaxo Leggings",
  529.         legs= "Qaaxo Tights",
  530.         head= "Qaaxo Mask",
  531.         ear1= "Phawaylla Earring",
  532.         ear2= "Evader Earring",
  533.         ring1= "Alert Ring",
  534.         ring2= "Beeline Ring",
  535.         back= "Fravashi Mantle",
  536.         waist= "Kasiri Belt",
  537.         hands= "Qaaxo Mitaines",
  538.         body= "Qaaxo Harness",
  539.         neck= "Ej necklace",
  540.         ammo= "Goblin Cracker"
  541.  
  542.         }
  543.        
  544.    
  545.    
  546.     -- MDT
  547.     sets.MDTa =
  548.         {
  549.  
  550.         ammo="Vanir Battery",
  551.         head="Fugacity Beret +1",
  552.         neck="Twilight Torque",
  553.         ear1="Merman's Earring",
  554.         ear2="Merman's Earring",
  555.         body="Otro. Harness +1",
  556.         hands="Otronif Gloves +1",
  557.         ring1="Shadow Ring",
  558.         ring2="Defending Ring",
  559.         back="Engulfer Cape +1",
  560.         waist="Lieutenant's Sash",
  561.         legs="Otronif Brais +1",
  562.         feet="Otronif Boots +1"
  563.         }
  564.        
  565.    
  566.     sets.WaterMDT= set_combine(sets.MDTa,
  567.         {
  568.             ammo="Aqua Sachet",
  569.             --back="Tuilha Cape",
  570.             ring1="Zanhi Ring"
  571.         })
  572.    
  573.     sets.IceMDT= set_combine(sets.MDTa,
  574.         {
  575.             ammo="Snow Sachet"  --back="Toro Cape"
  576.         })
  577.        
  578.     sets.FireMDT= set_combine(sets.MDTa,
  579.         {
  580.             ammo="Flame Sachet"
  581.             --back="Buquwik Cape"
  582.         })
  583.  
  584.     sets.EarthMDT = set_combine(sets.MDTa,
  585.         {
  586.             ammo="Soil Sachet"
  587.             --back="Iximulew Cape"
  588.         })
  589.  
  590.     sets.ThunderMDT = set_combine(sets.MDTa,
  591.         {
  592.             ammo="Thunder Sachet"
  593.             --back="Kayapa Cape"
  594.         })
  595.  
  596.     sets.WindMDT = set_combine(sets.MDTa,
  597.         {
  598.             ammo="Breeze Sachet"
  599.             --back="Ik Cape"
  600.         })
  601.     sets.LightMDT = set_combine(sets.MDTa,
  602.         {
  603.             ammo="Light Sachet"
  604.         })
  605.     sets.DarkMDT = set_combine(sets.MDTa,
  606.         {
  607.             ammo="Dark Sachet"
  608.         })
  609.    
  610.     sets.MDT = sets.MDTa
  611.    
  612.     --MEva
  613.     sets.ResistMEva =
  614.     {
  615.         head="Wayfarer Circlet",
  616.         back="Mubvum. Mantle",
  617.         legs="Wayfarer Slops",
  618.         body="Wayfarer Robe",
  619.         hands="Wayfarer Cuffs",
  620.         feet="Wayfarer Clogs",
  621.         ear2="Flashward earring",
  622.         ear1="Sanare Earring"
  623.     }
  624.    
  625.     -- Resist Petrify
  626.     sets.ResistPetrify = set_combine(sets.ResistMEva,
  627.     {
  628.         ear1="Black Earring",
  629.         ear2="Black Earring",
  630.         neck="Apathy Gorget",
  631.         ring1="Unfettered Ring",
  632.         ring2="Stormsoul Ring"
  633.     })
  634.    
  635.     -- Resist Para
  636.     sets.ResistPara = set_combine(sets.ResistMEva,
  637.     {
  638.         ring1="Icecrack Ring",
  639.         ring2="Ifrit Ring"
  640.     })
  641.    
  642.     -- Resist Sleep
  643.     sets.ResistSleep = set_combine(sets.ResistMEva,
  644.     {
  645.         ear1="Volunt Earring",
  646.         ring2="Carb. Ring",
  647.         neck="M. No.17's Locket",
  648.         ring1="Wuji Ring"
  649.     })
  650.    
  651.     -- Resist Sleep
  652.     sets.ResistCharm = set_combine(sets.ResistMEva,
  653.     {
  654.         ear1="Insomnia Earring",
  655.         ring1="Wuji Ring"
  656.     })
  657.    
  658.     --Aftercast/Idle rules
  659.     sets.aftercast = {}
  660.     sets.aftercast.TP = sets.TP.DD
  661.    
  662.     --
  663.     --sets.Vanity =
  664.     --{
  665.     --  body ="Tenryu Domaru",
  666.     --  hands = "Anch. Gloves +1",
  667.     --  legs = "Hachiryu Haidate",
  668.     --  feet = "Daihanshi Habaki"
  669.     --}
  670.  
  671.     sets.aftercast.Idle = {}
  672.    
  673.     sets.idlen =
  674.         {    
  675.         ammo="Cheruski Needle",
  676.         head="Oce. Headpiece +1",
  677.         neck="Wiglen Gorget",
  678.         left_ear="Bladeborn Earring",
  679.         right_ear="Steelflash Earring",
  680.         body="Hes. Cyclas +1",
  681.         waist="Windbuffet Belt +1",
  682.         hands="Garden Bangles",
  683.         left_ring="Paguroidea Ring",
  684.         right_ring="Sheltered Ring",
  685.         back="Mecisto. Mantle",
  686.         legs="Quiahuiz Trousers",
  687.         feet="Hermes' Sandals"
  688.         }
  689.        
  690.     sets.idleref =
  691.         {    
  692.         ammo="Cheruski Needle",
  693.         head="Oce. Headpiece +1",
  694.         neck="Wiglen Gorget",
  695.         left_ear="Bladeborn Earring",
  696.         right_ear="Steelflash Earring",
  697.         body="Mekosu. Harness",
  698.         waist="Windbuffet Belt +1",
  699.         hands="Hegira Wristbands",
  700.         left_ring="Paguroidea Ring",
  701.         right_ring="Sheltered Ring",
  702.         back="Mecisto. Mantle",
  703.         legs="Quiahuiz Trousers",
  704.         feet="Hermes' Sandals"
  705.         }
  706.        
  707.     sets.aftercast.Idle = sets.idlen
  708.    
  709.     sets.reive = { neck = "Ygnas's Resolve +1" }
  710.    
  711. end
  712.  
  713. --Cancel WS if Mob is out of range
  714. function pretarget(spell)
  715.     if spell.type=="WeaponSkill" then
  716.         if spell.target.distance > 4.5  then
  717.             add_to_chat(359, ''..player.target.name..' is too far unable to use '..spell.name..' !!! ')
  718.             cancel_spell()
  719.             return
  720.         end
  721.     end
  722. end
  723. foc = 0
  724. --Auto Boost on Certain WS
  725. function precast(spell,action)
  726.     if buffactive.madrigal then
  727.         equip({ear1="Kuwunga Earring"})
  728.         disable("ear1")
  729.     end
  730.    
  731.     if spell.name == "Focus" and windower.ffxi.get_ability_recasts()[13] < 1 and not buffactive.amnesia and foc == 0 then
  732.         foc = 1
  733.         cancel_spell()
  734.         send_command('input /ja Focus <me>; wait 1; input /ja Dodge <me>; wait 1; input /ja Impetus <me>; wait0.5; input //gs c "Foc"')
  735.     end
  736.    
  737.     if BoostdWS:contains(spell.name) and windower.ffxi.get_ability_recasts()[16] < 1 and not buffactive.amnesia and autoboost == 1 then
  738.         cancel_spell()
  739.         if player.target.name == "Perdurable Raptor" then
  740.             send_command('input /ja "Boost" <me>;wait 1.5;input /ws "Shijin Spiral" '..spell.target.raw..'')
  741.             add_to_chat(256, '*-*-*-*-*-*-*-*-* [ Boosting > > > Shijin Spiral ] *-*-*-*-*-*-*-*-*' )
  742.         else
  743.             ---- BUG SUR RAPTOR, si Boost off, ne remplace pas
  744.             send_command('input /ja "Boost" <me>;wait 1.5;input /ws "'..spell.name..'" '..spell.target.raw..'')
  745.             add_to_chat(256, '*-*-*-*-*-*-*-*-* [ Boosting > > > '..spell.name..' ] *-*-*-*-*-*-*-*-*' )
  746.         end
  747.         return
  748.     end
  749.    
  750.     if spell.name == "Victory Smite" and player.target.name == "Perdurable Raptor" then
  751.         send_command('input /ws "Shijin Spiral" '..spell.target.raw..'')
  752.             add_to_chat(256, '*-*-*-*-*-*-*-*-* [ Boosting > > > Shijin Spiral ] *-*-*-*-*-*-*-*-*' )
  753.     end
  754.    
  755.     if spell.name == "Victory Smite" and player.TP == 3000 and not buffactive["Aftermath: Lv.3"] then
  756.         cancel_spell()
  757.         send_command('input /ws "Ascetic\'s Fury" '..spell.target.raw..'')
  758.     end
  759.    
  760.     if spell.name == "Victory Smite" and player.TP >= 1000 and player.TP < 3000 and not buffactive["Aftermath: Lv.3"] and player.equipment.main == "Glanzfaust" then
  761.         cancel_spell()
  762.         add_to_chat(256, '*-*-*-*-*-*-*-*-* [ WAIT FOR 3000TP STUPID BOY ] *-*-*-*-*-*-*-*-*' )
  763.         return
  764.     end
  765.    
  766.     if annulrun == 0 then
  767.     if Runes:contains(spell.name) then
  768.         if player.target.name == "Dakuwaqa" then
  769.             annulrun = 1
  770.             cancel_spell()
  771.             send_command('input /ja "Sulpor" <me>;wait 1.5; input //gs c "Annulrun"')
  772.         elseif player.target.name == "Muyingwa" then
  773.             annulrun = 1
  774.             cancel_spell()
  775.             send_command('input /ja "Gelus" <me>;wait 1.5; input //gs c "Annulrun"')
  776.         elseif player.target.name == "SSS" then
  777.             annulrun = 1
  778.             cancel_spell()
  779.             send_command('input /ja "Gelus" <me>;wait 1.5; input //gs c "Annulrun"')
  780.         elseif player.target.name == "Tojil" then
  781.             if player.target.hpp > 75 then
  782.                 -- Wind Time
  783.                 annulrun = 1
  784.                 cancel_spell()
  785.                 send_command('input /ja Flabra <me>;wait 1.5; input //gs c "Annulrun"')
  786.                 add_to_chat(256, '*-*-*-*-*-*-*-*-* [ Wind proc time (100%->75%) : '..player.target.hpp..' ] *-*-*-*-*-*-*-*-*' )
  787.             elseif player.target.hpp >50 and player.target.hpp <=75 then
  788.                 -- Dark Time
  789.                 annulrun = 1
  790.                 cancel_spell()
  791.                 send_command('input /ja Tenebrae <me>;wait 1.5; input //gs c "Annulrun"')
  792.                 add_to_chat(256, '*-*-*-*-*-*-*-*-* [ Dark proc time (75%->50%) : '..player.target.hpp..' ] *-*-*-*-*-*-*-*-*' )
  793.             elseif player.target.hpp >25 and player.target.hpp <=50 then
  794.                 -- Light Time
  795.                 annulrun = 1
  796.                 cancel_spell()
  797.                 send_command('input /ja Lux <me>;wait 1.5; input //gs c "Annulrun"')
  798.                 add_to_chat(256, '*-*-*-*-*-*-*-*-* [ Light proc time (50%->25%) : '..player.target.hpp..' ] *-*-*-*-*-*-*-*-*' )
  799.             elseif player.target.hpp <=25 then
  800.                 -- Water Time
  801.                 annulrun = 1
  802.                 cancel_spell()
  803.                 send_command('input /ja Unda <me>;wait 1.5; input //gs c "Annulrun"')
  804.                 add_to_chat(256, '*-*-*-*-*-*-*-*-* [ Water proc time (25%->0%) : '..player.target.hpp..' ] *-*-*-*-*-*-*-*-*' )
  805.             end
  806.         --- HENNETIEL UNABLE SULPOR
  807.         elseif kindofdelve == 3 then
  808.                 cancel_spell()
  809.                 if Jagil == 0 then
  810.                     add_to_chat(256, '*-*-*-*-*-*-*-*-* [ Divagating Jagil needs to be killed before Runes ] *-*-*-*-*-*-*-*-*' )
  811.                 else
  812.                     annulrun = 1
  813.                     send_command('input /ja Sulpor <me>;wait 1.5; input //gs c "Annulrun"')
  814.                 end
  815.         end
  816.     end
  817.     end
  818.    
  819.     --- MATA BOT
  820.     if player.target.name == "Volatile Matamata" then
  821.         if spell.name == "Formless Strikes" and countmata<5 then
  822.             cancel_spell()
  823.             add_to_chat(256, '*-*-*-*-*-*-*-*-* [ Don\'t be stupid, no FS before 5 ] *-*-*-*-*-*-*-*-*' )
  824.         end
  825.     end
  826.  
  827.     if sets.precast[spell.english] then
  828.         if buffactive['Impetus'] then
  829.             if sets.aftercast.TP == sets.TP.Acc then
  830.                 sets.precast['Victory Smite'] = sets.precast.VSImpacc
  831.             else       
  832.                 if sets.aftercast.TP == sets.TP.DD then
  833.                     sets.precast['Victory Smite'] = sets.precast.VSImpetus
  834.                 end
  835.             end
  836.         end
  837.             equip(sets.precast[spell.english])
  838.         elseif spell.type=="WeaponSkill" then
  839.             equip(sets.precast.WS)
  840.         elseif string.find(spell.english,'Waltz') then
  841.             equip(sets.precast.Waltz)
  842.     end
  843. end
  844.  
  845. function midcast(spell,action)
  846. end
  847.  
  848. function aftercast(spell,action)
  849.     enable("ear1")
  850.     if spell.name == null then
  851.             return -- Cancel Aftercast for outofrange/unable to see.
  852.     end
  853.    
  854.    
  855.  
  856.     if player.status == 'Engaged' then
  857.         if spell.name == 'Boost' then
  858.             return -- Cancel aftercast for boost, coz it was overlapping with the precast of the ws when used all in a macro.
  859.         else
  860.             equip(sets.aftercast.TP)
  861.         end
  862.     else
  863.         if sets.aftercast.TP == sets.PDT or sets.aftercast.TP == sets.MDT then
  864.             equip(sets.aftercast.TP)
  865.             add_to_chat(005,'*-*-*-*-*-*-*-*-* [ Engaged ] *-*-*-*-*-*-*-*-*')
  866.         else
  867.             equip(sets.aftercast.Idle)
  868.             add_to_chat(392,'*-*-*-*-*-*-*-*-* [ Idle ] *-*-*-*-*-*-*-*-*')
  869.         end
  870.     end
  871. end
  872.  
  873. function status_change(new,old)
  874.     if new == 'Engaged' then
  875.         enga = 1
  876.         -- Detection of Evasion of NMs, and autochoose an Accset
  877.        
  878.         if AccLvlFAcc:contains(player.target.name) then
  879.             send_command('input //gs c "acc" ')
  880.         elseif AccLvlHAcc:contains(player.target.name) then
  881.             send_command('input //gs c "hacc" ')
  882.         elseif AccLvlSAcc:contains(player.target.name) then
  883.             send_command('input //gs c "sacc" ')
  884.         elseif KickAtk:contains(player.target.name) then
  885.             send_command('input //gs c "katk" ')
  886.         elseif AccLvlNTP:contains(player.target.name) then
  887.             send_command('input //gs c "normal" ')
  888.         else
  889.             send_command('input //gs c "normal" ')
  890.             add_to_chat(392,'*-*-*-*-*-*-*-*-* [ '..player.target.name..' is Unknown in db, starting parsing. ] *-*-*-*-*-*-*-*-*')
  891.             accparsing = 1
  892.         end
  893.        
  894.         -- Detection of Element Type of NMs
  895.         if FireNM:contains(player.target.name) then
  896.             sets.MDT = sets.FireMDT
  897.             add_to_chat(392,'*-*-*-*-*-*-*-*-* [ '..player.target.name..' is Fire Based ] *-*-*-*-*-*-*-*-*')
  898.         elseif WaterNM:contains(player.target.name) then
  899.             sets.MDT = sets.WaterMDT
  900.             add_to_chat(392,'*-*-*-*-*-*-*-*-* [ '..player.target.name..' is Water Based ] *-*-*-*-*-*-*-*-*')
  901.         elseif WindNM:contains(player.target.name) then
  902.             sets.MDT = sets.WindMDT
  903.             add_to_chat(392,'*-*-*-*-*-*-*-*-* [ '..player.target.name..' is Wind Based ] *-*-*-*-*-*-*-*-*')
  904.         elseif IceNM:contains(player.target.name) then
  905.             sets.MDT = sets.IceMDT
  906.             add_to_chat(392,'*-*-*-*-*-*-*-*-* [ '..player.target.name..' is Ice Based ] *-*-*-*-*-*-*-*-*')
  907.         elseif ThunderNM:contains(player.target.name) then
  908.             sets.MDT = sets.ThunderMDT
  909.             add_to_chat(392,'*-*-*-*-*-*-*-*-* [ '..player.target.name..' is Thunder Based ] *-*-*-*-*-*-*-*-*')
  910.         elseif EarthNM:contains(player.target.name) then
  911.             sets.MDT = sets.EarthMDT
  912.             add_to_chat(392,'*-*-*-*-*-*-*-*-* [ '..player.target.name..' is Earth Based ] *-*-*-*-*-*-*-*-*')
  913.         elseif LightNM:contains(player.target.name) then
  914.             sets.MDT = sets.LightMDT
  915.             add_to_chat(392,'*-*-*-*-*-*-*-*-* [ '..player.target.name..' is Light Based ] *-*-*-*-*-*-*-*-*')
  916.         elseif DarkNM:contains(player.target.name) then
  917.             sets.MDT = sets.DarkMDT
  918.             add_to_chat(392,'*-*-*-*-*-*-*-*-* [ '..player.target.name..' is Dark Based ] *-*-*-*-*-*-*-*-*')
  919.         else
  920.             sets.MDT = sets.MDTa
  921.         end
  922.        
  923.         equip(sets.aftercast.TP)
  924.     else
  925.     enga = 0
  926.     TENROWS = 0
  927.     MISSROWS = 0
  928.     HITROWS = 0
  929.     accparsing = 0
  930.         if sets.aftercast.TP == sets.PDT then
  931.             equip(sets.aftercast.TP)
  932.         elseif sets.aftercast.TP == sets.MDT then
  933.             equip(sets.aftercast.TP)
  934.             add_to_chat(005,'*-*-*-*-*-*-*-*-* [ Engaged ] *-*-*-*-*-*-*-*-*')
  935.         else
  936.             equip(sets.aftercast.Idle)
  937.             add_to_chat(392,'*-*-*-*-*-*-*-*-* [ Idle ] *-*-*-*-*-*-*-*-*')
  938.         end
  939.         if killingmandy == 1 then
  940.              stoprun = windower.ffxi.run(false)
  941.         end
  942.     end
  943. end
  944.  
  945. memoryset = {}
  946. function buff_change(status,gain_or_loss)
  947.     if status == "sleep" then
  948.         if gain_or_loss then
  949.             equip({neck="Opo-opo Necklace"})
  950.         end
  951.     end
  952.    
  953.     if status == "Reive Mark" then
  954.         if gain_or_loss then
  955.             equip({neck="Ygnas's Resolve +1"})
  956.             disable("neck")
  957.             add_to_chat(278, "REIVE ----------> WS+25% - Regain up")
  958.         else
  959.             enable("neck")
  960.             add_to_chat(278, "REIVE ----------> OFF")
  961.         end
  962.     end
  963.    
  964.     if status == "encumbrance" then
  965.         if not gain_or_loss then
  966.             equip({main="Glanzfaust"})
  967.             add_to_chat(278, "----------> Glanzfaust got back")
  968.         end
  969.     end
  970.    
  971.     if status == "Impetus" then
  972.         if gain_or_loss then
  973.             if sets.aftercast.TP == sets.TP.Acc then
  974.                 sets.precast['Victory Smite'] = sets.precast.VSImpacc
  975.                 add_to_chat(006, '*-*-*-*-*-*-*-*-* [ Victory Smite WS Set = Impetus - Acc ] *-*-*-*-*-*-*-*-*')
  976.             else
  977.                 if sets.aftercast.TP == sets.MDT or sets.aftercast.TP == sets.PDT then
  978.                     sets.precast['Victory Smite'] = sets.precast.VSImpetus
  979.                     send_command('@input /e00 Victory Smite WS Set = P/MDT - VSImpetus ')
  980.                     add_to_chat(007,'*-*-*-*-*-*-*-*-* [ Victory Smite WS Set = P/MDT - VS - Impetus ] *-*-*-*-*-*-*-*-*')
  981.                 else
  982.                     equip(sets.TP.Impetus)
  983.                     sets.aftercast.TP = sets.TP.Impetus        
  984.                     sets.precast['Victory Smite'] = sets.precast.VSImpetus
  985.                     add_to_chat(008, '*-*-*-*-*-*-*-*-* [ Victory Smite WS Set = VS - Impetus ] *-*-*-*-*-*-*-*-*')
  986.                    
  987.                 end
  988.             end
  989.         else
  990.             if sets.aftercast.TP == sets.TP.Acc then
  991.                 sets.precast['Victory Smite'] = sets.precast.VSACC
  992.                 add_to_chat(206, '*-*-*-*-*-*-*-*-* [ Victory Smite WS Set = Acc ] *-*-*-*-*-*-*-*-*')
  993.             else
  994.                 if sets.aftercast.TP == sets.MDT then
  995.                     equip(sets.MDT)
  996.                     sets.precast['Victory Smite'] = sets.precast.VSDD
  997.                     add_to_chat(207, '*-*-*-*-*-*-*-*-* [ Victory Smite WS Set = Normal -- MDT SET ON ] *-*-*-*-*-*-*-*-*')
  998.                 elseif sets.aftercast.TP == sets.PDT then
  999.                     equip(sets.PDT)
  1000.                     sets.precast['Victory Smite'] = sets.precast.VSDD
  1001.                     add_to_chat(209, '*-*-*-*-*-*-*-*-* [ Victory Smite WS Set = Normal -- PDT SET ON ] *-*-*-*-*-*-*-*-*')
  1002.                 else
  1003.                     equip(sets.TP.DD)
  1004.                     sets.aftercast.TP = sets.TP.DD
  1005.                     sets.precast['Victory Smite'] = sets.precast.VSDD
  1006.                     add_to_chat(210, '*-*-*-*-*-*-*-*-* [Victory Smite WS Set = Normal] *-*-*-*-*-*-*-*-*')        
  1007.                 end
  1008.             end
  1009.         end
  1010.     end
  1011.     -- AM3
  1012.    
  1013.     if status == "Aftermath: Lv.3" then
  1014.     if gain_or_loss then
  1015.         --equip(sets.sTP)
  1016.         --memoryset= sets.aftercast.TP
  1017.         --sets.aftercast.TP = sets.sTP
  1018.         local timer_cmd = 'timers c "AM333333333" 180 down abilities/00255.png'
  1019.         send_command(timer_cmd)
  1020.        
  1021.         add_to_chat(287, '*-*-*-*-*-*-*-*-* [AFTERMATH 333333333333333333333333333] *-*-*-*-*-*-*-*-*')    
  1022.     else
  1023.         --equip(memoryset)
  1024.         --sets.aftercast.TP = memoryset
  1025.         add_to_chat(211, '*-*-*-*-*-*-*-*-* [Aftermath lost] *-*-*-*-*-*-*-*-*')
  1026.     end
  1027.     end
  1028.    
  1029. end
  1030. -- Toggles -- SE Macros: /console gs c "command" [case sensitive]
  1031. function self_command(command)
  1032.         if command == 'normal' then
  1033.             if player.status == 'Engaged' then 
  1034.                 equip(sets.TP.DD)
  1035.                 sets.aftercast.TP = sets.TP.DD
  1036.                 sets.precast.acclvl = sets.TP.DD
  1037.                 sets.precast['Victory Smite'] = sets.precast.VSDD
  1038.                 sets.precast['Shijin Spiral'] = sets.precast.SSDD
  1039.                 sets.precast['Ascetic\'s Fury'] = sets.precast.AFDD
  1040.                 add_to_chat(455, '*-*-*-*-*-*-*-*-* [ Normal TP ] *-*-*-*-*-*-*-*-*')
  1041.             else
  1042.                 equip(sets.aftercast.Idle)
  1043.                 sets.aftercast.TP = sets.TP.DD
  1044.                 sets.precast.acclvl = sets.TP.DD
  1045.                 sets.precast['Victory Smite'] = sets.precast.VSDD
  1046.                 sets.precast['Shijin Spiral'] = sets.precast.SSDD
  1047.                 sets.precast['Ascetic\'s Fury'] = sets.precast.AFDD
  1048.                 add_to_chat(455, '*-*-*-*-*-*-*-*-* [ Normal TP - Idle ] *-*-*-*-*-*-*-*-*')
  1049.             end
  1050.         elseif command == 'nodt' then
  1051.                 equip(sets.precast.acclvl)
  1052.                 sets.aftercast.TP = sets.precast.acclvl
  1053.         elseif command == 'checklvl' then
  1054.             if player.target.name then
  1055.                 if AccLvlFAcc:contains(player.target.name) then
  1056.                     send_command('input //gs c "normal" ')
  1057.                     add_to_chat(392,'*-*-*-*-*-*-*-*-* [ Erased from database, reparsing... ] *-*-*-*-*-*-*-*-*')
  1058.                     file = io.open(windower.addon_path.."data/MNK/AccLvl/FAcc.lua", "r")
  1059.                         texting = file:read("*a")
  1060.                         print(texting)
  1061.                         texting = string.gsub(texting,'\n"'..tostring(player.target.name)..'",', '')
  1062.                         print(texting)
  1063.                         file:close()
  1064.                         file = io.open(windower.addon_path.."data/MNK/AccLvl/FAcc.lua", "w")
  1065.                         file:write(tostring(texting))
  1066.                         file:close()
  1067.                         accparsing=1
  1068.                     include("MNK/AccLvl/FAcc.lua")
  1069.                 elseif AccLvlHAcc:contains(player.target.name) then
  1070.                     send_command('input //gs c "normal" ')
  1071.                     add_to_chat(392,'*-*-*-*-*-*-*-*-* [ Erased from database, reparsing... ] *-*-*-*-*-*-*-*-*')
  1072.                     file = io.open(windower.addon_path.."data/MNK/AccLvl/HAcc.lua", "r")
  1073.                         texting = file:read("*a")
  1074.                         print(texting)
  1075.                         texting = string.gsub(texting,'\n"'..tostring(player.target.name)..'",', '')
  1076.                         print(texting)
  1077.                         file:close()
  1078.                         file = io.open(windower.addon_path.."data/MNK/AccLvl/HAcc.lua", "w")
  1079.                         file:write(tostring(texting))
  1080.                         file:close()
  1081.                         accparsing=1
  1082.                     include("MNK/AccLvl/HAcc.lua")
  1083.                 elseif AccLvlSAcc:contains(player.target.name) then
  1084.                     send_command('input //gs c "normal" ')
  1085.                     add_to_chat(392,'*-*-*-*-*-*-*-*-* [ Erased from database, reparsing... ] *-*-*-*-*-*-*-*-*')
  1086.                     file = io.open(windower.addon_path.."data/MNK/AccLvl/SAcc.lua", "r")
  1087.                         texting = file:read("*a")
  1088.                         print(texting)
  1089.                         texting = string.gsub(texting,'\n"'..tostring(player.target.name)..'",', '')
  1090.                         print(texting)
  1091.                         file:close()
  1092.                         file = io.open(windower.addon_path.."data/MNK/AccLvl/SAcc.lua", "w")
  1093.                         file:write(tostring(texting))
  1094.                         file:close()
  1095.                         accparsing=1
  1096.                     include("MNK/AccLvl/SAcc.lua")
  1097.                 elseif AccLvlNTP:contains(player.target.name) then
  1098.                     send_command('input //gs c "normal" ')
  1099.                     add_to_chat(392,'*-*-*-*-*-*-*-*-* [ Erased from database, reparsing... ] *-*-*-*-*-*-*-*-*')
  1100.                     file = io.open(windower.addon_path.."data/MNK/AccLvl/NTP.lua", "r")
  1101.                         texting = file:read("*a")
  1102.                         print(texting)
  1103.                         texting = string.gsub(texting,'\n"'..tostring(player.target.name)..'",', '')
  1104.                         print(texting)
  1105.                         file:close()
  1106.                         file = io.open(windower.addon_path.."data/MNK/AccLvl/NTP.lua", "w")
  1107.                         file:write(tostring(texting))
  1108.                         file:close()
  1109.                         accparsing=1
  1110.                     include("MNK/AccLvl/NTP.lua")
  1111.                 else
  1112.                     send_command('input //gs c "normal" ')
  1113.                     add_to_chat(392,'*-*-*-*-*-*-*-*-* [ NOT registered, so wait ! ] *-*-*-*-*-*-*-*-*')
  1114.                 end
  1115.             else
  1116.                 add_to_chat(392,'*-*-*-*-*-*-*-*-* [ NO TARGET ] *-*-*-*-*-*-*-*-*')
  1117.             end
  1118.         elseif command == 'acc' then
  1119.                 equip(sets.TP.Acc)
  1120.                 sets.aftercast.TP = sets.TP.Acc
  1121.                 sets.precast.acclvl = sets.TP.Acc
  1122.                 sets.precast['Victory Smite'] = sets.precast.VSACC
  1123.                 sets.precast['Shijin Spiral'] = sets.precast.SSACC
  1124.                 sets.precast['Ascetic\'s Fury'] = sets.precast.AFACC
  1125.                 add_to_chat(455, '*-*-*-*-*-*-*-*-* [ Full Acc ] *-*-*-*-*-*-*-*-*')
  1126.         elseif command == 'sacc' then
  1127.                 equip(sets.TP.SAcc)
  1128.                 sets.aftercast.TP = sets.TP.SAcc
  1129.                 sets.precast.acclvl = sets.TP.SAcc
  1130.                 sets.precast['Victory Smite'] = sets.precast.VSSACC
  1131.                 sets.precast['Shijin Spiral'] = sets.precast.SSSACC
  1132.                 sets.precast['Ascetic\'s Fury'] = sets.precast.AFSACC
  1133.                 add_to_chat(455, '*-*-*-*-*-*-*-*-* [ Some Acc ] *-*-*-*-*-*-*-*-*')
  1134.         elseif command == 'hacc' then
  1135.                 equip(sets.TP.HAcc)
  1136.                 sets.aftercast.TP = sets.TP.HAcc
  1137.                 sets.precast.acclvl = sets.TP.HAcc
  1138.                 sets.precast['Victory Smite'] = sets.precast.VSHACC
  1139.                 sets.precast['Shijin Spiral'] = sets.precast.SSHACC
  1140.                 sets.precast['Ascetic\'s Fury'] = sets.precast.AFHDD
  1141.                 add_to_chat(455, '*-*-*-*-*-*-*-*-* [ High Acc ] *-*-*-*-*-*-*-*-*')
  1142.         elseif command == 'katk' then
  1143.                 equip(sets.KickAtk)
  1144.                 sets.aftercast.TP = sets.KickAtk
  1145.                 sets.precast.acclvl = sets.KickAtk
  1146.                 add_to_chat(455, '*-*-*-*-*-*-*-*-* [ Kick ATTAAAAAAAAAAACKs ! ] *-*-*-*-*-*-*-*-*')
  1147.         elseif command == 'hybrid' then
  1148.                 equip(sets.TP.Hybrid)
  1149.                 sets.aftercast.TP = sets.TP.Hybrid
  1150.                 sets.precast['Victory Smite'] = sets.precast.VSACC
  1151.                 sets.precast['Shijin Spiral'] = sets.precast.SSACC
  1152.                 add_to_chat(455, '*-*-*-*-*-*-*-*-* [ Acc Hybrid ] *-*-*-*-*-*-*-*-*')
  1153.         elseif command == 'impetus' then
  1154.                 equip(sets.TP.Impetus)
  1155.                 sets.aftercast.TP = sets.TP.Impetus
  1156.                 sets.precast['Victory Smite'] = sets.precast.VSImpetus
  1157.                 sets.precast['Shijin Spiral'] = sets.precast.SSDD
  1158.                 add_to_chat(455, '*-*-*-*-*-*-*-*-* [ Impetus TP ] *-*-*-*-*-*-*-*-*')
  1159.         elseif command == 'PDT' then
  1160.             equip(sets.PDT)
  1161.             sets.aftercast.TP = sets.PDT
  1162.                 add_to_chat(455, '*-*-*-*-*-*-*-*-* [ PDT ] *-*-*-*-*-*-*-*-*')
  1163.         elseif command == 'MDT' then
  1164.                 equip(sets.MDT)
  1165.                 sets.aftercast.TP = sets.MDT
  1166.                 add_to_chat(501, '*-*-*-*-*-*-*-*-* [ MDT ] *-*-*-*-*-*-*-*-*')
  1167.         elseif command == 'AutoBoost' then
  1168.             if autoboost == 1 then
  1169.                 autoboost = 0
  1170.                 add_to_chat(167, '*-*-*-*-*-*-*-*-* [ AutoBoost OFF ] *-*-*-*-*-*-*-*-*')
  1171.             else
  1172.                 autoboost = 1
  1173.                 add_to_chat(204, '*-*-*-*-*-*-*-*-* [ AutoBoost ON ] *-*-*-*-*-*-*-*-*')
  1174.             end
  1175.         elseif command == 'Annulrun' then
  1176.             annulrun = 0
  1177.         elseif command == 'Foc' then
  1178.             foc = 0
  1179.         elseif command == 'checkset' then
  1180.             check_set()
  1181.         elseif command == 'stp' then
  1182.             equip(sets.sTP)
  1183.         elseif command == 'regpack' then
  1184.             if regpack == 1 then
  1185.                 regpack = 0
  1186.                 add_to_chat(167, '*-*-*-*-*-*-*-*-* [ Packet register OFF ] *-*-*-*-*-*-*-*-*')
  1187.             else
  1188.                 regpack = 1
  1189.                 add_to_chat(204, '*-*-*-*-*-*-*-*-* [ Packet register ON ] *-*-*-*-*-*-*-*-*')
  1190.             end
  1191.     end
  1192. end
  1193.  
  1194. windower.register_event('tp change', function(new_tp, old_tp)
  1195.     if player.target.name== "Volatile Matamata" and countmata<5 then
  1196.         if player.tp >=1000 then
  1197.             send_command('input /ws "Victory Smite" <t> ')
  1198.         end
  1199.     end
  1200.    
  1201.     if player.target.name== "Resplendent Luckybug" and player.target.hpp >=50 then
  1202.         if player.tp >=1000 then
  1203.             send_command('input /ws "Victory Smite" <t> ')
  1204.         end
  1205.     end
  1206.    
  1207.     if player.target.name== "Amaranth Barrier" then
  1208.         if player.tp >=1000 then
  1209.             send_command('input /ws "Victory Smite" <t> ')
  1210.         end
  1211.     end
  1212.    
  1213. end)
  1214.  
  1215. TENROWS = 0
  1216. MISSROWS = 0
  1217. HITROWS = 0
  1218.  
  1219. --- Delve Assistant
  1220. windower.register_event('incoming text', function(original, modified, mode)
  1221.     local match
  1222.        
  1223.        
  1224.        
  1225.         --------------------------------------------------------------
  1226.         ---------------------- MATA BOT ------------------------------
  1227.         --------------------------------------------------------------
  1228.         if player.target.name == "Volatile Matamata" and mataon == 1 then
  1229.             match = original:match('The Volatile Matamata readies')
  1230.        
  1231.             if match then
  1232.             if countmata <6 then
  1233.                 countmata = countmata+1
  1234.             send_command('input /p Volatile Mata @ '..countmata..' ')
  1235.                 add_to_chat(204, '*-*-*-*-*-*-*-*-* [ AutoCounter ] *-*-*-*-*-*-*-*-*')
  1236.             elseif countmata ==6 then
  1237.                 --FS
  1238.                 countmata = countmata+1
  1239.                 send_command('input /ja "Formless Strikes" <me> ')
  1240.                 send_command('input /p Volatile Mata @ '..countmata..' : Formless Strikes !!! ')
  1241.                 add_to_chat(204, '*-*-*-*-*-*-*-*-* [ AutoCounter : FS ON ] *-*-*-*-*-*-*-*-*')
  1242.             else
  1243.                 countmata = 1
  1244.                 send_command('input /p Volatile Mata @ '..countmata..' ')
  1245.                 add_to_chat(204, '*-*-*-*-*-*-*-*-* [ AutoCounter ] *-*-*-*-*-*-*-*-*')
  1246.             end
  1247.            
  1248.             end
  1249.        
  1250.         end
  1251.        
  1252.        --if player.target.name == "Tutewehiwehi" then
  1253.         --  match = original:match('Tutewehiwehi readies Calcifying Mist.')
  1254.        
  1255.         --  if match then
  1256.             --equip(sets.ResistPetrify)
  1257.             --add_to_chat(204, '*-*-*-*-*-*-*-*-* [ Resist Petrify ] *-*-*-*-*-*-*-*-*')
  1258.             --end
  1259.            
  1260.     --      match = original:match('Tutewehiwehi uses Calcifying Mist.')
  1261.        
  1262.         --  if match then
  1263.             --equip(sets.aftercast.TP)
  1264.             --add_to_chat(204, '*-*-*-*-*-*-*-*-* [ Resist Petrify done ] *-*-*-*-*-*-*-*-*')
  1265.             --end
  1266.        
  1267.     --  end
  1268.        
  1269.         match = original:match('Volatile Mata @ 5')
  1270.                
  1271.                         if match then
  1272.                                 countmata = 6
  1273.                                 add_to_chat(204, '*-*-*-*-*-*-*-*-* [ FS unlocked on mata, cause the count is 5 now ] *-*-*-*-*-*-*-*-*')
  1274.         end
  1275.        
  1276.         --- DeadNMs trigger
  1277.         match = original:match('defeats ([%s%w]+)%.')
  1278.        
  1279.         if match == "the Volatile Matamata" then
  1280.             enga = 0
  1281.             countmata = 0
  1282.             add_to_chat(204, '*-*-*-*-*-*-*-*-* [ Volatile Matamata : Dead - Counter reset ] *-*-*-*-*-*-*-*-*')
  1283.         elseif match == "the Divagating Jagil" then
  1284.             enga =0
  1285.             Jagil = 1
  1286.             add_to_chat(392,'*-*-*-*-*-*-*-*-* [ Divagating Jagil : Dead - Runes allowed ] *-*-*-*-*-*-*-*-*')
  1287.         elseif match == "Nerrivik" then
  1288.             enga = 0
  1289.             Jagil = 0
  1290.         elseif match then
  1291.             enga=0
  1292.             add_to_chat(392,'*-*-*-*-*-*-*-*-* [ '..match..' : Dead ] *-*-*-*-*-*-*-*-*')
  1293.         end
  1294.        
  1295.         -- NM Move trigger
  1296.         if enga == 1 and autoswap == 1 then
  1297.             if player.target.name then
  1298.             match = original:match(''..player.target.name..' readies ([%s%w]+)%.')
  1299.        
  1300.             if PDTTrigger:contains(match) then
  1301.                 send_command('input //gs c "PDT";wait 3; input //gs c "nodt" ')
  1302.                 add_to_chat(204, '*-*-*-*-*-*-*-*-* [ '..player.target.name..' : '..match..' - PDT ] *-*-*-*-*-*-*-*-*')
  1303.             elseif MDTTrigger:contains(match) then
  1304.                 send_command('input //gs c "MDT";wait 3; input //gs c "nodt" ')
  1305.                 add_to_chat(204, '*-*-*-*-*-*-*-*-* [ '..player.target.name..' : '..match..' - MDT ] *-*-*-*-*-*-*-*-*')
  1306.             elseif SleepTrigger:contains(match) then
  1307.                 equip(sets.ResistSleep)
  1308.                 send_command('wait 3; input //gs c "nodt" ')
  1309.                 add_to_chat(204, '*-*-*-*-*-*-*-*-* [ '..player.target.name..' : '..match..' - Resist Sleep ] *-*-*-*-*-*-*-*-*')
  1310.             elseif ParaTrigger:contains(match) then
  1311.                 equip(sets.ResistPara)
  1312.                 send_command('wait 3; input //gs c "nodt" ')
  1313.                 add_to_chat(204, '*-*-*-*-*-*-*-*-* [ '..player.target.name..' : '..match..' - Resist Para ] *-*-*-*-*-*-*-*-*')
  1314.             elseif CharmTrigger:contains(match) then
  1315.                 equip(sets.ResistCharm)
  1316.                 send_command('wait 3; input //gs c "nodt" ')
  1317.                 add_to_chat(204, '*-*-*-*-*-*-*-*-* [ '..player.target.name..' : '..match..' - Resist Charm ] *-*-*-*-*-*-*-*-*')
  1318.             elseif MEvaTrigger:contains(match) then
  1319.                 equip(sets.ResistMEva)
  1320.                 send_command('wait 3; input //gs c "nodt" ')
  1321.                 add_to_chat(204, '*-*-*-*-*-*-*-*-* [ '..player.target.name..' : '..match..' - Resist MEVA ] *-*-*-*-*-*-*-*-*')
  1322.             elseif match == "Mortal Blast" then
  1323.                 send_command('wait 3; input /follow Peeroturo; wait 0.5; input /sit; wait 2 input /follow '..player.target.raw..' ')
  1324.                 add_to_chat(204, '*-*-*-*-*-*-*-*-* [ '..player.target.name..' : '..match..' - MORTAAAAAAAAAAAAAAAAAAAL BLAAST ] *-*-*-*-*-*-*-*-*')
  1325.             end
  1326.             end
  1327.         end
  1328.        
  1329.         -- Broxa autoWS
  1330.         if player.target.name == "Broxa" then
  1331.             match = original:match('Broxa starts casting')
  1332.             if match and player.tp >= 1000 then
  1333.                 send_command('input /ws "Victory Smite" <t> ')
  1334.             end
  1335.         end
  1336.        
  1337.         if accparsing == 1 then
  1338.              --- Parser
  1339.             if TENROWS < 10 then
  1340.                 match = original:match('Keme misses')
  1341.                 if match then
  1342.                     MISSROWS = MISSROWS +1
  1343.                     TENROWS = TENROWS +1
  1344.                 end
  1345.                 match = original:match('Keme hits')
  1346.                 if match then
  1347.                     HITROWS = HITROWS +1
  1348.                     TENROWS = TENROWS +1
  1349.                 end
  1350.                 match = original:match('Keme scores a critical hit')
  1351.                 if match then
  1352.                     HITROWS = HITROWS +1
  1353.                     TENROWS = TENROWS +1
  1354.                 end
  1355.             else
  1356.                 percent = HITROWS/TENROWS*100
  1357.                 add_to_chat(204, '*-*-*-*-*-*-*-*-* [ On 10 hits, you did '..percent..'% ] *-*-*-*-*-*-*-*-*')
  1358.                 if percent >= 90 then -- Keep it
  1359.                     add_to_chat(204, '*-*-*-*-*-*-*-*-* [ This set is good, recording ] *-*-*-*-*-*-*-*-*')
  1360.                     if sets.aftercast.TP == sets.TP.DD then
  1361.                         file = io.open(windower.addon_path.."data/MNK/AccLvl/NTP.lua", "r")
  1362.                         texting = file:read("*a")
  1363.                         print(texting)
  1364.                         texting = string.gsub(texting,'AccLvlNTP = S\{', 'AccLvlNTP = S\{ \n"'..tostring(player.target.name)..'",')
  1365.                         print(texting)
  1366.                         file:close()
  1367.                         file = io.open(windower.addon_path.."data/MNK/AccLvl/NTP.lua", "w")
  1368.                         file:write(tostring(texting))
  1369.                         file:close()
  1370.                         include("MNK/AccLvl/NTP.lua")
  1371.                         --send_command('input //lua reload gearswap ')
  1372.                         --NTPnumber = NTPnumber + 1
  1373.                         --file:write('NTPnumber = '..NTPnumber..'')
  1374.                     elseif sets.aftercast.TP == sets.TP.SAcc then
  1375.                         file = io.open(windower.addon_path.."data/MNK/AccLvl/SAcc.lua", "r")
  1376.                         texting = file:read("*a")
  1377.                         print(texting)
  1378.                         texting = string.gsub(texting,'AccLvlSAcc = S\{', 'AccLvlSAcc = S\{ \n"'..tostring(player.target.name)..'",')
  1379.                         print(texting)
  1380.                         file:close()
  1381.                         file = io.open(windower.addon_path.."data/MNK/AccLvl/SAcc.lua", "w")
  1382.                         file:write(tostring(texting))
  1383.                         file:close()
  1384.                         include("MNK/AccLvl/SAcc.lua")
  1385.                     elseif sets.aftercast.TP == sets.TP.HAcc then
  1386.                         file = io.open(windower.addon_path.."data/MNK/AccLvl/HAcc.lua", "r")
  1387.                         texting = file:read("*a")
  1388.                         print(texting)
  1389.                         texting = string.gsub(texting,'AccLvlHAcc = S\{', 'AccLvlHAcc = S\{ \n"'..tostring(player.target.name)..'",')
  1390.                         print(texting)
  1391.                         file:close()
  1392.                         file = io.open(windower.addon_path.."data/MNK/AccLvl/HAcc.lua", "w")
  1393.                         file:write(tostring(texting))
  1394.                         file:close()
  1395.                         include("MNK/AccLvl/HAcc.lua")
  1396.                     elseif sets.aftercast.TP == sets.TP.FAcc then
  1397.                         file = io.open(windower.addon_path.."data/MNK/AccLvl/FAcc.lua", "r")
  1398.                         texting = file:read("*a")
  1399.                         print(texting)
  1400.                         texting = string.gsub(texting,'AccLvlFAcc = S\{', 'AccLvlFAcc = S\{ \n"'..tostring(player.target.name)..'",')
  1401.                         print(texting)
  1402.                         file:close()
  1403.                         file = io.open(windower.addon_path.."data/MNK/AccLvl/FAcc.lua", "w")
  1404.                         file:write(tostring(texting))
  1405.                         file:close()
  1406.                         include("MNK/AccLvl/FAcc.lua")
  1407.                     end
  1408.                     accparsing = 0 -- STOP PARSING
  1409.                     TENROWS = 0
  1410.                     MISSROWS = 0
  1411.                     HITROWS = 0
  1412.                 else -- Try next lvl
  1413.                     if sets.aftercast.TP == sets.TP.DD then
  1414.                         send_command('input //gs c "sacc" ')
  1415.                         TENROWS = 0
  1416.                         MISSROWS = 0
  1417.                         HITROWS = 0
  1418.                     elseif sets.aftercast.TP == sets.TP.SAcc then
  1419.                         send_command('input //gs c "hacc" ')
  1420.                         TENROWS = 0
  1421.                         MISSROWS = 0
  1422.                         HITROWS = 0
  1423.                     elseif sets.aftercast.TP == sets.TP.HAcc then
  1424.                         send_command('input //gs c "acc" ')
  1425.                         TENROWS = 0
  1426.                         MISSROWS = 0
  1427.                         HITROWS = 0
  1428.                     elseif sets.aftercast.TP == sets.TP.FAcc then
  1429.                         add_to_chat(204, '*-*-*-*-*-*-*-*-* [ This sucks, but is the bes t] *-*-*-*-*-*-*-*-*')
  1430.                         file = io.open(windower.addon_path.."data/MNK/AccLvl/FAcc.lua", "r")
  1431.                         texting = file:read("*a")
  1432.                         print(texting)
  1433.                         texting = string.gsub(texting,'AccLvlFAcc = S\{', 'AccLvlFAcc = S\{ \n"'..tostring(player.target.name)..'",')
  1434.                         print(texting)
  1435.                         file:close()
  1436.                         file = io.open(windower.addon_path.."data/MNK/AccLvl/FAcc.lua", "w")
  1437.                         file:write(tostring(texting))
  1438.                         file:close()
  1439.                         include("MNK/AccLvl/FAcc.lua")
  1440.                         send_command('input //lua reload gearswap ')
  1441.                         accparsing = 0 -- STOP PARSING
  1442.                         TENROWS = 0
  1443.                         MISSROWS = 0
  1444.                         HITROWS = 0
  1445.                     end
  1446.                 end
  1447.             end
  1448.         end
  1449.        
  1450.  
  1451.     return modified, mode
  1452. end)
  1453.  
  1454.  
  1455. windower.register_event('hp change', function(new, old)
  1456.     if player.HPP == 0 then
  1457.         enga = 0
  1458.     end
  1459. -- AutoWS on Resplendent Luckybug, with FarmBot mostly 
  1460.     if player.target.name== "Resplendent Luckybug" and player.target.hpp >=50 then
  1461.         if player.tp >=1000 then
  1462.             send_command('input /ws "Victory Smite" <t> ')
  1463.         end
  1464.     end
  1465.    
  1466.     if player.target.name== "Spectator" then
  1467.         if player.tp >=1000 then
  1468.             send_command('input /ws "Spinning Attack" <t> ')
  1469.         end
  1470.     end
  1471.    
  1472.     if player.target.name== "Sinaa" then
  1473.         if player.tp >=1000 then
  1474.             send_command('input /ws "Victory Smite" <t> ')
  1475.         end
  1476.     end
  1477.    
  1478.    
  1479.     if player.HPP >= 90 then
  1480.         sets.aftercast.Idle = sets.idleref
  1481.     else
  1482.         sets.aftercast.Idle = sets.idlen
  1483.     end
  1484.    
  1485.     if new <= 500 and windower.ffxi.get_ability_recasts()[15] < 1 and not buffactive.amnesia  then
  1486.         send_command('input /ja Chakra <me>')
  1487.     end
  1488.    
  1489. end)
  1490.  
  1491. function delve_reset()
  1492.     Jagil = 0
  1493.     kindofdelve = 0
  1494. end
  1495.  
  1496. windower.register_event('Zone change', function(new_id, old_id)
  1497.     send_command('wait 15;input /lockstyle on')
  1498.     add_to_chat(204, '*-*-*-*-*-*-*-*-* [ Vanity Style ] *-*-*-*-*-*-*-*-*')
  1499.    
  1500.     if regpack then
  1501.         add_to_chat(204, '*-*-*-*-*-*-*-*-* [ New zone = '..new_id..' / Old zone = '..old_id..' ] *-*-*-*-*-*-*-*-*')
  1502.     end
  1503.    
  1504.     ---- OLD DELVE
  1505.     -- Entering
  1506.     if new_id == 271 then
  1507.         -- Checking which of the three delves
  1508.         -- Morimar
  1509.         if old_id == 265 then
  1510.             add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Delve -- Welcome to Morimar Basalt Field RUN ] *-*-*-*-*-*-*-*-*')
  1511.             kindofdelve = 1
  1512.         -- Ceizak
  1513.         elseif old_id == 261 then
  1514.             add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Delve -- Welcome to Ceizak Battlefield RUN ] *-*-*-*-*-*-*-*-*')
  1515.             kindofdelve = 2
  1516.         -- Foret
  1517.         elseif old_id == 262 then
  1518.             add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Delve -- Welcome to Forêt de Hennetiel RUN ] *-*-*-*-*-*-*-*-*')
  1519.             add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Delve -- You can\'t use Runes until your killed Jagil ] *-*-*-*-*-*-*-*-*')
  1520.             kindofdelve = 3
  1521.         elseif old_id == 266 then
  1522.             add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Delve -- Welcome to INCURSION ] *-*-*-*-*-*-*-*-*')
  1523.             add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Delve -- Timer started ] *-*-*-*-*-*-*-*-*')
  1524.             local timer_cmd = 'timers c "INCURSION" 2700 down abilities/00254.png'
  1525.             send_command(timer_cmd)
  1526.         end
  1527.     end
  1528.    
  1529.     -- Leaving
  1530.     if old_id == 271 then
  1531.         delve_reset()
  1532.         add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Delve -- Delve Done, resetting delve assist ] *-*-*-*-*-*-*-*-*')
  1533.     end
  1534.    
  1535.     return modified, injected
  1536. end)
  1537.  
  1538.  
  1539.  
  1540. windower.register_event('action', function(act)
  1541.     -- Code to execute
  1542.     h = 0
  1543.     -- MDT set on spikes
  1544.     if autoswap == 1 then
  1545.         if has_spike_effect then
  1546.             -- Detect Type
  1547.        
  1548.             if spike_effect_animation == 1 then
  1549.                 -- Fire
  1550.                 if h == 0 then
  1551.                     add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Fire Spikes = Fire MDT ] *-*-*-*-*-*-*-*-*')
  1552.                 end
  1553.                 h=1
  1554.                 equip(sets.FireMDT)
  1555.             elseif spike_effect_animation == 2 then
  1556.                 -- Ice
  1557.                 if h == 0 then
  1558.                     add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Ice Spikes = Ice MDT ] *-*-*-*-*-*-*-*-*')
  1559.                 end
  1560.                 h=1
  1561.                 equip(sets.IceMDT)
  1562.             elseif spike_effect_animation == 3 then
  1563.                 -- Dark
  1564.                 if h == 0 then
  1565.                     add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Dread Spikes = Fark MDT ] *-*-*-*-*-*-*-*-*')
  1566.                 end
  1567.                 h=1
  1568.                 equip(sets.DarkMDT)
  1569.                 add_to_chat(179, '*-*-*-*-*-*-*-*-* [ !!! TURN AWAY !!! ] *-*-*-*-*-*-*-*-*')
  1570.             elseif spike_effect_animation == 4 then
  1571.                 -- Water
  1572.                 if h == 0 then
  1573.                     add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Water Spikes = Water MDT ] *-*-*-*-*-*-*-*-*')
  1574.                 end
  1575.                 h=1
  1576.                 equip(sets.WaterMDT)
  1577.             elseif spike_effect_animation == 5 then
  1578.                 -- Thunder
  1579.                 if h == 0 then
  1580.                     add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Thunder Spikes = Thunder MDT ] *-*-*-*-*-*-*-*-*')
  1581.                 end
  1582.                 h=1
  1583.                 equip(sets.ThunderMDT)
  1584.             elseif spike_effect_animation == 6 then
  1585.                 -- Light
  1586.                 if h == 0 then
  1587.                     add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Light Spikes = Light MDT ] *-*-*-*-*-*-*-*-*')
  1588.                 end
  1589.                 h=1
  1590.                 equip(sets.LightMDT)
  1591.             elseif spike_effect_animation == 7 then
  1592.                 -- Wind
  1593.                 if h == 0 then
  1594.                     add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Wind Spikes = Wind MDT ] *-*-*-*-*-*-*-*-*')
  1595.                 end
  1596.                 h=1
  1597.                 equip(sets.WindMDT)
  1598.             elseif spike_effect_animation == 8 then
  1599.                 -- Earth
  1600.                 if h == 0 then
  1601.                     add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Earth Spikes = Earth MDT ] *-*-*-*-*-*-*-*-*')
  1602.                 end
  1603.                 h=1
  1604.                 equip(sets.EarthMDT)
  1605.             elseif spike_effect_animation == 63 then
  1606.                 -- PDT
  1607.                 if h == 0 then
  1608.                     add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Fire Spikes = Fire MDT ] *-*-*-*-*-*-*-*-*')
  1609.                 end
  1610.                 h=1
  1611.                 send_command('input //gs c "PDT"')
  1612.             end
  1613.         end
  1614.     else
  1615.         if h== 1 then
  1616.             send_command('input //gs c "nodt" ')
  1617.             h = 0
  1618.         end
  1619.     end
  1620. end)
  1621.  
  1622. local clock = os.clock
  1623. function sleep(n)  -- seconds
  1624.   local t0 = clock()
  1625.   while clock() - t0 <= n do end
  1626. end
  1627.  
  1628. function check_set()
  1629.     for i=1, numberofautoset do
  1630.        
  1631.         send_command('input //gs equip naked;wait 0.5; input /equipset '..i..'')
  1632.         sleep(2)
  1633.         autoset[i] = {
  1634.             main=player.equipment.main,
  1635.             sub=player.equipment.sub,
  1636.             range=player.equipment.range,
  1637.             ammo=player.equipment.ammo,
  1638.             head=player.equipment.head,
  1639.             neck=player.equipment.neck,
  1640.             ear1=player.equipment.left_ear,
  1641.             ear2=player.equipment.right_ear,
  1642.             body=player.equipment.body,
  1643.             hands=player.equipment.hands,
  1644.             ring1=player.equipment.left_ring,
  1645.             ring2=player.equipment.right_ring,
  1646.             back=player.equipment.back,
  1647.             waist=player.equipment.waist,
  1648.             legs=player.equipment.legs,
  1649.             feet=player.equipment.feet
  1650.         }
  1651.         add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Auto Set Number '..i..' ] *-*-*-*-*-*-*-*-*')
  1652.         add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Main : '..player.equipment.main..' ] *-*-*-*-*-*-*-*-*')
  1653.         add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Sub : '..player.equipment.sub..' ] *-*-*-*-*-*-*-*-*')
  1654.         add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Range : '..player.equipment.range..' ] *-*-*-*-*-*-*-*-*')
  1655.         add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Ammo : '..player.equipment.ammo..' ] *-*-*-*-*-*-*-*-*')
  1656.         add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Head : '..player.equipment.head..' ] *-*-*-*-*-*-*-*-*')
  1657.         add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Neck : '..player.equipment.neck..' ] *-*-*-*-*-*-*-*-*')
  1658.         add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Earring1 : '..player.equipment.left_ear..' ] *-*-*-*-*-*-*-*-*')
  1659.         add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Earring2 : '..player.equipment.right_ear..' ] *-*-*-*-*-*-*-*-*')
  1660.         add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Body : '..player.equipment.body..' ] *-*-*-*-*-*-*-*-*')
  1661.         add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Hands : '..player.equipment.hands..' ] *-*-*-*-*-*-*-*-*')
  1662.         add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Ring1 : '..player.equipment.left_ring..' ] *-*-*-*-*-*-*-*-*')
  1663.         add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Ring2 : '..player.equipment.right_ring..' ] *-*-*-*-*-*-*-*-*')
  1664.         add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Back : '..player.equipment.back..' ] *-*-*-*-*-*-*-*-*')
  1665.         add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Waist : '..player.equipment.waist..' ] *-*-*-*-*-*-*-*-*')
  1666.         add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Legs : '..player.equipment.legs..' ] *-*-*-*-*-*-*-*-*')
  1667.         add_to_chat(179, '*-*-*-*-*-*-*-*-* [ Feet : '..player.equipment.feet..' ] *-*-*-*-*-*-*-*-*')
  1668.         sleep(1)
  1669.     end
  1670.     -- resetting autoset
  1671.     sets.precast.Chakra = autoset[1]
  1672.     sets.precast.Focus = autoset[2]
  1673. end
  1674.  
  1675. ----- Debuff removal request
  1676.  
  1677. windower.register_event('chat message', function(original, sender, mode, gm)
  1678.     local match
  1679.                
  1680.             ---- Invite checker
  1681.                 --match = original:match(') ([%w]+)%')
  1682.                 if original == "inv" then
  1683.                     send_command('@input /pcmd add '..sender..'')
  1684.                     add_to_chat(204, '*-*-*-*-*-*-*-*-* ['..sender..' is invited. ] *-*-*-*-*-*-*-*-*')
  1685.                 end
  1686.                
  1687.                
  1688.                 if original == "Inv" then
  1689.                     send_command('@input /pcmd add '..sender..'')
  1690.                     add_to_chat(204, '*-*-*-*-*-*-*-*-* ['..sender..' is invited. ] *-*-*-*-*-*-*-*-*')
  1691.                 end
  1692.                
  1693.                 if sender == "Keme" then
  1694.                     if original == "check" then
  1695.                         open_coffer()
  1696.                     end
  1697.                 end
  1698.                
  1699.                 if sender == "Keme" then
  1700.                     if original == "go" then
  1701.                         start_farming()
  1702.                     end
  1703.                 end
  1704.                
  1705.                        
  1706.                        
  1707.  
  1708.            
  1709.  
  1710.     return sender, mode, gm
  1711. end)
  1712.  
  1713. --[[
  1714. windower.register_event('day change', function(new, old)
  1715.     if new == 7 then
  1716.         sets.precast.Chakra = sets.precast.ChakraDark
  1717.         add_to_chat(204, '*-*-*-*-*-*-*-*-* [ Chakra set get Shadow Mantle now ! ] *-*-*-*-*-*-*-*-*')
  1718.     else
  1719.         sets.precast.Chakra = sets.precast.ChakraN
  1720.         add_to_chat(204, '*-*-*-*-*-*-*-*-* [ Chakra set is Normal now ] *-*-*-*-*-*-*-*-*')
  1721.     end
  1722.    
  1723.     add_to_chat(204, '*-*-*-*-*-*-*-*-* [ Last Day : '..old..' / New Day : '..new..' ] *-*-*-*-*-*-*-*-*')
  1724.    
  1725. end)--]]
  1726.  
  1727.  
  1728. function target_mob()
  1729.     --[[tablemob = {}
  1730.     tablemob = windower.ffxi.get_mob_array()
  1731.     max = tablemob.maxn
  1732.     for i = 1, max do
  1733.         if tablemob[i].name == "Blanched Mandragora" then
  1734.             --add_to_chat(204, '*-*-*-*-*-*-*-*-* [ '..tablemob.[''..i..''].name..' ] *-*-*-*-*-*-*-*-*')
  1735.         end
  1736.     end--]]
  1737.    
  1738.     add_to_chat(204, '*-*-*-*-*-*-*-*-* [ '..bag..' ] *-*-*-*-*-*-*-*-*')
  1739. end
  1740.  
  1741. function open_coffer()
  1742.     CofferType = "Velkk Coffer"
  1743.     if player.inventory[CofferType] then
  1744.     NCoffer = player.inventory[CofferType].count
  1745.     bag = windower.ffxi.get_bag_info(0).count
  1746.     max = windower.ffxi.get_bag_info(0).max
  1747.     spots = max-bag
  1748.     if spots > 0 then
  1749.     add_to_chat(204, '*-*-*-*-*-*-*-*-* [ '..NCoffer..'x '..CofferType..' to open - Inventory('..bag..'/'..max..') ] *-*-*-*-*-*-*-*-*')
  1750.     local nextcommand = ""
  1751.     for i=1, spots do
  1752.         nextcommand = nextcommand .. 'input /item "'..CofferType..'" <me>; wait 2;'
  1753.     end
  1754.     nextcommand = nextcommand .. 'input /tell keme check'
  1755.     send_command(nextcommand)
  1756.     else
  1757.         add_to_chat(204, '*-*-*-*-*-*-*-*-* [ Inventory('..bag..'/'..max..') ] *-*-*-*-*-*-*-*-*')
  1758.     end
  1759.     else
  1760.         add_to_chat(204, '*-*-*-*-*-*-*-*-* [ No '..CofferType..' in inventory ] *-*-*-*-*-*-*-*-*')
  1761.     end
  1762. end
  1763.  
  1764.  
  1765. function start_farming()
  1766.     send_command('input /targetnpc')
  1767.     -- S'il trouve une target
  1768.     if player.target then
  1769.         if player.target.name == "Blanched Mandragora" then
  1770.             send_command('input /follow; wait 2; input /attack <t>')
  1771.             killingmandy = 1
  1772.         else
  1773.             dir = math.pi/4
  1774.             windower.ffxi.turn(dir)
  1775.             start_farming()
  1776.         end
  1777.     else
  1778.     -- Sinon
  1779.         dir = math.pi/4
  1780.         windower.ffxi.turn(dir)
  1781.         start_farming()
  1782.     end
  1783. end
  1784.  
  1785.  
  1786.  
  1787. fps = 1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement