GorionOnBahamut

Brd Lua

Aug 8th, 2018
310
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 28.59 KB | None | 0 0
  1. function get_sets()
  2. AccIndex = 1
  3. AccArray = {"LowACC","MidACC"} -- 3 Levels Of Accuracy Sets For TP/WS. First Set Is LowACC. Add More ACC Sets If Needed Then Create Your New ACC Below --
  4. IdleIndex = 1
  5. IdleArray = {"Refresh","Movement"} -- Default Idle Set Is Movement --
  6. Harp = 'OFF'
  7. select_default_macro_book() -- Change Default Macro Book At The End --
  8.  
  9. -- Daurdabla Trigger Songs --
  10. DaurdSongs = S{
  11. "Knight's Minne","Army's Paeon","Army's Paeon II","Army's Paeon III","Army's Paeon IV","Army's Paeon V",
  12. "Goddess's Hymnus","Chocobo Mazurka","Raptor Mazurka"
  13. }
  14.  
  15. Cure_Spells = {"Cure","Cure II","Cure III","Cure IV"} -- Cure Degradation --
  16. Curaga_Spells = {"Curaga","Curaga II"} -- Curaga Degradation --
  17.  
  18. -- Items --
  19. organizer_items = {
  20. i1="Carnwenhan",
  21. i2="Kali",
  22. i3="Gjallarhorn",
  23. i4="Marsyas",
  24. i5="Daurdabla",
  25. }
  26.  
  27. sets.Idle = {}
  28. -- Idle Sets --
  29. sets.Idle.Refresh = {
  30. main="Carnwenhan",
  31. sub="Genmei Shield",
  32. range="Marsyas",
  33. head="Aya. Zucchetto +2",
  34. body="Ayanmo Corazza +2",
  35. hands="Aya. Manopolas +2",
  36. legs="Aya. Cosciales +2",
  37. feet="Fili Cothurnes +1",
  38. neck="Loricate Torque +1",
  39. waist="Dynamic Belt",
  40. left_ear="Loquac. Earring",
  41. right_ear="Sanare Earring",
  42. left_ring="Sheltered Ring",
  43. right_ring="Ayanmo Ring",
  44. back={ name="Intarabus's Cape", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}},
  45. }
  46.  
  47. sets.Idle.Movement = set_combine(sets.Idle.Refresh,{
  48. main="Carnwenhan",
  49. feet="Fili Cothurnes +1"
  50. })
  51.  
  52. sets.Resting = set_combine(sets.Idle.Refresh,{
  53. main="Carnwenhan",
  54. feet="Fili Cothurnes +1"
  55. })
  56.  
  57. -- DT Set --
  58. sets.DT = set_combine(sets.Idle.Movement,{
  59. main="Carnwenhan",
  60. sub="Genmei Shield",
  61. range="Marsyas",
  62. head="Aya. Zucchetto +2",
  63. body="Ayanmo Corazza +2",
  64. hands="Aya. Manopolas +2",
  65. legs="Aya. Cosciales +2",
  66. feet="Fili Cothurnes +1",
  67. neck="Loricate Torque +1",
  68. waist="Dynamic Belt",
  69. left_ear="Loquac. Earring",
  70. right_ear="Sanare Earring",
  71. left_ring="Sheltered Ring",
  72. right_ring="Ayanmo Ring",
  73. back={ name="Intarabus's Cape", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}},
  74. })
  75.  
  76. sets.MEVA = set_combine(sets.DT,{
  77. main="Carnwenhan",
  78. sub="Genmei Shield",
  79. range="Marsyas",
  80. head="Aya. Zucchetto +2",
  81. body="Ayanmo Corazza +2",
  82. hands="Aya. Manopolas +2",
  83. legs="Aya. Cosciales +2",
  84. feet="Fili Cothurnes +1",
  85. neck="Loricate Torque +1",
  86. waist="Dynamic Belt",
  87. left_ear="Loquac. Earring",
  88. right_ear="Sanare Earring",
  89. left_ring="Sheltered Ring",
  90. right_ring="Ayanmo Ring",
  91. back={ name="Intarabus's Cape", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}},
  92. })
  93.  
  94. sets.Precast = {}
  95.  
  96. sets.Precast.FastCast = {
  97. main="Carnwenhan",
  98. sub="Genmei Shield",
  99.  
  100. head="Nahtirah Hat",
  101. body="Inyanga Jubbah +2",
  102. hands={ name="Gende. Gages +1", augments={'Phys. dmg. taken -3%','Song spellcasting time -5%',}},
  103. legs="Aya. Cosciales +2",
  104. feet="Fili Cothurnes +1",
  105. neck="Orunmila's Torque",
  106. waist="Witful Belt",
  107. left_ear="Loquac. Earring",
  108. right_ear="Singing Earring",
  109. left_ring="Weather. Ring",
  110. right_ring="Kishar Ring",
  111. back={ name="Intarabus's Cape", augments={'CHR+20','Mag. Acc+20 /Mag. Dmg.+20','Mag. Acc.+10','"Fast Cast"+10','Damage taken-5%',}},
  112. }
  113.  
  114. sets.Precast.SongCast = set_combine(sets.Precast.FastCast,{
  115. main="Carnwenhan",
  116. sub="Genmei Shield",
  117. head="Nahtirah Hat",
  118. body="Inyanga Jubbah +2",
  119. hands={ name="Gende. Gages +1", augments={'Phys. dmg. taken -3%','Song spellcasting time -5%',}},
  120. legs="Aya. Cosciales +2",
  121. feet={ name="Bihu Slippers +2", augments={'Enhances "Nightingale" effect',}},
  122. neck="Orunmila's Torque",
  123. waist="Witful Belt",
  124. left_ear="Loquac. Earring",
  125. right_ear="Aoidos' Earring",
  126. left_ring="Weather. Ring",
  127. right_ring="Kishar Ring",
  128. back={ name="Intarabus's Cape", augments={'CHR+20','Mag. Acc+20 /Mag. Dmg.+20','Mag. Acc.+10','"Fast Cast"+10','Damage taken-5%',}},
  129. })
  130.  
  131. -- Precast Stoneskin Set --
  132. sets.Precast.Stoneskin = set_combine(sets.Precast.FastCast,{
  133.  
  134. waist="Siegel Sash"
  135. })
  136.  
  137. -- Cure Precast Set --
  138. sets.Precast.Cure = set_combine(sets.Precast.FastCast,{
  139. sub="Genmei Shield",
  140. body="Heka's Kalasiris",
  141. legs="Doyen Pants"
  142. })
  143.  
  144. -- Midcast Base Set --
  145. sets.Midcast = set_combine(sets.Precast.FastCast,{
  146. main="Carnwenhan",
  147. neck="Aoidos' Matinee",
  148. body="Fili Hongreline +1",
  149. legs="Inyanga Shalwar +2",
  150. feet="Brioso Slippers +3",
  151. })
  152.  
  153. -- Midcast Daurdabla Set --
  154. sets.Midcast.Daurdabla = {
  155. main="Carnwenhan",
  156. range="Daurdabla",
  157. ammo=empty,
  158. neck="Aoidos' Matinee",
  159. body="Fili Hongreline +1",
  160. legs="Inyanga Shalwar +2",
  161. feet="Brioso Slippers +3",
  162. }
  163.  
  164. -- Song Debuff Set --
  165. sets.Midcast.Wind = {
  166. main="Carnwenhan",
  167. sub="Genmei Shield",
  168. range="Gjallarhorn",
  169. head="Fili Calot +1",
  170. body="Fili Hongreline +1",
  171. hands="Inyan. Dastanas +2",
  172. legs="Inyanga Shalwar +2",
  173. feet="Brioso Slippers +3",
  174. neck="Aoidos' Matinee",
  175. waist="Harfner's Sash",
  176. left_ear="Singing Earring",
  177. right_ear="Musical Earring",
  178. left_ring="Weather. Ring",
  179. right_ring="Kishar Ring",
  180. back={ name="Intarabus's Cape", augments={'CHR+20','Mag. Acc+20 /Mag. Dmg.+20','Mag. Acc.+10','"Fast Cast"+10','Damage taken-5%',}},
  181. }
  182.  
  183. sets.Midcast.Duration = {
  184. main="Carnwenhan",
  185. sub="Genmei Shield",
  186. range="Marsyas",
  187. head="Fili Calot +1",
  188. body="Fili Hongreline +1",
  189. hands="Inyan. Dastanas +2",
  190. legs="Inyanga Shalwar +2",
  191. feet="Brioso Slippers +3",
  192. neck="Aoidos' Matinee",
  193. waist="Harfner's Sash",
  194. left_ear="Singing Earring",
  195. right_ear="Musical Earring",
  196. left_ring="Weather. Ring",
  197. right_ring="Kishar Ring",
  198. back={ name="Intarabus's Cape", augments={'CHR+20','Mag. Acc+20 /Mag. Dmg.+20','Mag. Acc.+10','"Fast Cast"+10','Damage taken-5%',}},
  199. }
  200.  
  201. -- Song Buff Set --
  202. sets.Midcast.WindBuff = {
  203. main="Carnwenhan",
  204. sub="Genmei Shield",
  205. range="Gjallarhorn",
  206. head="Fili Calot +1",
  207. body="Fili Hongreline +1",
  208. hands="Fili Manchettes +1",
  209. legs="Inyanga Shalwar +2",
  210. feet="Brioso Slippers +3",
  211. neck="Moonbow Whistle",
  212. waist="Harfner's Sash",
  213. left_ear="Singing Earring",
  214. right_ear="Musical Earring",
  215. left_ring="Weather. Ring",
  216. right_ring="Kishar Ring",
  217. back={ name="Intarabus's Cape", augments={'CHR+20','Mag. Acc+20 /Mag. Dmg.+20','Mag. Acc.+10','"Fast Cast"+10','Damage taken-5%',}},
  218. }
  219.  
  220. sets.Midcast.Ballad = {
  221. legs="Fili Rhingrave +1"
  222. }
  223. sets.Midcast.Carol = {
  224. hands="Mousai Gages"
  225. }
  226. sets.Midcast.Madrigal = {
  227. head="Fili Calot +1",
  228. back={ name="Intarabus's Cape", augments={'CHR+20','Mag. Acc+20 /Mag. Dmg.+20','Mag. Acc.+10','"Fast Cast"+10','Damage taken-5%',}},
  229. }
  230. sets.Midcast.March = {
  231. hands="Fili Manchettes +1"
  232. }
  233. sets.Midcast.Minuet = {
  234. body="Fili Hongreline +1"
  235. }
  236. sets.Midcast.Paeon = {
  237. head="Brioso Roundlet +1",
  238. }
  239. sets.Midcast.Prelude = {
  240. back={ name="Intarabus's Cape", augments={'CHR+20','Mag. Acc+20 /Mag. Dmg.+20','Mag. Acc.+10','"Fast Cast"+10','Damage taken-5%',}},
  241. }
  242. sets.Midcast.Scherzo = {
  243. legs="Inyanga Shalwar +2",
  244. feet="Fili Cothurnes +1"
  245. }
  246. sets.Midcast.Lullaby = {
  247. main="Carnwenhan",
  248. range="Gjallarhorn",
  249. head="Aya. Zucchetto +2",
  250. body="Ayanmo Corazza +2",
  251. hands="Brioso Cuffs +3",
  252. legs="Inyanga Shalwar +2",
  253. feet="Brioso Slippers +3",
  254. neck="Moonbow Whistle",
  255. waist="Harfner's Sash",
  256. left_ear="Lifestorm Earring",
  257. right_ear="Psystorm Earring",
  258. left_ring="Weather. Ring",
  259. right_ring="Kishar Ring",
  260. back={ name="Intarabus's Cape", augments={'CHR+20','Mag. Acc+20 /Mag. Dmg.+20','Mag. Acc.+10','"Fast Cast"+10','Damage taken-5%',}},
  261. }
  262. -- Cure Set --
  263. sets.Midcast.Cure = {
  264. head={ name="Vanya Hood", augments={'MP+50','"Cure" potency +7%','Enmity-6',}},
  265. body={ name="Telchine Chas.", augments={'Mag. Acc.+9','"Cure" potency +6%',}},
  266. hands="Bokwus Gloves",
  267. legs={ name="Chironic Hose", augments={'"Mag.Atk.Bns."+12','"Cure" potency +8%','INT+6',}},
  268. feet="Fili Cothurnes +1",
  269. neck="Nodens Gorget",
  270. waist="Witful Belt",
  271. left_ear="Loquac. Earring",
  272. right_ear="Singing Earring",
  273. left_ring="Weather. Ring",
  274.  
  275. back="Solemnity Cape",
  276. }
  277.  
  278. sets.Midcast.SelfCure = set_combine(sets.Midcast.Cure,{
  279. neck="Phalaina Locket",
  280. waist="Gishdubar Sash"
  281.  
  282. })
  283.  
  284. sets.Midcast.Na = set_combine(sets.Precast.FastCast,{
  285.  
  286. neck="Incanter's Torque",
  287. hands="Inyan. Dastanas +2",
  288. ring1="Haoma's Ring",
  289. ring2="Haoma's Ring",
  290. })
  291.  
  292. sets.Midcast.Cursna = set_combine(sets.Midcast.Na,{
  293.  
  294.  
  295.  
  296. body="Inyanga Jubbah +2",
  297. hands="Gende. Gages +1",
  298. legs="Gyve Trousers",
  299. feet="Gende. Galosh. +1",
  300. neck="Debilis Medallion",
  301. waist="Witful Belt",
  302. left_ear="Loquac. Earring",
  303. right_ear="Enchntr. Earring +1",
  304. left_ring="Ephedra Ring",
  305. right_ring="Ephedra Ring",
  306. back={ name="Intarabus's Cape", augments={'CHR+20','Mag. Acc+20 /Mag. Dmg.+20','Mag. Acc.+10','"Fast Cast"+10','Damage taken-5%',}},
  307. })
  308.  
  309. -- Enhancing Magic Set --
  310. sets.Midcast['Enhancing Magic'] = set_combine(sets.Precast.FastCast,{
  311.  
  312.  
  313. head={ name="Telchine Cap", augments={'Enh. Mag. eff. dur. +9',}},
  314. body={ name="Telchine Chas.", augments={'Enh. Mag. eff. dur. +8',}},
  315. hands="Telchine Gloves",
  316. legs={ name="Telchine Braconi", augments={'"Elemental Siphon"+25','Enh. Mag. eff. dur. +10',}},
  317. feet="Telchine Pigaches",
  318. neck="Incanter's Torque",
  319. waist="Olympus Sash",
  320. left_ear="Andoaa Earring",
  321. right_ear="Enchntr. Earring +1",
  322. left_ring="Inyanga Ring",
  323. right_ring="Stikini Ring",
  324. back={ name="Intarabus's Cape", augments={'CHR+20','Mag. Acc+20 /Mag. Dmg.+20','Mag. Acc.+10','"Fast Cast"+10','Damage taken-5%',}},
  325. })
  326.  
  327. sets.Midcast.Aquaveil = set_combine(sets.Midcast['Enhancing Magic'],{
  328. head="Chironic Hat",
  329. waist="Emphatikos Rope",
  330. legs="Shedir Seraweels"
  331. })
  332.  
  333. sets.Midcast.Bar = set_combine(sets.Midcast['Enhancing Magic'],{
  334. neck="Incanter's Torque",
  335. ear1="Andoaa Earring",
  336. hands="Inyan. Dastanas +2",
  337. ring1="Inyanga Ring",
  338. ring2="Stikini Ring",
  339. back="Fi Follet Cape +1",
  340. waist="Olympus Sash",
  341. legs="Shedir Seraweels"
  342.  
  343. })
  344.  
  345. sets.Midcast.Stoneskin = set_combine(sets.Midcast['Enhancing Magic'],{
  346.  
  347. neck="Nodens Gorget",
  348. ear1="Regal Earring",
  349. ear2="Earthcry Earring",
  350. ring1="Inyanga Ring",
  351. ring2="Stikini Ring",
  352. back="Fi Follet Cape +1",
  353. waist="Siegel Sash",
  354. legs="Shedir Seraweels",
  355. feet={ name="Telchine Pigaches", augments={'Mag. Evasion+24','"Fast Cast"+5','Enh. Mag. eff. dur. +7',}}
  356. })
  357.  
  358. -- Dark Magic Set --
  359. sets.Midcast['Dark Magic'] = set_combine(sets.Midcast.Wind,{
  360.  
  361. head="Inyanga Tiara +2",
  362. neck="Incanter's Torque",
  363. body="Inyanga Jubbah +2",
  364. hands="Inyan. Dastanas +2",
  365. back={ name="Intarabus's Cape", augments={'CHR+20','Mag. Acc+20 /Mag. Dmg.+20','Mag. Acc.+10','"Fast Cast"+10',}},
  366. legs="Chironic Hose",
  367. feet="Inyan. Crackows +1"
  368. })
  369.  
  370. -- Enfeebling Magic Set --
  371. sets.Midcast['Enfeebling Magic'] = set_combine(sets.Midcast['Dark Magic'],{
  372. head="Inyanga Tiara +2",
  373. body="Vanya Robe",
  374. feet="Medium's Sabots",
  375. right_ring="Kishar Ring",
  376. })
  377.  
  378. -- JA Sets --
  379. sets.JA = {}
  380. sets.JA.Nightingale = { feet={ name="Bihu Slippers +2", augments={'Enhances "Nightingale" effect',}},
  381. }
  382. sets.JA.Troubadour = { body={ name="Bihu Jstcorps. +3", augments={'Enhances "Troubadour" effect',}},
  383. }
  384. sets.JA["Soul Voice"] = { legs={ name="Bihu Cannions +1", augments={'Enhances "Soul Voice" effect',}},
  385. }
  386.  
  387. -- Melee Sets --
  388. sets.TP = {
  389. main="Carnwenhan",
  390. sub="Genmei Shield",
  391. head="Aya. Zucchetto +2",
  392. body="Ayanmo Corazza +2",
  393. hands="Aya. Manopolas +2",
  394. legs="Aya. Cosciales +2",
  395. feet="Aya. Gambieras +2",
  396. neck="Asperity Necklace",
  397. waist="Dynamic Belt",
  398. left_ear="Steelflash Earring",
  399. right_ear="Bladeborn Earring",
  400. left_ring="Mouflon Ring",
  401. right_ring="Ayanmo Ring",
  402. back={ name="Intarabus's Cape", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}},
  403. }
  404.  
  405. sets.TP.MidACC = set_combine(sets.TP,{
  406.  
  407. })
  408.  
  409. sets.TP.NIN = set_combine(sets.TP,{
  410. main={ name="Kali", augments={'Mag. Acc.+15','String instrument skill +10','Wind instrument skill +10',}},
  411. })
  412.  
  413. sets.TP.NIN.MidACC = set_combine(sets.TP.NIN,{
  414. main={ name="Kali", augments={'Mag. Acc.+15','String instrument skill +10','Wind instrument skill +10',}},
  415. })
  416.  
  417. -- WS Base Set --
  418. sets.WS = {
  419. body={ name="Bihu Jstcorps. +3", augments={'Enhances "Troubadour" effect',}},
  420. }
  421.  
  422. sets.WS["Aeolian Edge"] = set_combine(sets.WS,{
  423.  
  424. })
  425.  
  426. sets.WS.Evisceration = set_combine(sets.WS,{
  427.  
  428. })
  429.  
  430. sets.WS.Exenterator = set_combine(sets.WS,{
  431.  
  432. })
  433.  
  434. sets.WS["Mordant Rime"] = set_combine(sets.WS,{
  435.  
  436. })
  437.  
  438. sets.WS["Mordant Rime"].MidACC = set_combine(sets.WS["Mordant Rime"],{
  439. feet="Aya. Gambieras +2"
  440. })
  441.  
  442. sets.WS["Rudra's Storm"] = set_combine(sets.WS,{
  443.  
  444. })
  445.  
  446. sets.WS["Rudra's Storm"].MidACC = set_combine(sets.WS["Rudra's Storm"],{
  447.  
  448. })
  449.  
  450. -- Harp Lock --
  451. sets.Harp = {
  452. range="Daurdabla"
  453. }
  454. end
  455.  
  456. function pretarget(spell,action)
  457. status_change(player.status)
  458. if (spell.type:endswith('Magic') or spell.type == "BardSong" or spell.type == "Ninjutsu") and buffactive.silence then -- Auto Use Echo Drops If You Are Silenced --
  459. cancel_spell()
  460. send_command('input /item "Echo Drops" <me>')
  461. elseif spell.english:ifind("Cure") and player.mp<actualCost(spell.mp_cost) then
  462. degrade_spell(spell,Cure_Spells)
  463. elseif spell.english:ifind("Curaga") and player.mp<actualCost(spell.mp_cost) then
  464. degrade_spell(spell,Curaga_Spells)
  465. end
  466. end
  467.  
  468. function precast(spell,action)
  469. if spell.type:endswith('Magic') or spell.type == "BardSong" or spell.type == "Ninjutsu" or spell.type == "Trust" then
  470. if buffactive.silence then -- Cancel Magic or Ninjutsu or BardSong If You Are Silenced or Out of Range --
  471. cancel_spell()
  472. add_to_chat(123, spell.name..' Canceled: [Silenced or Out of Casting Range]')
  473. return
  474. else
  475. if spell.type == 'BardSong' then
  476. -- Auto-Pianissimo
  477. if spell.target.type == 'PLAYER' and not spell.target.charmed and not buffactive.Pianissimo then
  478. cancel_spell()
  479. send_command('@input /ja "Pianissimo" <me>; wait 1; input /ma "'..spell.name..'" '..spell.target.name)
  480. return
  481. elseif buffactive.Nightingale then
  482. equip_song_gear(spell)
  483. return
  484. else
  485. equip(sets.Precast.SongCast)
  486. end
  487. if spell.english=="Honor March" then
  488. equip(set_combine(sets.Precast.SongCast),{range="Marsyas"})
  489. end
  490. if DaurdSongs:contains(spell.english) then
  491. equip(set_combine(sets.Precast.SongCast),{range="Daurdabla"})
  492. end
  493. elseif string.find(spell.english,'Cur') and spell.english ~= "Cursna" then
  494. equip(sets.Precast.Cure)
  495. elseif string.find(spell.english,'Utsusemi') then
  496. if buffactive['Copy Image (3)'] or buffactive['Copy Image (4)'] then
  497. cancel_spell()
  498. add_to_chat(123, spell.english .. ' Canceled: [3+ Images]')
  499. return
  500. else
  501. equip(sets.Precast.FastCast)
  502. end
  503. elseif sets.Precast[spell.english] then
  504. equip(sets.Precast[spell.english])
  505. else
  506. equip(sets.Precast.FastCast)
  507. end
  508. end
  509. elseif spell.type == "WeaponSkill" then
  510. equipSet = sets.WS
  511. if equipSet[spell.english] then
  512. equipSet = equipSet[spell.english]
  513. end
  514. if equipSet[AccArray[AccIndex]] then
  515. equipSet = equipSet[AccArray[AccIndex]]
  516. end
  517. if player.tp > 2750 then
  518. if spell.english ~= "Aeolian Edge" or spell.english ~= "Mordant Rime" or spell.english ~= "Exenterator" then
  519. equipSet = set_combine(equipSet,{
  520. ear2="Kuwunga Earring",})
  521. end
  522. elseif player.equipment.main == "Aeneas" and player.tp > 2250 then
  523. if spell.english ~= "Aeolian Edge" or spell.english ~= "Mordant Rime" or spell.english ~= "Exenterator" then
  524. equipSet = set_combine(equipSet,{
  525. ear2="Kuwunga Earring",})
  526. end
  527. else
  528. equipSet = set_combine(equipSet,{})
  529. end
  530. equip(equipSet)
  531. elseif spell.type == "JobAbility" then
  532. if sets.JA[spell.english] then
  533. equip(sets.JA[spell.english])
  534. end
  535. elseif spell.type == "Jig" then
  536. if spell.english == 'Spectral Jig' and buffactive.Sneak then
  537. cast_delay(0.2)
  538. send_command('cancel Sneak')
  539. end
  540. --equip(set.Jig)
  541. end
  542. end
  543.  
  544. function midcast(spell,action)
  545. equipSet = {}
  546. if spell.type:endswith('Magic') or spell.type == 'Ninjutsu' or spell.type == "Trust" then
  547. equipSet = sets.Midcast
  548. if string.find(spell.english,'Cur') and spell.english ~= "Cursna" then
  549. if spell.target.name == player.name then
  550. equipSet = equipSet.SelfCure
  551. else
  552. equipSet = equipSet.Cure
  553. end
  554. elseif string.find(spell.english,'na') and spell.english ~= "Cursna" then
  555. equipSet = equipSet.Na
  556. elseif string.find(spell.english,'Bar') then
  557. equipSet = equipSet.Bar
  558. elseif string.find(spell.english,'Utsusemi') then
  559. if spell.english == 'Utsusemi: Ichi' and (buffactive['Copy Image'] or buffactive['Copy Image (2)']) then
  560. send_command('@wait 1.7;cancel Copy Image*')
  561. end
  562. equipSet = sets.DT
  563. else
  564. if equipSet[spell.english] then
  565. equipSet = equipSet[spell.english]
  566. if spell.english == "Cursna" and spell.target.name == player.name then
  567. equipSet = set_combine(equipSet,{ring1="Purity Ring"})
  568. end
  569. end
  570. if equipSet[spell.skill] then
  571. equipSet = equipSet[spell.skill]
  572. end
  573. if equipSet[AccArray[AccIndex]] then
  574. equipSet = equipSet[AccArray[AccIndex]]
  575. end
  576. if sets.Midcast[spell.type] then
  577. equip(sets.Midcast[spell.type])
  578. end
  579. end
  580. elseif spell.type == 'BardSong' then
  581. equip_song_gear(spell)
  582. end
  583. equip(equipSet)
  584. if Harp == 'ON' then
  585. equip(sets.Harp)
  586. end
  587. end
  588.  
  589. --main="Carnwenhan", 50
  590. --neck="Mnbw. Whistle +1", 30
  591. --body="Fili Hongreline +1 +1", 12
  592. --hands="Brioso Cuffs +3 +3", 20
  593. --legs="Inyanga Shalwar", 17
  594. --feet="Brioso Slippers +3 +3", 15
  595. --Gift 5
  596. -- =149
  597.  
  598. --Daurdabla 30 = 279
  599. --Blurred Harp +1 40 = 289
  600.  
  601. --Formula
  602. --{[(Base60 * Duration Gear) + JP20 + CC40]Nitro2}
  603.  
  604. --Blurred Harp +1
  605. --{[(60*2.89)+20+40]2}
  606. --466.8 = 7:46.8
  607.  
  608.  
  609. function aftercast(spell,action)
  610. if not spell.interrupted then
  611. if buffactive.Troubadour and buffactive['Clarion Call'] and spell.english == "Horde Lullaby II" then -- Countdown --
  612. if player.equipment.range == "Blurred Harp +1" then --466.8
  613. send_command('input /t <me> 7:46 Lullaby Duration;wait 406;input /t <me> 7:46 Lullaby Effect: [WEARING OFF IN 60 SEC.];wait 30;input /t <me> 7:46 Lullaby Effect: [WEARING OFF IN 30 SEC.];wait 15;input /t <me> 7:46 Lullaby Effect: [WEARING OFF IN 15 SEC.];wait 10;input /echo 7:46 Lullaby Effect: [WEARING OFF IN 5 SEC.]')
  614. elseif player.equipment.range == "Daurdabla" then --454.8
  615. send_command('input /t <me> 7:34 Lullaby Duration;wait 394;input /t <me> 7:34 Lullaby Effect: [WEARING OFF IN 60 SEC.];wait 30;input /t <me> 7:34 Lullaby Effect: [WEARING OFF IN 30 SEC.];wait 15;input /t <me> 7:34 Lullaby Effect: [WEARING OFF IN 15 SEC.];wait 10;input /echo 7:34 Lullaby Effect: [WEARING OFF IN 5 SEC.]')
  616. end
  617. elseif buffactive.Troubadour and buffactive.Marcato and spell.english == "Horde Lullaby II" then
  618. if player.equipment.range == "Blurred Harp +1" then --406.8
  619. send_command('input /t <me> 6:46 Lullaby Duration;wait 346;input /t <me> 6:46 Lullaby Effect: [WEARING OFF IN 60 SEC.];wait 30;input /t <me> 6:46 Lullaby Effect: [WEARING OFF IN 30 SEC.];wait 15;input /t <me> 6:46 Lullaby Effect: [WEARING OFF IN 15 SEC.];wait 10;input /echo 6:46 Lullaby Effect: [WEARING OFF IN 5 SEC.]')
  620. elseif player.equipment.range == "Daurdabla" then --394.8
  621. send_command('input /t <me> 6:34 Lullaby Duration;wait 334;input /t <me> 6:34 Lullaby Effect: [WEARING OFF IN 60 SEC.];wait 30;input /t <me> 6:34 Lullaby Effect: [WEARING OFF IN 30 SEC.];wait 15;input /t <me> 6:34 Lullaby Effect: [WEARING OFF IN 15 SEC.];wait 10;input /echo 6:34 Lullaby Effect: [WEARING OFF IN 5 SEC.]')
  622. end
  623. elseif buffactive.Troubadour and spell.english == "Horde Lullaby II" then
  624. if player.equipment.range == "Blurred Harp +1" then --
  625. send_command('input /t <me> 6:26 Lullaby Duration;wait 326;input /t <me> 6:26 Lullaby Effect: [WEARING OFF IN 60 SEC.];wait 30;input /t <me> 6:26 Lullaby Effect: [WEARING OFF IN 30 SEC.];wait 15;input /t <me> 6:26 Lullaby Effect: [WEARING OFF IN 15 SEC.];wait 10;input /echo 6:26 Lullaby Effect: [WEARING OFF IN 5 SEC.]')
  626. elseif player.equipment.range == "Daurdabla" then --
  627. send_command('input /t <me> 6:14 Lullaby Duration;wait 314;input /t <me> 6:14 Lullaby Effect: [WEARING OFF IN 60 SEC.];wait 30;input /t <me> 6:14 Lullaby Effect: [WEARING OFF IN 30 SEC.];wait 15;input /t <me> 6:14 Lullaby Effect: [WEARING OFF IN 15 SEC.];wait 10;input /echo 6:14 Lullaby Effect: [WEARING OFF IN 5 SEC.]')
  628. end
  629. elseif spell.english == "Horde Lullaby II" then --MACC Gear 270
  630. if player.equipment.range == "Blurred Harp +1" then --182
  631. send_command('input /t <me> 3:02 Lullaby Duration;wait 122;input /t <me> 3:02 Lullaby Effect: [WEARING OFF IN 60 SEC.];wait 30;input /t <me> 3:02 Lullaby Effect: [WEARING OFF IN 30 SEC.];wait 15;input /t <me> 3:02 Lullaby Effect: [WEARING OFF IN 15 SEC.];wait 10;input /echo 3:02 Lullaby Effect: [WEARING OFF IN 5 SEC.]')
  632. elseif player.equipment.range == "Daurdabla" then --176
  633. send_command('input /t <me> 2:56 Lullaby Duration;wait 116;input /t <me> 2:56 Lullaby Effect: [WEARING OFF IN 60 SEC.];wait 30;input /t <me> 2:56 Lullaby Effect: [WEARING OFF IN 30 SEC.];wait 15;input /t <me> 2:56 Lullaby Effect: [WEARING OFF IN 15 SEC.];wait 10;input /echo 2:56 Lullaby Effect: [WEARING OFF IN 5 SEC.]')
  634. end
  635. end
  636. end
  637. status_change(player.status)
  638. end
  639.  
  640. function status_change(new,old)
  641. check_equip_lock()
  642. if Armor == 'DT' then
  643. equip(sets.DT)
  644. elseif Armor == 'MEVA' then
  645. equip(sets.MEVA)
  646. elseif new == 'Engaged' then
  647. equipSet = sets.TP
  648. if equipSet[player.sub_job] then
  649. equipSet = equipSet[player.sub_job]
  650. end
  651. if equipSet[AccArray[AccIndex]] then
  652. equipSet = equipSet[AccArray[AccIndex]]
  653. end
  654. equip(equipSet)
  655. elseif new == 'Idle' then
  656. equip(sets.Idle[IdleArray[IdleIndex]])
  657. if world.area:endswith('Adoulin') then
  658. equip({body="Councilor's Garb"})
  659. end
  660. elseif new == 'Resting' then
  661. equip(sets.Resting)
  662. end
  663. end
  664.  
  665. function buff_change(buff,gain)
  666. buff = string.lower(buff)
  667. if buff == "aftermath: lv.3" then -- AM3 Timer --
  668. if gain then
  669. 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.]')
  670. else
  671. send_command('timers delete "Aftermath: Lv.3"')
  672. add_to_chat(123,'AM3: [OFF]')
  673. end
  674. elseif buff == 'weakness' then -- Weakness Timer --
  675. if gain then
  676. send_command('timers create "Weakness" 300 up')
  677. else
  678. send_command('timers delete "Weakness"')
  679. end
  680. end
  681. if not midaction() then
  682. status_change(player.status)
  683. end
  684. end
  685.  
  686. -- In Game: //gs c (command), Macro: /console gs c (command), Bind: gs c (command) --
  687. function self_command(command)
  688. if command == 'C16' then -- Daurdabla Toggle --
  689. if Harp == 'ON' then
  690. Harp = 'OFF'
  691. add_to_chat(123,'Daurdabla: [Unlocked]')
  692. else
  693. Harp = 'ON'
  694. add_to_chat(158,'Daurdabla: [Locked]')
  695. end
  696. status_change(player.status)
  697. elseif command == 'C17' then -- Accuracy Level Toggle --
  698. AccIndex = (AccIndex % #AccArray) + 1
  699. status_change(player.status)
  700. add_to_chat(158,'Accuracy Level: ' .. AccArray[AccIndex])
  701. elseif command == 'C7' then -- DT Toggle --
  702. if Armor == 'DT' then
  703. Armor = 'None'
  704. add_to_chat(123,'DT Set: [Unlocked]')
  705. else
  706. Armor = 'DT'
  707. add_to_chat(158,'DT Set: [Locked]')
  708. end
  709. status_change(player.status)
  710. elseif command == 'C15' then -- MEVA Toggle --
  711. if Armor == 'MEVA' then
  712. Armor = 'None'
  713. add_to_chat(123,'MEVA Set: [Unlocked]')
  714. else
  715. Armor = 'MEVA'
  716. add_to_chat(158,'MEVA Set: [Locked]')
  717. end
  718. status_change(player.status)
  719. elseif command == 'C6' then -- Idle Toggle --
  720. IdleIndex = (IdleIndex % #IdleArray) + 1
  721. add_to_chat(158,'Idle Set: '..IdleArray[IdleIndex])
  722. status_change(player.status)
  723. elseif command:match('^SC%d$') then
  724. send_command('//' .. sc_map[command])
  725. end
  726. end
  727.  
  728. --Stops the appropriate slot from changing when "" is equiped
  729. function check_equip_lock()
  730. if
  731. player.equipment.left_ring == "Warp Ring" or
  732. player.equipment.left_ring == "Capacity Ring" or
  733. player.equipment.left_ring == "Facility Ring" or
  734. player.equipment.left_ring == "Vocation Ring" or
  735. player.equipment.left_ring == "Emperor Band" or
  736. player.equipment.left_ring == "Duodec. Ring" or
  737. player.equipment.left_ring == "Trizek Ring" or
  738. player.equipment.left_ring == "Echad Ring" then
  739. disable('ring1')
  740. else
  741. enable('ring1')
  742. end
  743. if
  744. player.equipment.right_ring == "Warp Ring" or
  745. player.equipment.right_ring == "Capacity Ring" or
  746. player.equipment.right_ring == "Facility Ring" or
  747. player.equipment.right_ring == "Vocation Ring" or
  748. player.equipment.right_ring == "Emperor Band" or
  749. player.equipment.right_ring == "Duodec. Ring" or
  750. player.equipment.right_ring == "Trizek Ring" or
  751. player.equipment.right_ring == "Echad Ring" then
  752. disable('ring2')
  753. else
  754. enable('ring2')
  755. end
  756. end
  757.  
  758. function equip_song_gear(spell)
  759. if DaurdSongs:contains(spell.english) then
  760. equip(sets.Midcast.Daurdabla)
  761. add_to_chat(158,'Daurdabla: [ON]')
  762. else
  763. if spell.target.type == 'MONSTER' then
  764. equip(sets.Midcast.Wind)
  765. if (buffactive['Elemental Seal'] or buffactive['Soul Voice'] or buffactive.Troubadour) then
  766. equip(sets.Midcast.Duration)
  767. end
  768. if string.find(spell.english,'Horde') then
  769. equip{range="Daurdabla"} --Daurdabla or Blurred Harp +1
  770. end
  771. else
  772. equip(sets.Midcast.WindBuff)
  773. if string.find(spell.english,'Ballad') then equip(sets.Midcast.Ballad) end
  774. if string.find(spell.english,'Carol') then equip(sets.Midcast.Carol) end
  775. if string.find(spell.english,'Madrigal') then equip(sets.Midcast.Madrigal) end
  776. if string.find(spell.english,'March') then equip(sets.Midcast.March) end
  777. if spell.english=="Honor March" then equip(set_combine(sets.Midcast.March),{range="Marsyas"}) end
  778. if string.find(spell.english,'Minuet') then equip(sets.Midcast.Minuet) end
  779. if string.find(spell.english,'Paeon') then equip(sets.Midcast.Paeon) end
  780. if string.find(spell.english,'Prelude') then equip(sets.Midcast.Prelude) end
  781. if string.find(spell.english,'Scherzo') then equip(sets.Midcast.Scherzo) end
  782. end
  783. end
  784. end
  785.  
  786.  
  787. function actualCost(originalCost)
  788. if buffactive["Penury"] then
  789. return originalCost*.5
  790. elseif buffactive["Light Arts"] then
  791. return originalCost*.9
  792. else
  793. return originalCost
  794. end
  795. end
  796.  
  797. function degrade_spell(spell,degrade_array)
  798. spell_index = table.find(degrade_array,spell.name)
  799. if spell_index>1 then
  800. new_spell = degrade_array[spell_index - 1]
  801. change_spell(new_spell,spell.target.raw)
  802. add_to_chat(8,spell.name..' Canceled: ['..player.mp..'/'..player.max_mp..'MP::'..player.mpp..'%] Casting '..new_spell..' instead.')
  803. end
  804. end
  805.  
  806. function change_spell(spell_name,target)
  807. cancel_spell()
  808. send_command('//'..spell_name..' '..target)
  809. end
  810.  
  811. function sub_job_change(newSubjob, oldSubjob)
  812. select_default_macro_book()
  813. end
  814.  
  815. function set_macro_page(set,book)
  816. if not tonumber(set) then
  817. add_to_chat(123,'Error setting macro page: Set is not a valid number ('..tostring(set)..').')
  818. return
  819. end
  820. if set < 1 or set > 10 then
  821. add_to_chat(123,'Error setting macro page: Macro set ('..tostring(set)..') must be between 1 and 10.')
  822. return
  823. end
  824.  
  825. if book then
  826. if not tonumber(book) then
  827. add_to_chat(123,'Error setting macro page: book is not a valid number ('..tostring(book)..').')
  828. return
  829. end
  830. if book < 1 or book > 20 then
  831. add_to_chat(123,'Error setting macro page: Macro book ('..tostring(book)..') must be between 1 and 20.')
  832. return
  833. end
  834. send_command('@input /macro book '..tostring(book)..';wait .1;input /macro set '..tostring(set))
  835. else
  836. send_command('@input /macro set '..tostring(set))
  837. end
  838. end
  839.  
  840. function select_default_macro_book()
  841. -- Default macro set/book
  842. if player.sub_job == 'WHM' then
  843. set_macro_page(1, 2)
  844. elseif player.sub_job == 'BLM' then
  845. set_macro_page(1, 2)
  846. else
  847. set_macro_page(1, 2)
  848. end
  849.  
  850. include('organizer-lib')
  851. end
Advertisement
Add Comment
Please, Sign In to add comment