Advertisement
Celebrindal

cele_blm2.lua

May 20th, 2015
309
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 35.88 KB | None | 0 0
  1. toau_zones = S{"Leujaoam Sanctum","Mamool Ja Training Grounds","Lebros Cavern","Periqia","Ilrusi Atoll",
  2. "Nyzul Isle","Bhaflau Remnants","Arrapago Remnants","Silver Sea Remnants","Zhayolm Remnants"}
  3.  
  4. function get_sets()
  5. fixed_pos = ''
  6. fixed_ts = os.time()
  7.  
  8. windower.raw_register_event('outgoing chunk',function(id,original,modified,injected,blocked)
  9. if not blocked then
  10. if id == 0x15 then
  11. if (gearswap.cued_packet or midaction()) and fixed_pos ~= '' and os.time()-fixed_ts < 10 then
  12. return original:sub(1,4)..fixed_pos..original:sub(17)
  13. else
  14. fixed_pos = original:sub(5,16)
  15. fixed_ts = os.time()
  16. end
  17. end
  18. end
  19. end)
  20. AccIndex = 1
  21. AccArray = {"LowACC","MidACC","HighACC"} -- 3 Levels Of Accuracy Sets For Magic. Default ACC Set Is LowACC. Add More ACC Sets If Needed Then Create Your New ACC Below --
  22. IdleIndex = 1
  23. IdleArray = {"Movement","Refresh"} -- Default Idle Set Is Movement --
  24. Armor = 'None'
  25. MagicBurstIndex = 0
  26. Obi = 'ON' -- Turn Default Obi ON or OFF Here --
  27. target_distance = 5 -- Set Default Distance Here --
  28.  
  29.  
  30. Non_Obi_Spells = S{
  31. 'Burn','Choke','Drown','Frost','Rasp','Shock','Impact','Anemohelix','Cryohelix',
  32. 'Geohelix','Hydrohelix','Ionohelix','Luminohelix','Noctohelix','Pyrohelix'}
  33.  
  34. Cure_Spells = {"Cure","Cure II","Cure III","Cure IV"} -- Cure Degradation --
  35. Curaga_Spells = {"Curaga","Curaga II"} -- Curaga Degradation --
  36. sc_map = {SC1 = "Stun", SC2 = "ThunderV", SC3 = "BlizzardV"} -- 3 Additional Binds. Can Change Whatever JA/WS/Spells You Like Here. Remember Not To Use Spaces. --
  37.  
  38. -- Idle Sets --
  39. sets.Idle = {}
  40. sets.Idle.Refresh = {
  41. main="Keraunos",
  42. ammo="Sihirik",
  43. head="Befouled Crown",
  44. neck="Twilight Torque",
  45. ear1="Earthcry Earring",
  46. ear2="Loquac. Earring",
  47. body="Wicce Coat",
  48. hands="Serpentes Cuffs",
  49. ring1="Dark Ring",
  50. ring2="Dark Ring",
  51. back="Umbra Cape",
  52. waist="Fucho-no-Obi",
  53. legs="Hagondes Pants",
  54. feet="Serpentes Sabots"}
  55.  
  56. sets.Idle.Movement = set_combine(sets.Idle.Refresh,{
  57. ammo="Sihirik",
  58. head="Hagondes Hat",
  59. neck="Twilight Torque",
  60. body="Hagondes Coat",
  61. ring1="Dark Ring",
  62. ring2="Dark Ring",
  63. back="Umbra Cape",
  64. waist="Slipor Sash",
  65. legs="Hagondes Pants",
  66. feet="Herald's Gaiters"})
  67.  
  68. sets.Resting = set_combine(sets.Idle.Movement,{})
  69.  
  70. -- PDT Set --
  71. sets.PDT = {
  72. ammo="Sihirik",
  73. head="Hagondes Hat",
  74. neck="Twilight Torque",
  75. ear1="Black Earring",
  76. ear2="Darkness Earring",
  77. body="Hagondes Coat",
  78. hands="Hagondes Cuffs",
  79. ring1="Dark Ring",
  80. ring2="Dark Ring",
  81. back="Umbra Cape",
  82. waist="Slipor Sash",
  83. legs="Hagondes Pants",
  84. feet="Herald's Gaiters"}
  85.  
  86. sets.Sublimation = {
  87. ammo="Clarus Stone",
  88. head="Befouled Crown",
  89. neck="Twilight Torque",
  90. ear1="Earthcry Earring",
  91. ear2="Loquac. Earring",
  92. body="Wicce Coat",
  93. hands="Serpentes Cuffs",
  94. ring1="Dark Ring",
  95. ring2="Dark Ring",
  96. back="Umbra Cape",
  97. waist="Fucho-no-Obi",
  98. legs="Hagondes Pants",
  99. feet="Serpentes Sabots"}
  100.  
  101. sets.Precast = {}
  102.  
  103. -- Fastcast Set --
  104. sets.Precast.FastCast = {
  105. ammo="Impatiens",
  106. head="Nahtirah Hat",
  107. neck="Orunmila's Torque",
  108. ear1="Earthcry Earring",
  109. ear2="Loquac. Earring",
  110. body="Dalmatica",
  111. hands="Lurid Mitts",
  112. ring1="Prolix Ring",
  113. ring2="Weather. Ring",
  114. back="Swith Cape +1",
  115. waist="Witful Belt",
  116. legs="Fea's Slops",
  117. feet="Battlecast Gaiters"}
  118.  
  119. sets.Precast['Enhancing Magic'] = set_combine(sets.Precast.FastCast,{
  120. waist="Siegel Sash"})
  121. sets.Precast['Stoneskin'] = set_combine(sets.Precast.FastCast,{
  122. waist="Siegel Sash"}, {head="Umuthi Hat"}, {neck="Stone Gorget"}, {ear1="Earthcry Earring"}, {legs="Haven Hose"})
  123. sets.Precast['Elemental Magic'] = set_combine(sets.Precast.FastCast,{
  124. head="Wicce Petasos"}, {body="Dalmatica"}, {back="Swith Cape +1"})
  125. sets.Precast['Dark Magic'] = set_combine(sets.Precast.FastCast, {
  126. body="Dalmatica"}, {back="Swith Cape +1"})
  127.  
  128. -- Precast Cure Set --
  129. sets.Precast.Cure = {
  130. ammo="Impatiens",
  131. head="Nahtirah Hat",
  132. neck="Orunmila's Torque",
  133. ear1="Loquac. Earring",
  134. ear2="Enchntr. Earring +1",
  135. body="Telchine Chausble",
  136. hands="Bokwus Gloves",
  137. ring1="Prolix Ring",
  138. ring2="Weather. Ring",
  139. back="Swith Cape +1",
  140. waist="Witful Belt";
  141. legs="Fea's Slops",
  142. feet="Battlecast Gaiters"}
  143.  
  144. -- Midcast Base Set --
  145. sets.Midcast = {}
  146.  
  147. -- Haste Set --
  148. sets.Midcast.Haste = {
  149. ammo="Clarus Stone",
  150. head="Nahtirah Hat",
  151. neck="Orunmila's Torque",
  152. ear2="Loquac. Earring",
  153. body="Telchine Chausble",
  154. hands="Augur's Gloves",
  155. ring1="Prolix Ring",
  156. ring2="Weather. Ring",
  157. back="Swith Cape +1",
  158. waist="Witful Belt",
  159. legs="Fea's Slops",
  160. feet="Battlecast Gaiters"}
  161.  
  162. -- Cure Set --
  163. sets.Midcast.Cure = {
  164. ammo="Clarus Stone",
  165. head="Nahtirah Hat",
  166. neck="Fylgja Torque",
  167. body="Telchine Chausble",
  168. hands="Bokwus Gloves",
  169. ring1="Ephedra Ring",
  170. ring2="Sirona's Ring",
  171. waist="Witful Belt",
  172. legs="Telchine Braconi",
  173. ear1="Lifestorm Earring",
  174. ear2="Loquac. Earring",
  175. back="Tempered Cape",
  176. feet="Zenith Pumps"}
  177.  
  178. -- Curaga Set --
  179. sets.Midcast.Curaga = {
  180. ammo="Clarus Stone",
  181. head="Nahtirah Hat",
  182. neck="Fylgja Torque",
  183. body="Telchine Chausble",
  184. hands="Bokwus Gloves",
  185. ring1="Ephedra Ring",
  186. ring2="Sirona's Ring",
  187. waist="Witful Belt",
  188. legs="Telchine Braconi",
  189. ear1="Lifestorm Earring",
  190. ear2="Loquac. Earring",
  191. back="Tempered Cape",
  192. feet="Zenith Pumps"}
  193.  
  194.  
  195. -- Enhancing Magic Set --
  196. sets.Midcast['Enhancing Magic'] = {
  197. head="Befouled Crown",
  198. neck="Enhancing Torque",
  199. ear1="Loquac. Earring",
  200. body="Telchine Chasuble",
  201. hands="Augur's Gloves",
  202. ring1="Prolix Ring",
  203. ring2="Weather. Ring",
  204. back="Swith Cape +1",
  205. waist="Olympus Sash",
  206. legs="Fea's Slops",
  207. feet="Battlecast Gaiters"}
  208.  
  209. -- Stoneskin Set --
  210. sets.Midcast.Stoneskin = set_combine(sets.Midcast['Enhancing Magic'],{
  211. neck="Stone Gorget",
  212. head="Umuthi Hat",
  213. ear1="Earthcry Earring",
  214. waist="Seigel Sash",
  215. legs="Haven Hose"})
  216.  
  217. -- Regen Set --
  218. sets.Midcast.Regen = {body="Telchine Chas.",legs="Telchine braconi"}
  219.  
  220. -- Stun Sets --
  221. sets.Midcast.Stun = {
  222. ammo="Clarus Stone",
  223. head="Nahtirah Hat",
  224. neck="Dark Torque",
  225. ear1="Loquac. Earring",
  226. ear2="Dark Earring",
  227. body="Helios Jacket",
  228. hands="Archmage's Gloves",
  229. ring1="Archon Ring",
  230. ring2="Sangoma Ring",
  231. back={ name="Bane Cape", augments={'"Mag. Atk. Bns." +1', '"Fast Cast" +1', "Elem. magic skill +2", "Dark magic skill +7"}},
  232. waist="Witful Belt",
  233. legs="Spaekona Tonban",
  234. feet="Helios Boots"} --Helios augment fastcast 5, int macc best--
  235.  
  236. sets.Midcast.Stun.MidACC = set_combine(sets.Midcast.Stun,{})
  237.  
  238. sets.Midcast.Stun.HighACC = set_combine(sets.Midcast.Stun.MidACC,{})
  239.  
  240. -- Dark Magic Sets --
  241. sets.Midcast['Dark Magic'] = set_combine(sets.Midcast.Stun,{
  242. ammo="Ombre Tathlum",
  243. head="Befouled Crown",
  244. neck="Dark Torque",
  245. ear1="Lifestorm Earring",
  246. ear2="Psystorm Earring",
  247. body="Helios Jacket",
  248. hands="Arch. Gloves",
  249. ring1="Shiva Ring",
  250. ring2="Archon Ring",
  251. back={ name="Bane Cape", augments={'"Mag. Atk. Bns." +1', '"Fast Cast" +1', "Elem. magic skill +2", "Dark magic skill +7"}},
  252. waist="Witful Belt",
  253. legs="Spae. tonban +1",
  254. feet="Wicce Sabots"})
  255.  
  256. sets.Midcast['Dark Magic'].MidACC = set_combine(sets.Midcast['Dark Magic'],{
  257. ammo="Ombre Tathlum",
  258. head="Befouled Crown",
  259. neck="Dark Torque",
  260. ear1="Lifestorm Earring",
  261. ear2="Psystorm Earring",
  262. body="Helios Jacket",
  263. hands="Arch. Gloves",
  264. ring1="Shiva Ring",
  265. ring2="Archon Ring",
  266. back={ name="Bane Cape", augments={'"Mag. Atk. Bns." +1', '"Fast Cast" +1', "Elem. magic skill +2", "Dark magic skill +7"}},
  267. waist="Witful Belt",
  268. legs="Spae. tonban +1",
  269. feet="Wicce Sabots"})
  270.  
  271. sets.Midcast['Dark Magic'].HighACC = set_combine(sets.Midcast['Dark Magic'].MidACC,{
  272. ammo="Ombre Tathlum",
  273. head="Befouled Crown",
  274. neck="Dark Torque",
  275. ear1="Lifestorm Earring",
  276. ear2="Psystorm Earring",
  277. body="Helios Jacket",
  278. hands="Arch. Gloves",
  279. ring1="Shiva Ring",
  280. ring2="Archon Ring",
  281. back={ name="Bane Cape", augments={'"Mag. Atk. Bns." +1', '"Fast Cast" +1', "Elem. magic skill +2", "Dark magic skill +7"}},
  282. waist="Witful Belt",
  283. legs="Spae. tonban +1",
  284. feet="Wicce Sabots"})
  285.  
  286. sets.Midcast.Drain = {
  287. ammo="Ombre Tathlum",
  288. head="Befouled Crown",
  289. neck="Dark Torque",
  290. ear1="Lifestorm Earring",
  291. ear2="Psystorm Earring",
  292. body="Helios Jacket",
  293. hands="Arch. Gloves",
  294. ring1="Shiva Ring",
  295. ring2="Archon Ring",
  296. back={ name="Bane Cape", augments={'"Mag. Atk. Bns." +1', '"Fast Cast" +1', "Elem. magic skill +2", "Dark magic skill +7"}},
  297. waist="Witful Belt",
  298. legs="Spae. tonban +1",
  299. feet="Wicce Sabots"}
  300.  
  301. sets.Midcast.Aspir = {
  302. ammo="Ombre Tathlum",
  303. head="Befouled Crown",
  304. neck="Dark Torque",
  305. ear1="Lifestorm Earring",
  306. ear2="Psystorm Earring",
  307. body="Helios Jacket",
  308. hands="Arch. Gloves",
  309. ring1="Shiva Ring",
  310. ring2="Archon Ring",
  311. back={ name="Bane Cape", augments={'"Mag. Atk. Bns." +1', '"Fast Cast" +1', "Elem. magic skill +2", "Dark magic skill +7"}},
  312. waist="Witful Belt",
  313. legs="Spae. tonban +1",
  314. feet="Wicce Sabots"}
  315.  
  316. -- Elemental Sets --
  317. sets.Midcast['Elemental Magic'] = {
  318. main="Keraunos",
  319. ammo="ghastly Tathlum",
  320. head="Hagondes Hat",
  321. neck="Eddy Necklace",
  322. ear1="Friomisi Earring",
  323. ear2="Novio Earring",
  324. body="Helios Jacket",
  325. hands="Helios Gloves",
  326. ring1="Shiva Ring",
  327. ring2="Shiva Ring",
  328. back="Toro Cape",
  329. waist="Oneiros sash",
  330. legs="Hagondes Pants",
  331. feet="Helios Boots"}
  332.  
  333. sets.Midcast['Elemental Magic'].MidACC = set_combine(sets.Midcast['Elemental Magic'],{
  334. main="Keraunos",
  335. ammo="ghastly Tathlum",
  336. head="Arch. Petasos +1",
  337. neck="Eddy Necklace",
  338. ear1="Friomisi Earring",
  339. ear2="Novio Earring",
  340. body="Helios Jacket",
  341. hands="Helios Gloves",
  342. ring1="Shiva Ring",
  343. ring2="Shiva Ring",
  344. back={ name="Bane Cape", augments={"Elem. magic skill +9", "Dark magic skill +4"}},
  345. waist="Oneiros Sash",
  346. legs="Hagondes Pants",
  347. feet="Helios Boots"})
  348.  
  349. sets.Midcast['Elemental Magic'].HighACC = set_combine(sets.Midcast['Elemental Magic'].MidACC,{
  350. main="Keraunos",
  351. head="Arch. Petasos +1",
  352. neck="Eddy Necklace",
  353. ear1="Lifestorm Earring",
  354. ear2="Psystorm Earring",
  355. body="Helios Jacket",
  356. hands="Helios Gloves", --Helios 20/20, 10 INT, 8 crit rate--
  357. ring1="Shiva Ring",
  358. ring2="Shiva Ring",
  359. back={ name="Bane Cape", augments={"Elem. magic skill +9", "Dark magic skill +4"}},
  360. waist="Witch Sash",
  361. legs="Hagondes Pants",
  362. feet="Helios Boots"})
  363.  
  364. -- Enfeebling Sets --
  365. sets.Midcast['Enfeebling Magic'] = {
  366. head="Befouled Crown",
  367. neck="Enfeebling Torque",
  368. ear1="Lifestorm Earring",
  369. ear2="Psystorm Earring",
  370. body="Spae. Coat +1",
  371. hands="Lurid Mitts",
  372. ring1="Sangoma Ring",
  373. ring2="Leviathan Ring",
  374. back="Refraction Cape",
  375. waist="Witch Sash",
  376. legs="Fea's Slops",
  377. feet="Helios Boots"}
  378.  
  379. sets.Midcast['Enfeebling Magic'].MidACC = set_combine(sets.Midcast['Enfeebling Magic'],{
  380. ammo="Ombre Tathlum",
  381. head="Befouled Crown",
  382. neck="Enfeebling Torque",
  383. ear1="Lifestorm Earring",
  384. ear2="Psystorm Earring",
  385. body="Spae. Coat +1",
  386. hands="Lurid Mitts",
  387. ring1="Sangoma Ring",
  388. ring2="Leviathan Ring",
  389. back="Ogapepo Cape +1",
  390. waist="Witch Sash",
  391. legs="Hagondes Pants",
  392. feet="Helios Boots"})
  393. sets.Midcast['Enfeebling Magic'].HighACC = set_combine(sets.Midcast['Enfeebling Magic'].MidACC,{
  394. head="Befouled Crown",
  395. neck="Enfeebling Torque",
  396. ear1="Lifestorm Earring",
  397. ear2="Psystorm Earring",
  398. body="Spae. Coat +1",
  399. hands="Lurid Mitts",
  400. ring1="Leviathan Ring",
  401. ring2="Sangoma Ring",
  402. back="Refraction Cape",
  403. waist="Witch Sash",
  404. legs="Fea's Slops",
  405. feet="Helios Boots"})
  406. sets.Midcast['Ninjutsu'] = {
  407. main="Keraunos",
  408. sub="Elder's Grip +1",
  409. ammo="Ghastly Tathlum",
  410. head="Hagondes Hat",
  411. neck="Eddy Necklace",
  412. ear1="Friomisi Earring",
  413. ear2="Novio Earring",
  414. body="Helios Jacket",
  415. hands="Helios Gloves",
  416. ring1="Shiva Ring",
  417. ring2="Shiva Ring",
  418. back="Toro Cape",
  419. waist="Oneiros Sash",
  420. legs="Hagondes Pants",
  421. feet="Helios Boots"}
  422. -- Impact Set --
  423. sets.Midcast.Impact = {
  424. main="Keraunos",
  425. neck="Eddy Necklace",
  426. ear1="Lifestorm Earring",
  427. ear2="Psystorm Earring",
  428. body="Twilight Cloak",
  429. hands="Wicce Gloves",
  430. ring1="Shiva Ring",
  431. ring2="Shiva Ring",
  432. back="Toro Cape",
  433. waist="Witch Sash",
  434. legs="Hagondes Pants",
  435. feet="Helios Boots"}
  436.  
  437. -- Meteor Set --
  438. sets.Midcast.Meteor = set_combine(sets.Midcast['Elemental Magic'],{
  439. ammo="Ghastly Tathlum",
  440. head="Hagondes Hat",
  441. neck="Eddy Necklace",
  442. ear1="Friomisi Earring",
  443. ear2="Novio Earring",
  444. body="Helios Jacket",
  445. hands="Helios Gloves",
  446. ring1="Shiva Ring",
  447. ring2="Shiva Ring",
  448. back={ name="Bane Cape", augments={"Elem. magic skill +9", "Dark magic skill +4"}},
  449. waist="Othila Sash",
  450. legs="Hagondes Pants",
  451. feet="Helios Boots"})
  452.  
  453. sets.Midcast.Helix = set_combine(sets.Midcast['Elemental Magic'],{
  454. })
  455.  
  456. sets.Midcast.Dia = {
  457. waist="Chaac Belt"}
  458. sets.Midcast.DiaII = {
  459. waist="Chaac Belt"}
  460. sets.Midcast.Diaga = {
  461. waist="Chaac Belt"}
  462.  
  463. -- Elemental Obi/Twilight Cape --
  464. sets.Obi = {}
  465. sets.Obi.Lightning = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  466. sets.Obi.Water = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  467. sets.Obi.Fire = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  468. sets.Obi.Ice = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  469. sets.Obi.Wind = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  470. sets.Obi.Earth = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  471. sets.Obi.Light = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  472. sets.Obi.Dark = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  473.  
  474. sets.dayObi = {}
  475. sets.dayObi.Lightning = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  476. sets.dayObi.Water = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  477. sets.dayObi.Fire = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  478. sets.dayObi.Ice = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  479. sets.dayObi.Wind = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  480. sets.dayObi.Earth = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  481. sets.dayObi.Light = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  482. sets.dayObi.Dark = {back="Twilight Cape",waist='Hachirin-no-Obi'}
  483.  
  484. -- JA Sets --
  485. sets.JA = {}
  486. sets.JA.Manafont = {body="Arch. Coat"}
  487. sets.JA['Enmity Douse'] = {}
  488. sets.JA['Mana Wall'] = {feet="Wicce Sabots"}
  489.  
  490. -- Melee Set --
  491. sets.Melee = set_combine(sets.Midcast.Haste,{
  492. ammo="Sihirik",
  493. head="Telchine Cap",
  494. neck="Asperity Necklace",
  495. ear1="Bladeborn Earring",
  496. ear2="Steelflash Earring",
  497. body="Telchine Chasuble",
  498. hands="Telchine Gloves",
  499. ring1="Mars's Ring",
  500. ring2="Rajas Ring",
  501. back="Umbra Cape",
  502. waist="Cetl Belt",
  503. legs="Telchine Braconi",
  504. feet="Battlecast Gaiters"})
  505.  
  506. -- WS Base Set --
  507. sets.WS = {}
  508. sets.WS.Shattersoul = {
  509. ammo="Hasty Pinion +1",
  510. head="Telchine Cap",
  511. neck="Fotia Gorget",
  512. ear1="Steelflash Earring",
  513. ear2="Bladeborn Earring",
  514. body="Archmage's Coat",
  515. hands="Spaekona's Gloves",
  516. ring1="Shiva Ring",
  517. ring2="Shiva Ring",
  518. back="Kayapa Cape",
  519. waist="Famine Sash",
  520. legs="Telchine Braconi",
  521. feet="Battlecast Gaiters"}
  522. sets.WS.Myrkr = {
  523. ammo="Sihirik",
  524. head="Nahtirah Hat",
  525. neck="Beak Necklace +1",
  526. ear1="Friomisi Earring",
  527. ear2="Loquac. Earring",
  528. body="Wicce Coat",
  529. hands="Bokwus Gloves",
  530. ring1="Sangoma Ring",
  531. ring2="Dark Ring",
  532. back={ name="Bane Cape", augments={'"Mag. Atk. Bns." +1', '"Fast Cast" +1', "Elem. magic skill +2", "Dark magic skill +7"}},
  533. waist="Oneiros Sash",
  534. legs="Spae. tonban +1",
  535. feet="Zenith Pumps"}
  536. sets.WS.Vidohunir = {
  537. main="Keraunos",
  538. ammo="Erlene's Notebook",
  539. head="Pixie Hairpin +1",
  540. neck="Fotia Gorget",
  541. ear1="Moonshade Earring",
  542. ear2="Friomisi Earring",
  543. body="Helios Jacket",
  544. hands="Wicce Gloves",
  545. ring1="Shiva Ring",
  546. ring2="Archon Ring",
  547. back="Toro Cape",
  548. waist="Thunder Belt",
  549. legs={ name="Hagondes Pants +1", augments={'"Mag.Atk.Bns." +27', "Phys. dmg. taken -3%"}},
  550. feet={ name="Helios Boots", augments={'INT +10'}}}
  551. sets.WS["Gate of Tartarus"] = {}
  552. end
  553.  
  554. function pretarget(spell,action)
  555. if (spell.type:endswith('Magic') or spell.type == "Ninjutsu") and buffactive.silence then -- Auto Use Echo Drops If You Are Silenced --
  556. cancel_spell()
  557. send_command('input /item "Echo Drops" <me>')
  558. elseif spell.english:ifind("Cure") and player.mp<actualCost(spell.mp_cost) then
  559. degrade_spell(spell,Cure_Spells)
  560. elseif spell.english:ifind("Curaga") and player.mp<actualCost(spell.mp_cost) then
  561. degrade_spell(spell,Curaga_Spells)
  562. elseif buffactive['Light Arts'] or buffactive['Addendum: White'] then
  563. if spell.english == "Light Arts" and not buffactive['Addendum: White'] then
  564. cancel_spell()
  565. send_command('input /ja Addendum: White <me>')
  566. elseif spell.english == "Manifestation" then
  567. cancel_spell()
  568. send_command('input /ja Accession <me>')
  569. elseif spell.english == "Alacrity" then
  570. cancel_spell()
  571. send_command('input /ja Celerity <me>')
  572. elseif spell.english == "Parsimony" then
  573. cancel_spell()
  574. send_command('input /ja Penury <me>')
  575. end
  576. elseif buffactive['Dark Arts'] or buffactive['Addendum: Black'] then
  577. if spell.english == "Dark Arts" and not buffactive['Addendum: Black'] then
  578. cancel_spell()
  579. send_command('input /ja Addendum: Black <me>')
  580. elseif spell.english == "Accession" then
  581. cancel_spell()
  582. send_command('input /ja Manifestation <me>')
  583. elseif spell.english == "Celerity" then
  584. cancel_spell()
  585. send_command('input /ja Alacrity <me>')
  586. elseif spell.english == "Penury" then
  587. cancel_spell()
  588. send_command('input /ja Parsimony <me>')
  589. end
  590. end
  591. end
  592.  
  593. function precast(spell,action)
  594. if spell.type:endswith('Magic') or spell.type == "Ninjutsu" then
  595. if buffactive.silence or spell.target.distance > 16+target_distance then -- Cancel Magic or Ninjutsu If You Are Silenced or Out of Range --
  596. cancel_spell()
  597. add_to_chat(123, spell.name..' Canceled: [Silenced or Out of Casting Range]')
  598. return
  599. else
  600. if string.find(spell.english,'Cur') and spell.english ~= "Cursna" then
  601. equip(sets.Precast.Cure)
  602. elseif spell.english == "Impact" then
  603. equip(set_combine(sets.Precast.FastCast,{body="Twilight Cloak"}))
  604. elseif string.find(spell.english,'Utsusemi') then
  605. if buffactive['Copy Image (3)'] or buffactive['Copy Image (4)'] then
  606. cancel_spell()
  607. add_to_chat(123, spell.english .. ' Canceled: [3+ Images]')
  608. return
  609. else
  610. equip(sets.Precast.FastCast)
  611. end
  612. elseif sets.Precast[spell.english] then
  613. equip(sets.Precast[spell.english])
  614. elseif sets.Precast[spell.skill] then
  615. equip(sets.Precast[spell.skill])
  616. else
  617. equip(sets.Precast.FastCast)
  618. end
  619. end
  620. elseif spell.type == "WeaponSkill" then
  621. if sets.WS[spell.english] then
  622. equip(sets.WS[spell.english])
  623. end
  624. elseif spell.type == "JobAbility" then
  625. if sets.JA[spell.english] then
  626. equip(sets.JA[spell.english])
  627. end
  628. elseif spell.english == 'Spectral Jig' and buffactive.Sneak then
  629. cast_delay(0.2)
  630. send_command('cancel Sneak')
  631. end
  632. if sets.Precast[spell.element] then
  633. equip(sets.Precast[spell.element])
  634. end
  635. end
  636.  
  637. function midcast(spell,action)
  638. equipSet = {}
  639. if spell.type:endswith('Magic') or spell.type == 'Ninjutsu' or spell.type == 'BardSong' then
  640. equipSet = sets.Midcast
  641. if string.find(spell.english,'Cure') then
  642. equipSet = equipSet.Cure
  643. elseif string.find(spell.english,'Cura') then
  644. equipSet = equipSet.Curaga
  645. elseif string.find(spell.english,'Banish') then
  646. equipSet = set_combine(equipSet.Haste,{ring1="Fenian Ring"})
  647. elseif spell.english == "Stoneskin" then
  648. if buffactive.Stoneskin then
  649. send_command('cancel stoneskin')
  650. end
  651. equipSet = equipSet.Stoneskin
  652. elseif spell.english == "Sneak" then
  653. if spell.target.name == player.name and buffactive['Sneak'] then
  654. send_command('cancel sneak')
  655. end
  656. equipSet = equipSet.Haste
  657. elseif string.find(spell.english,'Utsusemi') then
  658. if spell.english == 'Utsusemi: Ichi' and (buffactive['Copy Image'] or buffactive['Copy Image (2)']) then
  659. send_command('@wait 1.7;cancel Copy Image*')
  660. end
  661. equipSet = equipSet.Haste
  662. elseif spell.english == 'Monomi: Ichi' then
  663. if buffactive['Sneak'] then
  664. send_command('@wait 1.7;cancel sneak')
  665. end
  666. equipSet = equipSet.Haste
  667. else
  668. if equipSet[spell.english] then
  669. equipSet = equipSet[spell.english]
  670. end
  671. if equipSet[spell.skill] then
  672. equipSet = equipSet[spell.skill]
  673. end
  674. if equipSet[AccArray[AccIndex]] then
  675. equipSet = equipSet[AccArray[AccIndex]]
  676. end
  677. if equipSet[spell.type] then
  678. equipSet = equipSet[spell.type]
  679. end
  680. if ((spell.skill == 'Elemental Magic') and (world.day_element == spell.element)) then
  681. equipSet = set_combine(equipSet,sets.dayObi[spell.element])
  682. if string.find(spell.english,'helix') then
  683. equip(sets.Midcast.Helix)
  684. end
  685. end
  686. if ((spell.skill == 'Elemental Magic') and (world.weather_element == spell.element)) then
  687. equipSet = set_combine(equipSet,sets.Obi[spell.element])
  688. if string.find(spell.english,'helix') then
  689. equip(sets.Midcast.Helix)
  690. end
  691. end
  692. if string.find(spell.english,'Cure') and (world.weather_element == spell.element) or (world.day_element == spell.element) then
  693. equipSet = set_combine(equipSet,sets.Obi[spell.element])
  694. end
  695. if ((spell.english == 'Drain') or (spell.english == 'Aspir')) and ((world.day_element == spell.element) or (world.weather_element == spell.element)) then
  696. equipSet = set_combine(equipSet,sets.Obi[spell.element])
  697. end
  698. if spell.skill == 'Elemental Magic' and player.hp < 1187 then
  699. equipSet = set_combine(equipSet,{ring1="Sorcerer's Ring"})
  700. end
  701. if spell.skill == 'Elemental Magic' and (string.find(spell.english,'ga') or string.find(spell.english,'ja') or string.find(spell.english,'ra')) then
  702. equipSet = set_combine(equipSet,{body="Spae. Coat +1"})
  703. if spell.skill == 'Elemental Magic' and string.find(spell.english,'ja') then
  704. equipSet = set_combine(equipSet,{legs="Wicce Chausses"})
  705. end
  706. end
  707. if spell.skill =='Elemental Magic' and buffactive['Reive Mark'] then
  708. equipSet = set_combine(equipSet,{neck="Arciela's Grace +1"})
  709. end
  710. if spell.skill =='Elemental Magic' and MagicBurstIndex==1 and spell.english ~= "Meteor" and spell.english ~= "Impact" then
  711. equipSet = set_combine(equipSet,{
  712. main="Keraunos",
  713. ammo="ghastly Tathlum",
  714. head="Hagondes Hat",
  715. neck="Mizu. Kubikazari",
  716. ear1="Friomisi Earring",
  717. ear2="Novio Earring",
  718. hands="Wicce Gloves",
  719. ring1="Shiva Ring",
  720. ring2="Shiva Ring",
  721. back="Seshaw Cape",
  722. legs="Hagondes Pants",
  723. feet="Helios Boots"})
  724. end
  725. if spell.skill == 'Elemental Magic' and (string.find(spell.english,'helix')) then
  726. equipSet = set_combine(equipSet,{waist="Oneiros Sash"})
  727. end
  728. if (string.find(spell.english,'Kaustra')) then
  729. equipSet = set_combine(equipSet,{waist="Oneiros Sash"})
  730. end
  731. end
  732. elseif equipSet[spell.english] then
  733. equipSet = equipSet[spell.english]
  734. end
  735. equip(equipSet)
  736. end
  737.  
  738. function aftercast(spell,action)
  739. if not spell.interrupted then
  740. if spell.english == "Sleep II" then -- Sleep II Countdown --
  741. 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.]')
  742. elseif spell.english == "Sleep" or spell.english == "Sleepga" then -- Sleep & Sleepga Countdown --
  743. 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.]')
  744. elseif spell.english == "Break" then -- Break Countdown --
  745. send_command('wait 25;input /echo Break Effect: [WEARING OFF IN 5 SEC.]')
  746. elseif spell.english == "Paralyze" then -- Paralyze Countdown --
  747. send_command('wait 115;input /echo Paralyze Effect: [WEARING OFF IN 5 SEC.]')
  748. elseif spell.english == "Slow" then -- Slow Countdown --
  749. send_command('wait 115;input /echo Slow Effect: [WEARING OFF IN 5 SEC.]')
  750. elseif spell.english == "Banish II" then -- Banish II Countdown --
  751. send_command('wait 20;input /echo Banish Effect: [WEARING OFF IN 10 SEC.]')
  752. end
  753. end
  754. status_change(player.status)
  755. if buffactive['Reive Mark'] then
  756. equip({neck="Arciela's Grace +1"})
  757. end
  758. end
  759.  
  760. function status_change(new,old)
  761. if Armor == 'PDT' then
  762. equip(sets.PDT)
  763. elseif new=='Engaged' then
  764. equip(sets.Melee)
  765. elseif buffactive["Sublimation: Activated"] then
  766. equip(sets.Sublimation)
  767. elseif new == 'Idle' and buffactive['Reive Mark'] then
  768. equip(sets.Idle[IdleArray[IdleIndex]],{neck="Arciela's Grace +1"})
  769. elseif new == 'Idle' and toau_zones:contains(zone) then
  770. equip(sets.Idle[IdleArray[IdleIndex]],{ring1="Balrahn's Ring"})
  771. elseif new == 'Idle' then
  772. equip(sets.Idle[IdleArray[IdleIndex]])
  773. elseif new == 'Resting' then
  774. equip(sets.Resting)
  775. end
  776. end
  777.  
  778. function buff_change(buff,gain)
  779. buff = string.lower(buff)
  780. if buff=='Mana Wall' then
  781. if gain_or_loss then
  782. equip(sets.JA['Mana Wall'])
  783. disable('feet')
  784. else
  785. enable('feet')
  786. end
  787. elseif buff == "aftermath: lv.3" then -- AM3 Timer/Countdown --
  788. if gain then
  789. send_command('timers create "Aftermath: Lv.3" 180 down;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.]')
  790. else
  791. send_command('timers delete "Aftermath: Lv.3"')
  792. add_to_chat(123,'AM3: [OFF]')
  793. end
  794. elseif buff == "aftermath: lv.2" then -- AM2 Timer/Countdown --
  795. if gain then
  796. send_command('timers create "Aftermath: Lv.2" 270 down;wait 210;input /echo Aftermath: Lv.2 [WEARING OFF IN 60 SEC.];wait 30;input /echo Aftermath: Lv.2 [WEARING OFF IN 30 SEC.];wait 20;input /echo Aftermath: Lv.2 [WEARING OFF IN 10 SEC.]')
  797. else
  798. send_command('timers delete "Aftermath: Lv.2"')
  799. add_to_chat(123,'AM2: [OFF]')
  800. end
  801. elseif buff == "aftermath: lv.1" then -- AM1 Timer/Countdown --
  802. if gain then
  803. send_command('timers create "Aftermath: Lv.1" 270 down;wait 210;input /echo Aftermath: Lv.1 [WEARING OFF IN 60 SEC.];wait 30;input /echo Aftermath: Lv.1 [WEARING OFF IN 30 SEC.];wait 20;input /echo Aftermath: Lv.1 [WEARING OFF IN 10 SEC.]')
  804. else
  805. send_command('timers delete "Aftermath: Lv.1"')
  806. add_to_chat(123,'AM1: [OFF]')
  807. end
  808. elseif buff == 'weakness' then -- Weakness Timer --
  809. if gain then
  810. send_command('timers create "Weakness" 300 up')
  811. else
  812. send_command('timers delete "Weakness"')
  813. end
  814. end
  815. if not midaction() then
  816. status_change(player.status)
  817. end
  818. end
  819.  
  820. -- In Game: //gs c (command), Macro: /console gs c (command), Bind: gs c (command) --
  821. function self_command(command)
  822. if command == 'C1' then -- Magic Accuracy Toggle --
  823. AccIndex = (AccIndex % #AccArray) + 1
  824. add_to_chat(158,'Magic Accuracy Level: ' .. AccArray[AccIndex])
  825. status_change(player.status)
  826. elseif command == 'C5' then -- Auto Update Gear Toggle --
  827. status_change(player.status)
  828. add_to_chat(158,'Auto Update Gear')
  829. elseif command == 'C2' then -- MB Toggle --
  830. if MagicBurstIndex == 1 then
  831. MagicBurstIndex = 0
  832. add_to_chat(123,'Magic Burst Gear: [Off]')
  833. else
  834. MagicBurstIndex = 1
  835. add_to_chat(158,'Magic Burst Gear: [On]')
  836. end
  837. status_change(player.status)
  838. elseif command == 'C3' then -- Obi Toggle --
  839. if Obi == 'ON' then
  840. Obi = 'OFF'
  841. add_to_chat(123,'Obi: [OFF]')
  842. else
  843. Obi = 'ON'
  844. add_to_chat(158,'Obi: [ON]')
  845. end
  846. status_change(player.status)
  847. elseif command == 'C7' then -- PDT Toggle --
  848. if Armor == 'PDT' then
  849. Armor = 'None'
  850. add_to_chat(123,'PDT Set: [Unlocked]')
  851. else
  852. Armor = 'PDT'
  853. add_to_chat(158,'PDT Set: [Locked]')
  854. end
  855. status_change(player.status)
  856. elseif command == 'C8' then -- Distance Toggle --
  857. if player.target.distance then
  858. target_distance = math.floor(player.target.distance*10)/10
  859. add_to_chat(158,'Distance: '..target_distance)
  860. else
  861. add_to_chat(123,'No Target Selected')
  862. end
  863. elseif command == 'C6' then -- Idle Toggle --
  864. IdleIndex = (IdleIndex % #IdleArray) + 1
  865. add_to_chat(158,'Idle Set: '..IdleArray[IdleIndex])
  866. status_change(player.status)
  867. elseif command:match('^SC%d$') then
  868. send_command('//' .. sc_map[command])
  869. end
  870. end
  871.  
  872. function actualCost(originalCost)
  873. if buffactive["Penury"] then
  874. return originalCost*.5
  875. elseif buffactive["Light Arts"] then
  876. return originalCost*.9
  877. else
  878. return originalCost
  879. end
  880. end
  881.  
  882. function degrade_spell(spell,degrade_array)
  883. spell_index = table.find(degrade_array,spell.name)
  884. if spell_index > 1 then
  885. new_spell = degrade_array[spell_index - 1]
  886. change_spell(new_spell,spell.target.raw)
  887. add_to_chat(8,spell.name..' Canceled: ['..player.mp..'/'..player.max_mp..'MP::'..player.mpp..'%] Casting '..new_spell..' instead.')
  888. end
  889. end
  890.  
  891. function change_spell(spell_name,target)
  892. cancel_spell()
  893. send_command('//'..spell_name..' '..target)
  894. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement