Advertisement
Guest User

Untitled

a guest
Sep 21st, 2015
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 23.89 KB | None | 0 0
  1. -------------------------------------------------------------------------------------------------------------------
  2. -- Setup functions for this job. Generally should not be modified. //gs showswaps
  3. -------------------------------------------------------------------------------------------------------------------
  4.  
  5. -- Initialization function for this job file.
  6. function get_sets()
  7. mote_include_version = 2
  8.  
  9. -- Load and initialize the include file.
  10. include('Mote-Include.lua')
  11. end
  12.  
  13. -- Setup vars that are user-independent. state.Buff vars initialized here will automatically be tracked.
  14. function job_setup()
  15. indi_timer = ''
  16. indi_duration = 180
  17. end
  18.  
  19. -------------------------------------------------------------------------------------------------------------------
  20. -- User setup functions for this job. Recommend that these be overridden in a sidecar file.
  21. -------------------------------------------------------------------------------------------------------------------
  22.  
  23. -- Setup vars that are user-dependent. Can override this function in a sidecar file.
  24. function user_setup()
  25. state.OffenseMode:options('None','Normal')
  26. state.CastingMode:options('Normal','ConserveMP','MagicBurst')
  27. state.IdleMode:options('Normal')
  28. state.PhysicalDefenseMode:options('PDT','Pet')
  29.  
  30. send_command('bind ^q gs c cycle CastingMode')
  31. send_command('bind ^h input /ma Haste <me>')
  32. send_command('bind ^, input /ma Blink <me>')
  33. send_command('bind ^. input /ma Stoneskin <me>')
  34. send_command('bind ^/ input /ma Phalanx <me>')
  35. send_command('bind ^c input /ma "Cure IV" <me>')
  36. send_command('bind ^d input /ma "Diaga" <t>')
  37. send_command('bind ^g input /ma Gravity <t>')
  38. send_command('bind ^b input /ma Bind <t>')
  39. send_command('bind ^s input /ma "Sleep II" <t>')
  40. send_command('bind ^a input /ma Aquaveil <me>')
  41. send_command('bind ^n input /ma "Thunder II" <t>')
  42. send_command('bind !n input /ma "Blizzard II" <t>')
  43. end
  44.  
  45.  
  46.  
  47. -- Define sets and vars used by this job file.
  48. function init_gear_sets()
  49. gear.FastCastJacket = {name="Helios Jacket", augments={'Mag. Acc.+25','"Fast Cast"+5',}}
  50. gear.NukingHands = {name="Helios Gloves", augments={'Mag. Acc.+20 "Mag.Atk.Bns."+20','"Occult Acumen"+10','Magic burst mdg.+10%',}}
  51. gear.NukingBoots = {name="Helios Boots", augments={'Mag. Acc.+19 "Mag.Atk.Bns."+19','"Occult Acumen"+9','Magic burst mdg.+10%',}}
  52. gear.DrainBody = {name="Helios Jacket", augments={'Evasion+18','"Drain" and "Aspir" potency +10',}}
  53. gear.DrainHands = {name="Helios Gloves", augments={'Mag. Acc.+7','"Drain" and "Aspir" potency +10','AGI+7',}}
  54. gear.DrainLegs = {name="Helios Spats", augments={'Evasion+4','"Drain" and "Aspir" potency +9',}}
  55. gear.DrainFeet = {name="Helios Boots", augments={'Mag. Evasion+22','"Drain" and "Aspir" potency +8',}}
  56. gear.CuringHands = {name="Telchine Gloves", augments={'Rng.Acc.+6','"Cure" potency +7%','Enh. Mag. eff. dur. +7',}}
  57. gear.CMPHands = {name="Telchine Gloves", augments={'Accuracy+14 Attack+14','System: 1 ID: 356 Val: 5',}}
  58. gear.CMPLegs = {name="Telchine Braconi", augments={'Accuracy+7','System: 1 ID: 356 Val: 6',}}
  59. gear.CMPFeet = {name="Telchine Pigaches", augments={'Attack+10','System: 1 ID: 356 Val: 5',}}
  60. gear.PetRegenBody = {name="Telchine Chasuble", augments={'Pet: DEF+7','Pet: "Regen"+3',}}
  61. gear.PetRegenLegs = {name="Telchine Braconi", augments={'Pet: Evasion+5','Pet: "Regen"+3',}}
  62. gear.RegenBody = {name="Telchine Chasuble", augments={'Pet: "Mag.Atk.Bns."+18','"Conserve MP"+3','Enh. Mag. eff. dur. +8',}}
  63. gear.FCHands = {name="Telchine Gloves", augments={'"Fast Cast"+4',}}
  64.  
  65. --------------------------------------
  66. -- Start defining the sets
  67. --------------------------------------
  68.  
  69. -- Obi --
  70. sets['Lightning'] = {waist="Hachirin-no-Obi"}
  71. sets['Ice'] = {waist="Hachirin-no-Obi"}
  72. sets['Water'] = {waist="Hachirin-no-Obi"}
  73. sets['Fire'] = {waist="Hachirin-no-Obi"}
  74. sets['Earth'] = {waist="Hachirin-no-Obi"}
  75. sets['Wind'] = {waist="Hachirin-no-Obi"}
  76. sets['Light'] = {waist="Hachirin-no-Obi"}
  77. sets['Dark'] = {waist="Hachirin-no-Obi"}
  78.  
  79. gear.default.obi_waist = "Eschan Stone"
  80. --------------------------------------
  81. -- Precast sets
  82. --------------------------------------
  83.  
  84. -- Precast sets to enhance JAs
  85. sets.precast.JA['Bolster'] = {body="Bagua Tunic +1"}
  86. sets.precast.JA['Life Cycle'] = {body="Geomancy Tunic +1"}
  87. sets.precast.JA['Radial Arcana'] = {feet="Bagua Sandals +1"}
  88. sets.precast.JA['Mending Halation'] = {legs="Bagua Pants +1"}
  89. sets.precast.JA['Collimated Fervor'] = {head="Bagua Galero +1"}
  90. sets.precast.JA['Full Circle'] = {head="Azimuth Hood +1", hands="Bagua Mitaines +1"}
  91.  
  92.  
  93. -- Fast cast sets for spells
  94.  
  95. sets.precast.FC = {main="Lehbrailg +2",
  96. sub="Willpower Grip",
  97. head="Vanya Hood",
  98. neck="Orunmila's Torque",
  99. ear1="Enchanter Earring +1",
  100. ear2="Loquacious Earring",
  101. body="Anhur Robe",
  102. hands=gear.FCHands,
  103. ring1="Weather. Ring",
  104. ring2="Prolix Ring",
  105. back="Lifestream Cape",
  106. waist="Witful Belt",
  107. legs="Geomancy Pants +1",
  108. range="Dunna",
  109. feet="Regal Pumps +1"}
  110.  
  111. sets.precast.FC.Cure = set_combine(sets.precast.FC, {back="Pahtli Cape"})
  112. sets.precast.FC['Impact'] = set_combine(sets.precast.FC, {body="Twilight Cloak"})
  113. sets.precast.FC['Elemental Magic'] = set_combine(sets.precast.FC, {hands="Bagua Mitaines +1"})
  114. sets.precast.FC['Enhancing Magic'] = set_combine(sets.precast.FC, {waist="Siegel Sash",head="Umuthi Hat"})
  115.  
  116. -- Weaponskill sets
  117. -- Default set for any weaponskill that isn't any more specifically defined
  118. sets.precast.WS = {ranged="Dunna",
  119. head="Geomancy Galero +1",neck="Fotia Gorget",ear1="Zennaroi earring",ear2="Tati Earring",
  120. body="Helios Jacket",hands="Geomancy Mitaines +1",ring1="Rajas Ring",ring2="Leviathan Ring",
  121. back="Buquwik cape",waist="Fotia belt",legs="Telchine braconi",feet="Battlecast gaiters"}
  122.  
  123. -- Specific weaponskill sets. Uses the base set if an appropriate WSMod version isn't found.
  124.  
  125. sets.precast.WS['Hexa Strike']= {
  126. head="Telchine Cap",neck="Fotia Gorget",ear1="Genmei Earring",ear2="Merman's Earring",
  127. body="Onca Suit",hands=empty,ring1="Rajas Ring",ring2="Candent Ring",
  128. back="Rancorous mantle",waist="Fotia belt",legs=empty,feet=empty}
  129.  
  130. sets.precast.WS['Exudation']= {
  131. head="Telchine Cap",neck="Fotia Gorget",ear1="Genmei Earring",ear2="Merman's Earring",
  132. body="Onca Suit",hands=empty,ring1="Shiva Ring +1",ring2="Shiva Ring +1",
  133. back="Toro Cape",waist="Fotia belt",legs=empty,feet=empty}
  134.  
  135. sets.precast.WS['Realmrazer'] = {
  136. head="Telchine Cap",neck="Fotia Gorget",ear1="Genmei Earring",ear2="Merman's Earring",
  137. body="Onca Suit",hands=empty,ring1="Patricius Ring",ring2="Globidonta Ring",
  138. back="Rancorous mantle",waist="Fotia belt",legs=empty,feet=empty}
  139.  
  140. sets.precast.WS['Flash Nova'] = {
  141. head="Helios Band",neck="Saevus Pendant +1",ear1="Friomisi Earring",ear2="Barkarole Earring",
  142. body="Amalric Doublet +1",hands=gear.NukingHands,ring1="Shiva Ring +1",ring2="Shiva Ring +1",
  143. back="Toro Cape",waist="Eschan Stone",legs="Hagondes Pants +1",feet=gear.NukingBoots}
  144.  
  145. sets.precast.WS['Retribution'] = {
  146. head="Geomancy galero +1",neck="Fortia Gorget",ear1="Zennaroi earring",ear2="tati Earring",
  147. body="Helios Jacket",hands="Geomancy mitaines +1",ring1="Rajas Ring",ring2="Leviathan Ring",
  148. back="Buquwik cape",waist="Fotia belt",legs="Telchine braconi",feet="Battlecast gaiters"}
  149.  
  150. sets.precast.WS['Spirit Taker'] = {
  151. head="Buremte hat",neck="Imbodla necklace",ear1="Friomisi Earring",ear2="Hecate's Earring",
  152. body="Helios Jacket",hands="Geomancy mitaines +1",ring1="Shiva Ring +1",ring2="Shiva Ring +1",
  153. back="Toro cape",waist="Sekhmet Corset",legs="Telchine braconi",feet="Helios boots"}
  154.  
  155. sets.precast.WS['Shattersoul'] = {
  156. head="Buremte hat",neck="Asperity necklace",ear1="Bladeborn Earring",ear2="Steelflash Earring",
  157. body="Helios Jacket",hands="Geomancy mitaines +1",ring1="Shiva Ring +1",ring2="Shiva Ring +1",
  158. back="Buqywik cape",waist="Cetl belt",legs="Telchine braconi",feet="Battlecast gaiters"}
  159.  
  160.  
  161. sets.precast.WS['Starlight'] = {ear2="Moonshade Earring"}
  162.  
  163. sets.precast.WS['Moonlight'] = {ear2="Moonshade Earring"}
  164.  
  165.  
  166. --------------------------------------
  167. -- Midcast sets
  168. --------------------------------------
  169.  
  170. -- Base fast recast for spells
  171. sets.midcast.FastRecast = {
  172. main="Terra's Staff",
  173. sub="Benthos Grip",
  174. head="Vanya Hood",
  175. ear1="Enhanter Earring +1",
  176. ear2="Loquacious Earring",
  177. body=gear.FastCastJacket,
  178. ring1="Weather. Ring",
  179. ring2="Prolix Ring",
  180. back="Lifestream cape",
  181. waist="Witful Belt",
  182. ammo="Sapience Orb",
  183. legs="Geomancy Pants +1",
  184. feet="Regal Pumps +1"}
  185.  
  186. sets.midcast['Enfeebling Magic'] = {ammo="Hydrocera",
  187. main="Lehbrailg +2",
  188. sub="Benthos Grip",
  189. head="Vanya Hood",
  190. neck="Imbodla Necklace",
  191. ear1="Enchanter Earring +1",
  192. ear2="Barkarole Earring",
  193. body="Vanya Robe",
  194. hands="Lurid Mitts",
  195. ring1="Weather. Ring",
  196. ring2="Vertigo Ring",
  197. back="Ogapepo Cape +1",
  198. waist="Ovate Rope",
  199. legs="Psycloth Lappas",
  200. feet="Medium's Sabots"}
  201.  
  202. sets.midcast['Impact'] = {ammo="Hydrocera",
  203. main="Lehbrailg +2",
  204. sub="Benthos Grip",
  205. body="Twilight Cloak",
  206. back="Ogapepo Cape +1",
  207. neck="Voltsurge Torque",
  208. hands="Lurid Mitts",
  209. waist="Ovate Rope",
  210. ear1="Gifted Earring",
  211. ear2="Gwati Earring",
  212. ring1="Weather. Ring",
  213. ring2="Vertigo Ring",
  214. legs="Psycloth Lappas",
  215. feet="Medium's Sabots"}
  216.  
  217. sets.midcast['Elemental Magic'] = {ammo="Ghastly Tathlum +1",
  218. main="Lehbrailg +2",
  219. sub="Willpower Grip",
  220. head="Welkin Crown",
  221. neck="Saevus Pendant +1",
  222. ear1="Friomisi Earring",
  223. ear2="Barkarole Earring",
  224. body="Amalric Doublet +1",
  225. hands=gear.NukingHands,
  226. ring1="Shiva Ring +1",
  227. ring2="Shiva Ring +1",
  228. back="Toro Cape",
  229. waist=gear.ElementalObi,
  230. legs="Hagondes Pants +1",
  231. feet=gear.NukingBoots}
  232.  
  233. sets.midcast['Elemental Magic'].ConserveMP = {ammo="Ghastly Tathlum +1",
  234. main="Lehbrailg +2",
  235. sub="Willpower Grip",
  236. head="Helios Band",
  237. neck="Saevus Pendant +1",
  238. ear1="Friomisi Earring",
  239. ear2="Barkarole Earring",
  240. body="Seidr Cotehardie",
  241. hands=gear.NukingHands,
  242. ring1="Shiva Ring +1",
  243. ring2="Shiva Ring +1",
  244. back="Toro Cape",
  245. waist=gear.ElementalObi,
  246. legs="Hagondes Pants +1",
  247. feet=gear.NukingBoots}
  248.  
  249. sets.magic_burst = {head="Helios Band",neck="Mizu. Kubikazari",body="Amalric Doublet +1",right_ring="Mujin Band",feet=gear.NukingBoots}
  250.  
  251. sets.midcast['Dark Magic'] = {ammo="Hydrocera",
  252. main="Rubicundity",
  253. sub="Chanter's Shield",
  254. head="Bagua Galero +1",
  255. neck="Aesir Torque",
  256. ear1="Hirudinea Earring",
  257. ear2="Loquacious Earring",
  258. body="Geomancy Tunic +1",
  259. hands=gear.DrainHands,
  260. ring1="Evanescence Ring",
  261. ring2="Archon Ring",
  262. back="Merciful Cape",
  263. waist="Fucho-no-obi",
  264. legs="Azimuth Tights +1",
  265. feet=gear.DrainFeet,}
  266.  
  267. sets.midcast['Dark Magic']['Stun'] = {ammo="Hasty Pinion +1",
  268. main="Lehbrailg +2",
  269. sub="Benthos Grip",
  270. head="Vanya Hood",
  271. neck="Voltsurge Torque",
  272. ear1="Enhanter Earring +1",
  273. ear2="Loquacious Earring",
  274. body=gear.FastCastJacket,
  275. hands="Hagondes Cuffs +1",
  276. ring1="Weather. Ring",
  277. ring2="Prolix Ring",
  278. back="Lifestream Cape",
  279. waist="Witful Belt",
  280. legs="Geomancy Pants +1",
  281. feet="Regal Pumps +1"}
  282.  
  283. --------------------------------
  284. ---------Geomancy 848-----------
  285. --------------------------------
  286. sets.midcast.Geomancy = {range="Dunna",
  287. main="Idris",
  288. sub="Genmei Shield",
  289. head="Azimuth Hood +1",
  290. neck="Reti Pendant",
  291. ear1="Gifted Earring",
  292. ear2="Calamitous Earring",
  293. body="Bagua Tunic +1",
  294. hands="Geomancy Mitaines +1",
  295. ring1="Defending Ring",
  296. ring2="Dark Ring",
  297. back="Lifestream Cape",
  298. waist="Austerity belt +1",
  299. legs="Vanya Slops",
  300. feet="Medium's Sabots"}
  301.  
  302. sets.midcast.Geomancy.Indi = set_combine(sets.midcast.Geomancy,{legs="Bagua Pants +1",feet="Azimuth Gaiters +1"})
  303.  
  304. sets.midcast.Cure = {main="Tamaxchi",
  305. ammo="Sapience Orb",
  306. head="Vanya Hood",
  307. neck="Colossus's Torque",
  308. ear1="Gifted Earring",
  309. ear2="Beatific Earring",
  310. body="Heka's Kalasiris",
  311. hands=gear.CuringHands,
  312. ring1="Haoma's Ring",
  313. ring2="Haoma's Ring",
  314. back="Fi Follet Cape +1",
  315. waist="Austerity Belt",
  316. legs="Geomancy Pants +1",
  317. feet="Regal Pumps +1",
  318. sub="Genmei Shield"}
  319.  
  320. sets.midcast.Cure.ConserveMP = {main="Tamaxchi",
  321. ammo="Hasty Pinion +1",
  322. head="Vanya Hood",
  323. neck="Phalaina Locket",
  324. ear1="Mendi. Earring",
  325. ear2="Beatific Earring",
  326. body="Heka's Kalasiris",
  327. hands=gear.CMPHands,
  328. ring1="Lebeche Ring",
  329. ring2="Haoma's Ring",
  330. back="Oretania's Cape +1",
  331. waist="Gishdubar Sash",
  332. legs=gear.CMPLegs,
  333. feet=gear.CMPFeet,
  334. sub="Genmei Shield"}
  335.  
  336. sets.midcast.Curaga = sets.midcast.Cure
  337. sets.midcast.Protect = {ring1="Sheltered Ring"}
  338. sets.midcast.Protectra = {ring1="Sheltered Ring"}
  339. sets.midcast.Shell = {ring1="Sheltered Ring"}
  340. sets.midcast.Shellra = {ring1="Sheltered Ring"}
  341. sets.midcast.Cursna = {ring1="Haoma's Ring",
  342. neck="Debilis Medallion",
  343. hands="Hieros Mittens",
  344. ring2="Haoma's Ring",}
  345.  
  346. sets.midcast['Enhancing Magic'] = {main="Kirin's Pole",
  347. sub="Fulcio Grip",
  348. ammo="Sapience Orb",
  349. head="Befouled Crown",
  350. neck="Colossus's Torque",
  351. ear1="Gifted Earring",
  352. ear2="Calamitous Earring",
  353. body=gear.RegenBody,
  354. hands=gear.FCHands,
  355. ring1="Defending Ring",
  356. ring2="Dark Ring",
  357. back="Fi Follet Cape +1",
  358. waist="Cascade Belt",
  359. legs="Shedir Seraweels",
  360. feet="Regal Pumps +1"}
  361.  
  362. sets.midcast.Refresh = {waist="Gishdubar Sash",feet="Inspirited Boots"}
  363. sets.midcast.Aquaveil = {legs="Shedir Seraweels",waist="Emphatikos Rope",main="Vadose Rod",sub="Genmei Shield"}
  364.  
  365. sets.midcast.Regen = set_combine(sets.precast.FC,{main="Bolelabunga",body=gear.RegenBody})
  366.  
  367. sets.midcast['Drain'] = {main="Rubicundity",
  368. sub="Chanter's Shield",
  369. ammo="Sapience Orb",
  370. head="Bagua Galero +1",
  371. neck="Aesir Torque",
  372. ear1="Hirudinea Earring",
  373. ear2="Abyssal Earring",
  374. body="Psycloth Vest",
  375. hands=gear.DrainHands,
  376. ring1="Evanescence Ring",
  377. ring2="Archon Ring",
  378. back="Merciful Cape",
  379. waist="Fucho-no-obi",
  380. legs="Azimuth Tights +1",
  381. feet=gear.DrainFeet,}
  382.  
  383. sets.midcast.Aspir = sets.midcast.Drain
  384. sets.midcast['Aspir II'] = sets.midcast.Drain
  385. sets.midcast['Aspir III'] = sets.midcast.Drain
  386.  
  387.  
  388.  
  389. --------------------------------------
  390. -- Idle/resting/defense/etc sets
  391. --------------------------------------
  392.  
  393. -- Idle sets
  394.  
  395. sets.idle = {range="Dunna",
  396. main="Bolelabunga",
  397. sub="Genmei Shield",
  398. neck="Bathy Choker +1",
  399. ear1="Etiolation Earring",
  400. ear2="Infused Earring",
  401. head="Spurrina Coif",
  402. body="Amalric Doublet +1",
  403. hands="Bagua Mitaines +1",
  404. ring1="Paguroidea Ring",
  405. ring2="Sheltered Ring",
  406. back="Mecistopins Mantle",
  407. waist="Fucho-no-obi",
  408. legs="Assiduity Pants +1",
  409. feet="Geomancy Sandals +1"}
  410.  
  411. sets.idle.PDT = {ammo="Brigantia Pebble",
  412. main="Terra's Staff",
  413. sub="Willpower Grip",
  414. head="Hagondes Hat +1",
  415. neck="Twilight Torque",
  416. ear1="Impregnable Earring",
  417. ear2="Genmei Earring",
  418. body="Hagondes Coat +1",
  419. hands="Geomancy Mitaines +1",
  420. ring1="Defending Ring",
  421. ring2="Dark Ring",
  422. back="Umbra Cape",
  423. waist="Isa Belt",
  424. legs="Geomancy Pants +1",
  425. feet="Geomancy Sandals +1"}
  426.  
  427. sets.idle.MDT = {ammo="Vanir Battery",
  428. main="Lehbrailg +2",
  429. sub="Vallus Grip",
  430. head="Vanya Hood",
  431. neck="Warder's Charm +1",
  432. ear1="Etiolation Earring",
  433. ear2="Merman's Earring",
  434. body="Hagondes Coat +1",
  435. hands="Geomancy Mitaines +1",
  436. ring1="Defending Ring",
  437. ring2="Shadow Ring",
  438. back="Tuilha Cape",
  439. waist="Isa Belt",
  440. legs="Mes'yohi Slacks",
  441. feet="Bagua Sandals +1"}
  442.  
  443. sets.Kiting = {feet="Geo. Sandals +1"}
  444.  
  445. -- .Pet sets are for when Luopan is present.
  446.  
  447. -- .Indi sets are for when an Indi-spell is active.
  448.  
  449. -- Defense sets
  450.  
  451. sets.defense.PDT = {ammo="Brigantia Pebble",
  452. main="Terra's Staff",
  453. sub="Willpower Grip",
  454. head="Hagondes Hat +1",
  455. neck="Twilight Torque",
  456. ear1="Impregnable Earring",
  457. ear2="Genmei Earring",
  458. body="Hagondes Coat +1",
  459. hands="Geomancy Mitaines +1",
  460. ring1="Defending Ring",
  461. ring2="Dark Ring",
  462. back="Umbra Cape",
  463. waist="Isa Belt",
  464. legs="Geomancy Pants +1",
  465. feet="Geomancy Sandals +1"}
  466.  
  467. sets.defense.Pet = {ranged="Dunna",
  468. main="Idris",
  469. sub="Genmei Shield",
  470. head="Azimuth Hood +1",
  471. neck="Twilight Torque",
  472. ear1="Impregnable Earring",
  473. ear2="Genmei Earring",
  474. body=gear.PetRegenBody,
  475. hands="Geomancy Mitaines +1",
  476. ring1="Defending Ring",
  477. ring2="Dark Ring",
  478. back="Umbra Cape",
  479. waist="Isa Belt",
  480. legs=gear.PetRegenLegs,
  481. feet="Bagua Sandals +1"}
  482. --------------------------------------
  483. -- Engaged sets
  484. --------------------------------------
  485.  
  486. -- Variations for TP weapon and (optional) offense/defense modes. Code will fall back on previous
  487. -- sets if more refined versions aren't defined.
  488. -- If you create a set with both offense and defense modes, the offense mode should be first.
  489. -- EG: sets.engaged.Dagger.Accuracy.Evasion Nehushtan Trial wand
  490.  
  491. -- Normal melee group
  492. sets.engaged = {ranged="Dunna",
  493. main="Idris",sub="Divinity", ranged="Dunna",
  494. head="Telchine Cap",neck="Asperity Necklace",ear1="Heartseeker Earring",ear2="Dudgeon Earring",
  495. body="Onca Suit",hands=empty,ring1="Rajas Ring",ring2="Defending Ring",
  496. back="Rancorous Mantle",waist="Windbuffet Belt +1",legs=empty,feet=empty}
  497. --------------------------------------
  498. -- Custom buff sets
  499. --------------------------------------
  500.  
  501. end
  502.  
  503. LowNukes = S{'Stone', 'Water', 'Aero', 'Fire', 'Blizzard', 'Thunder',
  504. 'Stone II', 'Water II', 'Aero II', 'Fire II', 'Blizzard II', 'Thunder II',
  505. 'Stonega', 'Waterga', 'Aeroga', 'Firaga', 'Blizzaga', 'Thundaga',}
  506. -------------------------------------------------------------------------------------------------------------------
  507. -- Job-specific hooks for standard casting events.
  508. -------------------------------------------------------------------------------------------------------------------
  509.  
  510. function job_aftercast(spell, action, spellMap, eventArgs)
  511. if not spell.interrupted then
  512. if spell.english:startswith('Indi') then
  513. if not classes.CustomIdleGroups:contains('Indi') then
  514. classes.CustomIdleGroups:append('Indi')
  515. end
  516. send_command('@timers d "'..indi_timer..'"')
  517. indi_timer = spell.english
  518. send_command('@timers c "'..indi_timer..'" '..indi_duration..' down spells/00136.png')
  519. elseif spell.english == 'Sleep' or spell.english == 'Sleepga' then
  520. send_command('@timers c "'..spell.english..' ['..spell.target.name..']" 60 down spells/00220.png')
  521. elseif spell.english == 'Sleep II' or spell.english == 'Sleepga II' then
  522. send_command('@timers c "'..spell.english..' ['..spell.target.name..']" 90 down spells/00220.png')
  523. end
  524. elseif not player.indi then
  525. classes.CustomIdleGroups:clear()
  526. end
  527. end
  528. if buff == "aftermath: lv.1" then -- AM1 Timer/Countdown --
  529. if gain then
  530. 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.]')
  531. else
  532. send_command('timers delete "Aftermath: Lv.1"')
  533. add_to_chat(123,'AM1: [OFF]')
  534. end
  535. elseif buff == "aftermath: lv.2" then -- AM2 Timer/Countdown --
  536. if gain then
  537. 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.]')
  538. else
  539. send_command('timers delete "Aftermath: Lv.2"')
  540. add_to_chat(123,'AM2: [OFF]')
  541. end
  542. elseif buff == "aftermath: lv.3" then -- AM3 Timer/Countdown --
  543. if gain then
  544. 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.]')
  545. else
  546. send_command('timers delete "Aftermath: Lv.3"')
  547. add_to_chat(123,'AM3: [OFF]')
  548. end
  549. end
  550.  
  551. -------------------------------------------------------------------------------------------------------------------
  552. -- Job-specific hooks for non-casting events.
  553. -------------------------------------------------------------------------------------------------------------------
  554.  
  555. -- Called when a player gains or loses a buff.
  556. -- buff == buff gained or lost
  557. -- gain == true if the buff was gained, false if it was lost.
  558. function job_buff_change(buff, gain)
  559. if player.indi and not classes.CustomIdleGroups:contains('Indi')then
  560. classes.CustomIdleGroups:append('Indi')
  561. handle_equipping_gear(player.status)
  562. elseif classes.CustomIdleGroups:contains('Indi') and not player.indi then
  563. classes.CustomIdleGroups:clear()
  564. handle_equipping_gear(player.status)
  565. end
  566. end
  567.  
  568. function job_state_change(stateField, newValue, oldValue)
  569. if stateField == 'Offense Mode' then
  570. if newValue == 'Normal' then
  571. disable('main','sub','range')
  572. else
  573. enable('main','sub','range')
  574. end
  575. end
  576. end
  577.  
  578. -------------------------------------------------------------------------------------------------------------------
  579. -- User code that supplements standard library decisions.
  580. -------------------------------------------------------------------------------------------------------------------
  581.  
  582.  
  583. function job_get_spell_map(spell, default_spell_map)
  584. if spell.action_type == 'Magic' then
  585. if spell.skill == 'Enfeebling Magic' then
  586. if spell.type == 'WhiteMagic' then
  587. return 'MndEnfeebles'
  588. else
  589. return 'IntEnfeebles'
  590. end
  591. elseif spell.skill == 'Geomancy' then
  592. if spell.english:startswith('Indi') then
  593. return 'Indi'
  594. elseif spell.english:startswith('Geo') then
  595. return 'Geo'
  596. end
  597. elseif spell.skill == 'Elemantal Magic' then
  598. if LowNukes:contains(spell.name) then
  599. return 'Low'
  600. end
  601. return
  602. end
  603. elseif spell.skill == 'Dark Magic' then
  604. if spell.english:startswith('Stu') then
  605. return 'Stun'
  606. else
  607. return
  608. end
  609. return
  610. end
  611. end
  612.  
  613.  
  614. function customize_idle_set(idleSet)
  615. if player.mpp < 51 then
  616. idleSet = set_combine(idleSet, sets.latent_refresh)
  617. end
  618. return idleSet
  619. end
  620.  
  621. -- Called by the 'update' self-command.
  622. function job_update(cmdParams, eventArgs)
  623. classes.CustomIdleGroups:clear()
  624. if player.indi then
  625. classes.CustomIdleGroups:append('Indi')
  626. end
  627. end
  628.  
  629. -- Function to display the current relevant user state when doing an update.
  630. function display_current_job_state(eventArgs)
  631. display_current_caster_state()
  632. eventArgs.handled = true
  633. end
  634.  
  635. -------------------------------------------------------------------------------------------------------------------
  636. -- Utility functions specific to this job.
  637. -------------------------------------------------------------------------------------------------------------------
  638.  
  639. -- Select default macro book on initial load or subjob change.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement