Advertisement
Guest User

Untitled

a guest
Mar 30th, 2016
169
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 34.03 KB | None | 0 0
  1. function get_sets()
  2. AccIndex = 1
  3. AccArray = {"LowACC","MidACC","HighACC"} -- 3 Levels Of Accuracy Sets For TP/WS/Hybrid. Default ACC Set Is LowACC. The First TP Set Of Your Main Weapon Is LowACC. Add More ACC Sets If Needed Then Create Your New ACC Below --
  4. IdleIndex = 1
  5. IdleArray = {"Movement","Refresh"} -- Default Idle Set Is Movement --
  6. Armor = 'None'
  7. canceled = false
  8. DC = false
  9. Main = 'OFF' -- Set Default Main Weapon ON or OFF Here --
  10. Obi = 'ON' -- Turn Default Obi ON or OFF Here --
  11. MB = 'OFF' -- Set Default MB ON or OFF Here --
  12. Enmity = 'OFF' -- Set Default Enmity Set ON or OFF Here --
  13. Kiting = 'OFF' -- Set Default Sublimation Kiting ON or OFF Here --
  14. ElementalStaff = 'OFF' -- Set Default Precast Elemental Staff ON or OFF Here --
  15. target_distance = 5 -- Set Default Distance Here --
  16. select_default_macro_book() -- Change Default Macro Book At The End --
  17.  
  18. Non_Obi_Spells = S{
  19. 'Burn','Choke','Cursna','Paralyna','Viruna','Stona','Poisona','Blindna','Silena','Drown','Frost','Rasp','Shock','Impact','Anemohelix','Cryohelix',
  20. 'Geohelix','Hydrohelix','Ionohelix','Luminohelix','Noctohelix','Pyrohelix'}
  21.  
  22. Cure_Spells = {"Cure","Cure II","Cure III","Cure IV","Cure V","Cure VI"} -- Cure Degradation --
  23. Curaga_Spells = {"Curaga","Curaga II","Curaga III","Curaga IV","Curaga V"} -- Curaga Degradation --
  24. Na_Spells = S{"Paralyna","Silena","Poisona","Blindna","Viruna","Stona","Erase"} -- For Yagrush --
  25. sc_map = {SC1 = "LightArts", SC2 = "Celerity", SC3 = "Accession"} -- 3 Additional Binds. Can Change Whatever JA/WS/Spells You Like Here. Remember Not To Use Spaces. --
  26.  
  27. sets.Idle = {}
  28. -- Idle Sets --
  29. sets.Idle.Refresh = {
  30. main="Bolelabunga",
  31. sub="Genmei Shield",
  32. ammo="Homiliary",
  33. head="Befouled Crown",
  34. neck="Wiglen Gorget",
  35. ear1="Etiolation Earring",
  36. ear2="Infused Earring",
  37. body="Witching Robe",
  38. hands="Serpentes Cuffs",
  39. ring1="Sheltered Ring",
  40. ring2="Shneddick Ring",
  41. back="Kumbira Cape",
  42. waist="Fucho-No-Obi",
  43. legs="Assiduity Pants +1",
  44. feet="Serpentes Sabots"}
  45. sets.Idle.Movement = set_combine(sets.Idle.Refresh,{
  46. neck="Wiglen Gorget",
  47. ring1="Sheltered Ring",
  48. waist="Slipor Sash",
  49. ring2="Shneddick Ring",
  50. feet="Serpentes Sabots"})
  51. sets.Resting = {
  52. main="Boonwell Staff",
  53. ammo="Clarus Stone",
  54. head="Orvail Corona",
  55. neck="Eidolon Pendant",
  56. ear1="Etiolation Earring",
  57. ear2="Enchntr. Earring +1",
  58. body="Chelona Blazer +1",
  59. hands="Nares Cuffs",
  60. ring1="Angha Ring",
  61. ring2="Paguroidea Ring",
  62. back="Felicitas Cape",
  63. waist="Austerity Belt",
  64. legs="Nisse Slacks",
  65. feet="Regal Pumps +1"}
  66.  
  67. -- PDT Set --
  68. sets.PDT = {
  69. main="Bolelabunga",
  70. sub="Genmei Shield",
  71. neck="Loricate Torque +1",
  72. head="Gende. Caubeen +1",
  73. body="Onca Suit",
  74. ring1="Defending Ring",
  75. ring2="Dark Ring",
  76. ammo="Vanir Battery",
  77. ear1="Etiolation Earring",
  78. ear2="Genmei Earring",
  79. back="Solemnity Cape",
  80. waist="Slipor Sash"}
  81.  
  82. -- Sublimation Set --
  83. sets.Sublimation = {
  84. main="Bolelabunga",
  85. sub="Genmei Shield",
  86. head="Befouled Crown",
  87. ammo="Homiliary",
  88. neck="Wiglen Gorget",
  89. ear1="Etiolation Earring",
  90. ear2="Infused Earring",
  91. body="Witching Robe",
  92. hands="Serpentes Cuffs",
  93. ring1="Sheltered Ring",
  94. ring2="Shneddick Ring",
  95. back="Kumbira Cape",
  96. waist="Fucho-No-Obi",
  97. legs="Assiduity Pants +1",
  98. feet="Serpentes Sabots"}
  99.  
  100. sets.Precast = {}
  101. -- Fastcast Set --
  102. sets.Precast.FastCast = {
  103. ammo="Impatiens",
  104. head="Nahtirah Hat",
  105. neck="Orunmila's Torque",
  106. ear1="Loquac. Earring",
  107. body="Shango Robe",
  108. ear2="Enchntr. Earring +1",
  109. hands="Gende. Gages +1",
  110. ring1="Prolix Ring",
  111. ring2="Lebeche Ring",
  112. back="Perimede Cape",
  113. waist="Witful Belt";
  114. legs="Artsieq Hose",
  115. feet="Regal Pumps +1"}
  116.  
  117. -- Elemental Staves --
  118. sets.Precast.Wind = {main='Vayuvata I'}
  119. sets.Precast.Light = {main='Arka I'}
  120.  
  121. sets.Precast.Stoneskin = set_combine(sets.Precast.FastCast,{head="Umuthi Hat",legs="Doyen Pants",waist="Siegel Sash"})
  122. sets.Precast['Enhancing Magic'] = set_combine(sets.Precast.FastCast,{main="Yagrush",waist="Siegel Sash"})
  123. sets.Precast['Healing Magic'] = set_combine(sets.Precast.FastCast,{main="Yagrush",legs="Ebers Pantaloons +1"})
  124.  
  125. -- Cure Precast Set --
  126. sets.Precast.Cure = {
  127. main="Queller Rod",
  128. ammo="Impatiens",
  129. sub="Sors Shield",
  130. head="Nahtirah Hat",
  131. neck="Orunmila's Torque",
  132. ear1="Mendi. Earring",
  133. body="Heka's Kalasiris",
  134. ear2="Enchntr. Earring +1",
  135. hands="Gende. Gages +1",
  136. ring1="Prolix Ring",
  137. ring2="Lebeche Ring",
  138. back="Pahtli Cape",
  139. waist="Witful Belt";
  140. legs="Ebers Pantaloons +1",
  141. feet="Regal Pumps +1"}
  142.  
  143. -- Midcast Base Set --
  144. sets.Midcast = {
  145. main="Bolelabunga",
  146. ammo="Impatiens",
  147. head="Nahtirah Hat",
  148. neck="Orunmila's Torque",
  149. ear1="Loquac. Earring",
  150. ear2="Enchntr. Earring +1",
  151. body="Vanir Cotehardie",
  152. hands="Dynasty Mitts",
  153. ring1="Prolix Ring",
  154. ring2="Lebeche Ring",
  155. back="Perimede Cape",
  156. waist="Witful Belt",
  157. legs="Artsieq Hose",
  158. feet="Regal Pumps +1"}
  159.  
  160. -- Haste Set --
  161. sets.Midcast.Haste = set_combine(sets.Precast.FastCast,{
  162. main="Bolelabunga",
  163. sub="Thuellaic Ecu +1",
  164. ammo="Impatiens",
  165. head={ name="Telchine Cap", augments={'Accuracy+12','Potency of "Cure" effect received+6%','Enh. Mag. eff. dur. +9',}},
  166. neck="Orunmila's Torque",
  167. ear1="Loquac. Earring",
  168. ear2="Enchntr. Earring +1",
  169. body="Telchine Chas.",
  170. hands="Telchine Gloves",
  171. ring1="Prolix Ring",
  172. ring2="Lebeche Ring",
  173. back="Perimede Cape",
  174. waist="Witful Belt",
  175. legs="Telchine Braconi",
  176. feet="Telchine Pigaches"})
  177.  
  178. sets.Midcast.Flurry = set_combine(sets.Precast.FastCast,{
  179. main="Bolelabunga",
  180. sub="Thuellaic Ecu +1",
  181. ammo="Impatiens",
  182. head={ name="Telchine Cap", augments={'Accuracy+12','Potency of "Cure" effect received+6%','Enh. Mag. eff. dur. +9',}},
  183. neck="Orunmila's Torque",
  184. ear1="Loquac. Earring",
  185. ear2="Enchntr. Earring +1",
  186. body="Telchine Chas.",
  187. hands="Telchine Gloves",
  188. ring1="Prolix Ring",
  189. ring2="Lebeche Ring",
  190. back="Perimede Cape",
  191. waist="Witful Belt",
  192. legs="Telchine Braconi",
  193. feet="Telchine Pigaches"})
  194. -- Cure Set --
  195. sets.Midcast.Cure = {
  196. main="Queller Rod",
  197. sub="Sors Shield",
  198. ammo="Esper Stone +1",
  199. head="Vanya Hood",
  200. neck="Incanter's Torque",
  201. ear1="Mendi. Earring",
  202. ear2="Glorious Earring",
  203. body="Ebers Bliaud +1",
  204. hands="Kaykaus Cuffs",
  205. ring1="Sirona's Ring",
  206. ring2="Lebeche Ring",
  207. back="Mending Cape",
  208. waist="Ninurta's Sash",
  209. legs="Ebers Pantaloons +1",
  210. feet="Vanya Clogs"}
  211.  
  212. sets.Midcast.Cure.Weather = set_combine(sets.Midcast.Cure,{
  213. back="Twilight Cape",
  214. waist="Hachirin-no-Obi"})
  215. -- Cure Enmity Set --
  216. sets.Midcast.Cure.Enmity = set_combine(sets.Midcast.Cure,{
  217. neck="Lasaia Pendant",
  218. ear1="Novia Earring",
  219. ring2="Kuchekula Ring",
  220. back="Mending Cape"})
  221.  
  222. -- Curaga Set --
  223. sets.Midcast.Curaga = {
  224. main="Queller Rod",
  225. sub="Sors Shield",
  226. ammo="Esper Stone +1",
  227. head="Vanya Hood",
  228. neck="Incanter's Torque",
  229. ear1="Mendi. Earring",
  230. ear2="Glorious Earring",
  231. body="Telchine Chas.",
  232. hands="Kaykaus Cuffs",
  233. ring1="Sirona's Ring",
  234. ring2="Lebeche Ring",
  235. back="Mending Cape",
  236. waist="Ninurta's Sash",
  237. legs="Ebers Pantaloons +1",
  238. feet="Vanya Clogs"}
  239.  
  240.  
  241.  
  242. -- Curaga Enmity Set --
  243. sets.Midcast.Curaga.Enmity = set_combine(sets.Midcast.Curaga,{})
  244.  
  245. sets.Midcast['Enhancing Magic'] = {
  246. main="Beneficus",
  247. sub="Genmei Shield",
  248. ammo="Impatiens",
  249. head="Befouled Crown",
  250. neck="Incanter's Torque",
  251. body="Anhur Robe",
  252. hands="Dynasty Mitts",
  253. ring1="Prolix Ring",
  254. ring2="Lebeche Ring",
  255. back="Mending Cape",
  256. waist="Olympus Sash",
  257. legs="Piety Pantaloons +1",
  258. feet="Ebers Duckbills +1"}
  259.  
  260. -- Barspells Set --
  261. sets.Midcast.Bar = {
  262. main="Beneficus",
  263. sub="Genmei Shield",
  264. ammo="Impatiens",
  265. head="Ebers Cap +1",
  266. neck="Incanter's Torque",
  267. ear1="Loquac. Earring",
  268. ear2="Enchntr. Earring +1",
  269. body="Ebers Bliaud +1",
  270. hands="Ebers mitts +1",
  271. ring1="Prolix Ring",
  272. ring2="Lebeche Ring",
  273. back="Mending Cape",
  274. waist="Olympus Sash",
  275. legs="Piety Pantaloons +1",
  276. feet="Ebers Duckbills +1"}
  277.  
  278. -- Regen Set --
  279. sets.Midcast.Regen = set_combine(sets.Midcast.Haste,{
  280. main="Bolelabunga",
  281. body="Piety Briault +1",
  282. hands="Ebers Mitts +1",
  283. legs="Theo. Pant. +1"})
  284. sets.Midcast.Repose = set_combine(sets.Midcast.Haste,{
  285. main="Grioavolr",
  286. sub="Niobid Strap",
  287. head="Befouled Crown",
  288. ear1="Lifestorm Earring",
  289. neck="Incanter's Torque",
  290. ear2="Psystorm Earring",
  291. body="Shango Robe",
  292. ammo="Pemphredo Tathlum",
  293. back="Mending Cape",
  294. waist="Rumination Sash",
  295. ring1="Etana Ring",
  296. hands="Fanatic Gloves",
  297. ring2="Sangoma Ring",
  298. legs="Vanya Slops",
  299. feet="Medium's Sabots"})
  300.  
  301. -- Stoneskin Set --
  302. sets.Midcast.Stoneskin = set_combine(sets.Midcast.Haste,{})
  303.  
  304. -- Na Set --
  305. sets.Midcast.Na = set_combine(sets.Midcast.Haste,{
  306. main="Yagrush",
  307. ammo="Impatiens",
  308. head="Nahtirah Hat",
  309. neck="Orunmila's Torque",
  310. ear1="Loquac. Earring",
  311. body="Shango Robe",
  312. ear2="Enchntr. Earring +1",
  313. hands="Gende. Gages +1",
  314. ring1="Prolix Ring",
  315. ring2="Lebeche Ring",
  316. back="Perimede Cape",
  317. waist="Witful Belt";
  318. feet="Regal Pumps +1",
  319. legs="Ebers Pantaloons +1"})
  320.  
  321. -- Cursna Set --
  322. sets.Midcast.Cursna = {
  323. main="Yagrush",
  324. sub="Thuellaic Ecu +1",
  325. ammo="Hasty Pinion +1",
  326. head="Vanya Hood",
  327. neck="Debilis Medallion",
  328. ear1="Loquac. Earring",
  329. ear2="Enchntr Earring +1",
  330. body="Ebers Bliaud +1",
  331. hands="Fanatic Gloves",
  332. ring1="Ephedra Ring",
  333. ring2="Ephedra Ring",
  334. back="Mending Cape",
  335. waist="Witful Belt",
  336. legs="Theo. Pant. +1",
  337. feet="Gende. Galosh. +1"}
  338.  
  339. sets.Midcast.Divine = {
  340. main="Grioavolr",
  341. sub="Niobid Strap",
  342. ammo="Pemphredo Tathlum",
  343. head="Welkin Crown",
  344. neck="Eddy Necklace",
  345. ear1="Friomisi Earring",
  346. ear2="Crematio Earring",
  347. body="Witching Robe",
  348. hands="Chironic Gloves",
  349. ring1="Shiva ring +1",
  350. ring2="Shiva ring +1",
  351. back="Toro Cape",
  352. waist="Refoccilation Stone",
  353. legs="Gyve Trousers",
  354. feet="Helios Boots"}
  355.  
  356.  
  357.  
  358. sets.Midcast.Drain = {
  359. main="Rubicundity",
  360. sub="Thuellaic Ecu +1",
  361. head="Befouled Crown",
  362. ammo="Pemphredo Tathlum",
  363. neck="Incanter's Torque",
  364. ear1="Lifestorm Earring",
  365. ear2="Psystorm Earring",
  366. body="Shango Robe",
  367. hands="Kaykaus Cuffs",
  368. ring1="Evanescence Ring",
  369. ring2="Sangoma Ring",
  370. back="Mending Cape",
  371. waist="Fucho-no-Obi",
  372. legs="Vanya Slops",
  373. feet="Medium's Sabots"}
  374.  
  375. sets.Midcast['Elemental Magic'] = {
  376. main="Grioavolr",
  377. sub="Niobid Strap",
  378. ammo="Pemphredo Tathlum",
  379. head="Welkin Crown",
  380. neck="Sanctity Necklace",
  381. ear1="Friomisi Earring",
  382. ear2="Crematio Earring",
  383. body="Witching Robe",
  384. hands="Chironic Gloves",
  385. ring1="Shiva Ring +1",
  386. ring2="Shiva Ring +1",
  387. back="Toro Cape",
  388. waist="Refoccilation Stone",
  389. legs="Gyve Trousers",
  390. feet="Chironic Slippers"}
  391.  
  392. sets.MB = {
  393. main="Grioavolr",
  394. sub="Niobid Strap",
  395. ammo="Pemphredo Tathlum",
  396. head="Helios Band",
  397. neck="Mizu. Kubikazari",
  398. ear1="Static Earring",
  399. ear2="Friomisi Earring",
  400. body="Witching Robe",
  401. hands="Chironic Gloves",
  402. ring1="Mujin Band",
  403. ring2="Locus Ring",
  404. back="Seshaw cape +1",
  405. waist="Refoccilation Stone",
  406. legs="Gyve Trousers",
  407. feet="Chironic Slippers"}
  408.  
  409. sets.Midcast['Enfeebling Magic'] = set_combine(sets.Midcast['Divine Magic'],{
  410. main="Grioavolr",
  411. sub="Niobid Strap",
  412. ear1="Lifestorm Earring",
  413. neck="Incanter's Torque",
  414. head="Befouled Crown",
  415. ear2="Psystorm Earring",
  416. body="Shango Robe",
  417. ammo="Pemphredo Tathlum",
  418. back="Mending Cape",
  419. waist="Rumination Sash",
  420. ring1="Etana Ring",
  421. hands="Kaykaus Cuffs",
  422. ring2="Sangoma Ring",
  423. legs="Vanya Slops",
  424. feet="Medium's Sabots",})
  425.  
  426. sets.Obi = {}
  427. sets.Obi.Thunder = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  428. sets.Obi.Water = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  429. sets.Obi.Fire = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  430. sets.Obi.Ice = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  431. sets.Obi.Wind = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  432. sets.Obi.Earth = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  433. sets.Obi.Light = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  434. sets.Obi.Dark = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  435.  
  436. sets.Midcast['Dark Magic'] = set_combine(sets.Midcast['Enfeebling Magic'],{})
  437.  
  438. sets.Midcast.Impact = {}
  439.  
  440. -- JA Sets --
  441. sets.JA = {}
  442. sets.JA.Benediction = {body="Clr. Briault +2"}
  443. sets.JA.Martyr = {hands="Clr. Mitts +2"}
  444. sets.JA.Devotion = {head="Clr. Cap +2"}
  445.  
  446. -- Divine Caress Set --
  447. sets['Divine Caress'] = {
  448. main="Yagrush",
  449. hands="Ebers Mitts +1",
  450. back="Mending Cape"}
  451.  
  452. -- Melee Set --
  453. sets.TP = {
  454. waist="Windbuffet Belt +1",
  455. neck="Asperity Necklace",
  456. ring1="Rajas Ring",
  457. ammo="Hasty Pinion +1",
  458. ring2="Petrov Ring",
  459. ear1="Cessance Earring",
  460. ear2="Brutal Earring",
  461. head={ name="Telchine Cap", augments={'Accuracy+20','Haste+3','Weapon skill damage +2%',}},
  462. body="Onca Suit",
  463. back="Relucent Cape"}
  464.  
  465. sets.TP.MidACC = set_combine(sets.TP,{
  466. neck="Combatant's Torque"})
  467.  
  468. sets.TP.HighACC = set_combine(sets.TP.MidACC,{
  469. ear1="Cessance Earring",
  470. ear2="Zennaroi Earring",
  471. ring1="Ramuh Ring +1",
  472. ring2="Etana Ring",
  473. waist="Olseni Belt"})
  474.  
  475. sets.TP.HighHaste = set_combine(sets.TP,{
  476. waist="Windbuffet Belt +1",
  477. ear1="Cessance Earring",
  478. ear2="Brutal Earring"})
  479.  
  480.  
  481. sets.TP.MidACC.HighHaste = set_combine(sets.TP.HighHaste,{
  482. neck="Combatant's Torque"})
  483.  
  484. sets.TP.HighACC.HighHaste = set_combine(sets.TP.MidACC.HighHaste,{
  485. ear1="Cessance Earring",
  486. ear2="Zennaroi Earring",
  487. ring1="Ramuh Ring +1",
  488. ring2="Etana Ring",
  489. waist="Olseni Belt"})
  490.  
  491. -- Lock Main Weapon --
  492. sets.MainWeapon = {
  493. main="Yagrush",
  494. sub="Genmei Shield"}
  495.  
  496. -- WS Base Set --
  497. sets.WS = {}
  498. sets.WS["Mystic Boon"] = {
  499. waist="Windbuffet Belt +1",
  500. neck="Imbodla Necklace",
  501. ring1="Rufescent Ring",
  502. ring2="Ifrit Ring +1",
  503. ear1="Moonshade Earring",
  504. ear2="Brutal Earring",
  505. head="Chironic Hat",
  506. body="Onca Suit",
  507. back="Relucent Cape"}
  508. sets.WS["Hexa Strike"] = {
  509. waist="Fotia Belt",
  510. neck="Fotia gorget",
  511. ring1="Rufescent Ring",
  512. ring2="Ifrit Ring +1",
  513. ear1="Moonshade Earring",
  514. ear2="Brutal Earring",
  515. head="Chironic Hat",
  516. body="Onca Suit",
  517. back="Rancorous Mantle"}
  518. sets.WS["Black Halo"] = {
  519. waist="Fotia Belt",
  520. neck="Fotia gorget",
  521. ring1="Rajas Ring",
  522. ring2="Ifrit Ring +1",
  523. ear1="Moonshade Earring",
  524. ear2="Brutal Earring",
  525. head="Chironic Hat",
  526. body="Onca Suit",
  527. back="Relucent Cape"}
  528. sets.WS["True Strike"] = {
  529. waist="Fotia Belt",
  530. neck="Fotia gorget",
  531. ring1="Petrov Ring",
  532. ring2="Ifrit Ring +1",
  533. ear1="Moonshade Earring",
  534. ear2="Brutal Earring",
  535. head="Chironic Hat",
  536. body="Onca Suit",
  537. back="Relucent Cape"}
  538. sets.WS["Judgement"] = {
  539. waist="Fotia Belt",
  540. neck="Fotia gorget",
  541. ring1="Petrov Ring",
  542. ring2="Ifrit Ring +1",
  543. ear1="Moonshade Earring",
  544. ear2="Brutal Earring",
  545. head="Chironic Hat",
  546. body="Onca Suit",
  547. back="Relucent Cape"}
  548. sets.WS["Flash Nova"] = {
  549. waist="Refoccilation Stone",
  550. neck="Eddy Necklace",
  551. ring1="Shiva Ring +1",
  552. ring2="Shiva Ring +1",
  553. ear1="Fromisi Earring",
  554. ear2="Crematio Earring",
  555. head="Welkin Crown",
  556. body="Witching Robe",
  557. hands="Chironic Gloves",
  558. back="Toro Cape",
  559. ammo="Pemphredo Tathlum",
  560. legs="Gyve Trousers",
  561. feet="Helios Boots"}
  562. sets.WS["Shining Strike"] = {
  563. waist="Refoccilation Stone",
  564. neck="Eddy Necklace",
  565. ring1="Shiva Ring +1",
  566. ring2="Shiva Ring +1",
  567. ear1="Fromisi Earring",
  568. ear2="Crematio Earring",
  569. head="Welkin Crown",
  570. body="Witching Robe",
  571. hands="Chironic Gloves",
  572. back="Toro Cape",
  573. ammo="Pemphredo Tathlum",
  574. legs="Gyve Trousers",
  575. feet="Helios Boots"}
  576. sets.WS["Seraph Strike"] = {
  577. waist="Refoccilation Stone",
  578. neck="Eddy Necklace",
  579. ring1="Shiva Ring +1",
  580. ring2="Shiva Ring +1",
  581. ear1="Fromisi Earring",
  582. ear2="Crematio Earring",
  583. head="Welkin Crown",
  584. body="Witching Robe",
  585. hands="Chironic Gloves",
  586. back="Toro Cape",
  587. ammo="Pemphredo Tathlum",
  588. legs="Gyve Trousers",
  589. feet="Helios Boots"}
  590. sets.WS.Realmrazer = {
  591. waist="Fotia Belt",
  592. neck="Fotia gorget",
  593. ring1="Rufescent Ring",
  594. ring2="Ifrit Ring +1",
  595. ear1="Bladeborn Earring",
  596. ear2="Steelflash Earring",
  597. waist="Fotia Belt",
  598. neck="Fotia gorget",
  599. head="Chironic Hat",
  600. body="Onca Suit",
  601. back="Relucent Cape"}
  602. end
  603.  
  604. function pretarget(spell,action)
  605. if midaction() then
  606. add_to_chat(123, '****** ['..spell.name..' CANCELED] ******')
  607. canceled = true
  608. return
  609. elseif spell.english == "Berserk" and buffactive.Berserk then -- Change Berserk To Aggressor If Berserk Is On --
  610. cancel_spell()
  611. send_command('Aggressor')
  612. elseif (spell.type:endswith('Magic') or spell.type == "Ninjutsu") and buffactive.silence then -- Auto Use Echo Drops If You Are Silenced --
  613. cancel_spell()
  614. send_command('input /item "Echo Drops" <me>')
  615. elseif spell.english:ifind("Cure") and player.mp<actualCost(spell.mp_cost) then
  616. degrade_spell(spell,Cure_Spells)
  617. elseif spell.english:ifind("Curaga") and player.mp<actualCost(spell.mp_cost) then
  618. degrade_spell(spell,Curaga_Spells)
  619. elseif Na_Spells:contains(spell.english) then -- Auto Divine Caress --
  620. if windower.ffxi.get_ability_recasts()[32] < 1 and (spell.target.type == 'PLAYER' or spell.target.name == player.name) and not buffactive.amnesia and not buffactive.charm and spell.english ~= "Erase" then
  621. cancel_spell()
  622. send_command('DivineCaress;wait 1.7;input /ma "'..spell.english..'" '..spell.target.name)
  623. end
  624. elseif buffactive['Light Arts'] or buffactive['Addendum: White'] then
  625. if spell.english == "Light Arts" and not buffactive['Addendum: White'] then
  626. cancel_spell()
  627. send_command('input /ja Addendum: White <me>')
  628. elseif spell.english == "Manifestation" then
  629. cancel_spell()
  630. send_command('input /ja Accession <me>')
  631. elseif spell.english == "Alacrity" then
  632. cancel_spell()
  633. send_command('input /ja Celerity <me>')
  634. elseif spell.english == "Parsimony" then
  635. cancel_spell()
  636. send_command('input /ja Penury <me>')
  637. end
  638. elseif buffactive['Dark Arts'] or buffactive['Addendum: Black'] then
  639. if spell.english == "Dark Arts" and not buffactive['Addendum: Black'] then
  640. cancel_spell()
  641. send_command('input /ja Addendum: Black <me>')
  642. elseif spell.english == "Accession" then
  643. cancel_spell()
  644. send_command('input /ja Manifestation <me>')
  645. elseif spell.english == "Celerity" then
  646. cancel_spell()
  647. send_command('input /ja Alacrity <me>')
  648. elseif spell.english == "Penury" then
  649. cancel_spell()
  650. send_command('input /ja Parsimony <me>')
  651. end
  652. end
  653. end
  654.  
  655. function precast(spell,action)
  656. if canceled then
  657. return
  658. elseif spell.type:endswith('Magic') or spell.type == "Ninjutsu" then
  659. if buffactive.silence or spell.target.distance > 16+target_distance then -- Cancel Magic or Ninjutsu If You Are Silenced or Out of Range --
  660. cancel_spell()
  661. add_to_chat(123, spell.name..' Canceled: [Silenced or Out of Casting Range]')
  662. return
  663. else
  664. if string.find(spell.english,'Cur') and spell.english ~= "Cursna" then
  665. equip(sets.Precast.Cure)
  666. elseif spell.english == "Stoneskin" then
  667. equip(sets.Precast[spell.english])
  668. elseif spell.english == "Impact" then
  669. equip(set_combine(sets.Precast.FastCast,{body="Twilight Cloak"}))
  670. elseif string.find(spell.english,'Utsusemi') then
  671. if buffactive['Copy Image (3)'] or buffactive['Copy Image (4)'] then
  672. cancel_spell()
  673. add_to_chat(123, spell.name .. ' Canceled: [3+ Images]')
  674. return
  675. else
  676. equip(sets.Precast.FastCast)
  677. end
  678. elseif sets.Precast[spell.skill] then
  679. equip(sets.Precast[spell.skill])
  680. else
  681. equip(sets.Precast.FastCast)
  682. end
  683. end
  684. elseif spell.type == "JobAbility" then
  685. if sets.JA[spell.english] then
  686. equip(sets.JA[spell.english])
  687. end
  688. elseif spell.type == "WeaponSkill" then
  689. if player.status ~= 'Engaged' then -- Cancel WS If You Are Not Engaged. Can Delete It If You Don't Need It --
  690. cancel_spell()
  691. add_to_chat(123,'Unable To Use WeaponSkill: [Disengaged]')
  692. return
  693. else
  694. if sets.WS[spell.english] then
  695. equip(sets.WS[spell.english])
  696. end
  697. end
  698. elseif spell.english == 'Spectral Jig' and buffactive.Sneak then
  699. cast_delay(0.2)
  700. send_command('cancel Sneak')
  701. end
  702. if sets.Precast[spell.element] and not Na_Spells:contains(spell.english) and ElementalStaff == 'ON' then
  703. equip(sets.Precast[spell.element])
  704. end
  705. if Main == 'ON' then
  706. equip(sets.MainWeapon)
  707. end
  708. end
  709.  
  710. function midcast(spell,action)
  711. equipSet = {}
  712. if spell.action_type == 'Magic' then
  713. equipSet = sets.Midcast
  714. if Na_Spells:contains(spell.english) then
  715. equipSet = equipSet.Na
  716. if DC then
  717. equipSet = set_combine(equipSet,sets['Divine Caress'])
  718. end
  719. if spell.skill == 'Healing Magic' then
  720. equip(sets.midcast.Recast)
  721. if string.find(spell.english,'Cure') then
  722. equip(sets.midcast.Cure)
  723. elseif Enmity == 'ON' then
  724. equip(sets.midcast.Cure.Enmity)
  725. elseif spell.element == world.weather_element or spell.element == world.day_element then
  726. equip(sets.midcast.Cure.Weather)
  727. elseif spell.english:startswith('Cura') then
  728. if Enmity == 'ON' then
  729. equipSet = equipSet.Curaga.Enmity
  730. else
  731. equipSet = equipSet.Curaga
  732. end
  733. end
  734. end
  735. if world.day_element == spell.element or world.weather_element == spell.element then
  736. equipSet = set_combine(equipSet,{back="Twilight Cape",waist="Hachirin-no-Obi"})
  737. end
  738.  
  739. elseif spell.english == "Protectra V" then
  740. equipSet = set_combine(equipSet,{head={ name="Telchine Cap", augments={'Accuracy+12','Potency of "Cure" effect received+6%','Enh. Mag. eff. dur. +9',}},body="Telchine Chas.",hands="Telchine Gloves",legs="Telchine Braconi",feet="Telchine Pigaches"})
  741. elseif spell.skill == 'Elemental Magic' and MB == 'ON' then
  742. if Obi == 'ON' then
  743. equipSet = set_combine(equipSet,sets.MB,{waist="Hachirin-no-Obi"})
  744. else
  745. equipSet = set_combine(equipSet,sets.MB)
  746. end
  747. elseif spell.skill == 'Divine Magic' and MB == 'ON' then
  748. if Obi == 'ON' then
  749. equipSet = set_combine(equipSet,sets.MB,{waist="Hachirin-no-Obi"})
  750. else
  751. equipSet = set_combine(equipSet,sets.MB)
  752. end
  753. elseif spell.english == "Refresh" then
  754. equipSet = set_combine(equipSet,{head={ name="Telchine Cap", augments={'Accuracy+12','Potency of "Cure" effect received+6%','Enh. Mag. eff. dur. +9',}},body="Telchine Chas.",hands="Telchine Gloves",back="Grapevine Cape",waist="Gishdubar Sash",feet="Inspirited boots"})
  755. elseif spell.english == "Refresh II" then
  756. equipSet = set_combine(equipSet,{head={ name="Telchine Cap", augments={'Accuracy+12','Potency of "Cure" effect received+6%','Enh. Mag. eff. dur. +9',}},body="Telchine Chas.",hands="Telchine Gloves",back="Grapevine Cape",waist="Gishdubar Sash",feet="Inspirited boots"})
  757. elseif spell.english == "Shellra V" then
  758. equipSet = set_combine(equipSet,{head={ name="Telchine Cap", augments={'Accuracy+12','Potency of "Cure" effect received+6%','Enh. Mag. eff. dur. +9',}},body="Telchine Chas.",hands="Telchine Gloves",legs="Piety Pantaloons +1"})
  759. elseif spell.english:startswith('Banish') then
  760. equipSet = equipSet.Divine
  761. if world.day_element == spell.element or world.weather_element == spell.element then
  762. equipSet = set_combine(equipSet,{back="Twilight Cape",waist="Hachirin-no-Obi"})
  763. end
  764. elseif spell.english:startswith('Holy') then
  765. equipSet = equipSet.Divine
  766. if world.day_element == spell.element or world.weather_element == spell.element then
  767. equipSet = set_combine(equipSet,{back="Twilight Cape",waist="Hachirin-no-Obi"})
  768. end
  769. elseif spell.english == "Stoneskin" then
  770. if buffactive.Stoneskin then
  771. send_command('@wait 2.8;cancel stoneskin')
  772. end
  773. equipSet = equipSet.Stoneskin
  774. elseif spell.english == "Sneak" then
  775. if spell.target.name == player.name and buffactive['Sneak'] then
  776. send_command('cancel sneak')
  777. end
  778. equipSet = equipSet.Haste
  779. elseif string.find(spell.english,'Bar') then
  780. equipSet = equipSet.Bar
  781. elseif string.find(spell.english,'Regen') then
  782. equipSet = equipSet.Regen
  783. elseif string.find(spell.english,'Repose') then
  784. equipSet = equipSet.Repose
  785. elseif string.find(spell.english,'Drain') then
  786. equipSet = equipSet.Drain
  787. elseif string.find(spell.english,'Aspir') then
  788. equipSet = equipSet.Drain
  789. elseif string.find(spell.english,'Cursna') then
  790. equipSet = equipSet.Cursna
  791. elseif string.find(spell.english,'storm') then
  792. equipSet = equipSet.Haste
  793. elseif string.find(spell.english,'Reraise') then
  794. equipSet = equipSet.Haste
  795. elseif string.find(spell.english,'Utsusemi') then
  796. if spell.english == 'Utsusemi: Ichi' and (buffactive['Copy Image'] or buffactive['Copy Image (2)']) then
  797. send_command('@wait 1.7;cancel Copy Image*')
  798. end
  799. equipSet = equipSet.Haste
  800. elseif spell.english == 'Monomi: Ichi' then
  801. if buffactive['Sneak'] then
  802. send_command('@wait 1.7;cancel sneak')
  803. end
  804. equipSet = equipSet.Haste
  805. else
  806. if equipSet[spell.english] then
  807. equipSet = equipSet[spell.english]
  808. end
  809. if equipSet[spell.skill] then
  810. equipSet = equipSet[spell.skill]
  811. end
  812.  
  813. end
  814. if (spell.skill == 'Elemental Magic' or string.find(spell.english,'Cur') or string.find(spell.english,'Bio') or string.find(spell.english,'Dia')) and not Non_Obi_Spells:contains(spell.english) and (world.day_element == spell.element or world.weather_element == spell.element) and sets.Obi[spell.element] and Obi == 'ON' then -- Use Obi Toggle To Equip Normal Waist Gear --
  815. equipSet = set_combine(equipSet,sets.Obi[spell.element])
  816. if equipSet[spell.type] then
  817. equipSet = equipSet[spell.type]
  818. end
  819. end
  820. elseif equipSet[spell.english] then
  821. equipSet = equipSet[spell.english]
  822. end
  823. equip(equipSet)
  824. if Main == 'ON' then
  825. equip(sets.MainWeapon)
  826. end
  827. end
  828.  
  829. function aftercast(spell,action)
  830. if canceled then
  831. canceled = false
  832. return
  833. else
  834. if not spell.interrupted then
  835. if spell.type == "WeaponSkill" then
  836. send_command('wait 0.2;gs c TP')
  837. elseif (spell.english == "Repose" or spell.english == "Sleep II") then -- Repose & Sleep II Countdown --
  838. send_command('wait 60;input /echo Sleep Effect: [WEARING OFF IN 30 SEC.];wait 15;input /echo Sleep Effect: [WEARING OFF IN 15 SEC.];wait 10;input /echo Sleep Effect: [WEARING OFF IN 5 SEC.]')
  839. elseif (spell.english == "Sleep" or spell.english == "Sleepga") then -- Sleep & Sleepga Countdown --
  840. send_command('wait 30;input /echo Sleep Effect: [WEARING OFF IN 30 SEC.];wait 15;input /echo Sleep Effect: [WEARING OFF IN 15 SEC.];wait 10;input /echo Sleep Effect: [WEARING OFF IN 5 SEC.]')
  841. elseif spell.english == "Banish III" then -- Banish III Countdown --
  842. send_command('wait 35;input /echo Banish Effect: [WEARING OFF IN 10 SEC.]')
  843. end
  844. end
  845. status_change(player.status)
  846. end
  847. end
  848.  
  849. function status_change(new,old)
  850. if Armor == 'PDT' then
  851. equip(sets.PDT)
  852. elseif Armor == 'MDT' then
  853. equip(sets.MDT)
  854. elseif new == 'Engaged' then
  855. equipSet = sets.TP
  856. if equipSet[AccArray[AccIndex]] then
  857. equipSet = equipSet[AccArray[AccIndex]]
  858. end
  859. if Main == 'ON' then
  860. equip(sets.MainWeapon)
  861. end
  862. if buffactive.March == 2 or buffactive.March == 1 or buffactive[580] or buffactive['Mighty Guard'] and (buffactive.Embrava or buffactive.Haste) and equipSet["HighHaste"] then
  863. equipSet = equipSet["HighHaste"]
  864. end
  865. equip(equipSet)
  866. elseif new == 'Idle' then
  867. equip(sets.Idle[IdleArray[IdleIndex]])
  868. elseif new == 'Resting' then
  869. equip(sets.Resting)
  870. end
  871. end
  872.  
  873.  
  874. function buff_change(buff,gain)
  875. buff = string.lower(buff)
  876. if buff == "aftermath: lv.3" then -- AM3 Timer --
  877. if gain then
  878. send_command('timers create "Aftermath: Lv.3" 180 down AM3.png;wait 120;input /echo Aftermath: Lv.3 [WEARING OFF IN 60 SEC.];wait 30;input /echo Aftermath: Lv.3 [WEARING OFF IN 30 SEC.];wait 20;input /echo Aftermath: Lv.3 [WEARING OFF IN 10 SEC.]')
  879. else
  880. send_command('timers delete "Aftermath: Lv.3"')
  881. add_to_chat(123,'AM3: [OFF]')
  882. end
  883. elseif buff == 'divine caress' then
  884. DC = gain
  885. elseif buff == 'weakness' then -- Weakness Timer --
  886. if gain then
  887. send_command('timers create "Weakness" 300 up')
  888. else
  889. send_command('timers delete "Weakness"')
  890. end
  891. end
  892.  
  893. end
  894.  
  895. -- In Game: //gs c (command), Macro: /console gs c (command), Bind: gs c (command) --
  896. function self_command(command)
  897. if command == 'C1' then -- MB Toggle --
  898. if MB == 'ON' then
  899. MB = 'OFF'
  900. add_to_chat(123,'MB: [OFF]')
  901. else
  902. MB = 'ON'
  903. add_to_chat(158,'MB: [ON]')
  904. end
  905. status_change(player.status)
  906. elseif command == 'C2' then -- Obi Toggle --
  907. if Obi == 'ON' then
  908. Obi = 'OFF'
  909. add_to_chat(123,'Obi: [OFF]')
  910. else
  911. Obi = 'ON'
  912. add_to_chat(158,'Obi: [ON]')
  913. end
  914. status_change(player.status)
  915. elseif command == 'C3' then -- Kiting Toggle --
  916. if Kiting == 'ON' then
  917. Kiting = 'OFF'
  918. add_to_chat(123,'Kiting Set: [Unlocked]')
  919. else
  920. Kiting = 'ON'
  921. add_to_chat(158,'Kiting Set: [Locked]')
  922. end
  923. status_change(player.status)
  924. elseif command == 'C5' then -- Auto Update Gear Toggle --
  925. status_change(player.status)
  926. add_to_chat(158,'Auto Update Gear')
  927. elseif command == 'C9' then -- Accuracy Level Toggle --
  928. AccIndex = (AccIndex % #AccArray) + 1
  929. add_to_chat(158,'Accuracy Level: ' .. AccArray[AccIndex])
  930. status_change(player.status)
  931. elseif command == 'C7' then
  932. if Armor == 'PDT' then -- PDT Toggle --
  933. Armor = 'None'
  934. add_to_chat(123,'PDT Set: [Unlocked]')
  935. else
  936. Armor = 'PDT'
  937. add_to_chat(158,'PDT Set: [Locked]')
  938. end
  939. status_change(player.status)
  940. elseif command == 'C17' then -- Main Weapon Toggle --
  941. if Main == 'ON' then
  942. Main = 'OFF'
  943. add_to_chat(123,'Main Weapon: [Unlocked]')
  944. else
  945. Main = 'ON'
  946. add_to_chat(158,'Main Weapon: [Locked]')
  947. end
  948. status_change(player.status)
  949. elseif command == 'C8' then -- Distance Toggle --
  950. if player.target.distance then
  951. target_distance = math.floor(player.target.distance*10)/10
  952. add_to_chat(158,'Distance: '..target_distance)
  953. else
  954. add_to_chat(123,'No Target Selected')
  955. end
  956. elseif command == 'C6' then -- Idle Toggle
  957. IdleIndex = (IdleIndex % #IdleArray) + 1
  958. add_to_chat(158,'Idle Set: '..IdleArray[IdleIndex])
  959. status_change(player.status)
  960. elseif command == 'TP' then
  961. add_to_chat(158,'TP Return: '..tostring(player.tp))
  962. elseif command:match('^SC%d$') then
  963. send_command('//' .. sc_map[command])
  964. end
  965. end
  966.  
  967. function actualCost(originalCost)
  968. if buffactive["Penury"] then
  969. return originalCost*.5
  970. elseif buffactive["Light Arts"] then
  971. return originalCost*.9
  972. else
  973. return originalCost
  974. end
  975. end
  976.  
  977. function degrade_spell(spell,degrade_array)
  978. spell_index = table.find(degrade_array,spell.name)
  979. if spell_index > 1 then
  980. new_spell = degrade_array[spell_index - 1]
  981. change_spell(new_spell,spell.target.raw)
  982. add_to_chat(8,spell.name..' Canceled: ['..player.mp..'/'..player.max_mp..'MP::'..player.mpp..'%] Casting '..new_spell..' instead.')
  983. end
  984. end
  985.  
  986. function change_spell(spell_name,target)
  987. cancel_spell()
  988. send_command('//'..spell_name..' '..target)
  989. end
  990.  
  991. function sub_job_change(newSubjob, oldSubjob)
  992. select_default_macro_book()
  993. end
  994.  
  995. function set_macro_page(set,book)
  996. if not tonumber(set) then
  997. add_to_chat(123,'Error setting macro page: Set is not a valid number ('..tostring(set)..').')
  998. return
  999. end
  1000. if set < 1 or set > 10 then
  1001. add_to_chat(123,'Error setting macro page: Macro set ('..tostring(set)..') must be between 1 and 10.')
  1002. return
  1003. end
  1004.  
  1005. if book then
  1006. if not tonumber(book) then
  1007. add_to_chat(123,'Error setting macro page: book is not a valid number ('..tostring(book)..').')
  1008. return
  1009. end
  1010. if book < 1 or book > 20 then
  1011. add_to_chat(123,'Error setting macro page: Macro book ('..tostring(book)..') must be between 1 and 20.')
  1012. return
  1013. end
  1014. send_command('@input /macro book '..tostring(book)..';wait .1;input /macro set '..tostring(set))
  1015. else
  1016. send_command('@input /macro set '..tostring(set))
  1017. end
  1018. end
  1019.  
  1020. function select_default_macro_book()
  1021. -- Default macro set/book
  1022. if player.sub_job == 'SCH' then
  1023. set_macro_page(6, 11)
  1024. elseif player.sub_job == 'BLM' then
  1025. set_macro_page(6, 11)
  1026. elseif player.sub_job == 'RDM' then
  1027. set_macro_page(6, 11)
  1028. elseif player.sub_job == 'DNC' then
  1029. set_macro_page(4, 11)
  1030. elseif player.sub_job == 'WAR' then
  1031. set_macro_page(4, 11)
  1032. elseif player.sub_job == 'NIN' then
  1033. set_macro_page(4, 11)
  1034. else
  1035. set_macro_page(6, 11)
  1036. end
  1037. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement