Advertisement
Guest User

WAR lua

a guest
Dec 31st, 2017
177
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 25.16 KB | None | 0 0
  1. -- Initialization function for this job file.
  2. function get_sets()
  3. mote_include_version = 2
  4. include('Mote-Include.lua')
  5. end
  6.  
  7. -- //gs debugmode
  8. -- //gs showswaps
  9.  
  10. function binds_on_load()
  11. -- F9-F12
  12. send_command('bind f10 gs c cycle HybridMode')
  13. send_command('bind f11 gs c mainweapon')
  14. send_command('bind f12 gs c update user')
  15.  
  16. -- ALT F9-12
  17. send_command('bind !f10 gs c cycle OffenseMode')
  18. send_command('bind !f11 gs c cycle WeaponskillMode')
  19. send_command('bind !f12 input /ja "Mighty Strikes" <me>; pause 1; input /ja "Brazen Rush" <me>')
  20.  
  21. -- Rest
  22. send_command('bind @1 gs c set mainweapon "Ragnarok"')
  23. send_command('bind @2 gs c set mainweapon "Montante"')
  24. send_command('bind @3 gs c set mainweapon "Svarga"')
  25. send_command('bind @4 gs c set mainweapon "Reikiko"')
  26. send_command('bind @5 gs c set mainweapon "Axe"')
  27. send_command('bind @6 gs c set mainweapon "Club"')
  28. if player.sub_job == 'DNC' then
  29. send_command('bind @7 gs c set mainweapon "SwordDualwield"')
  30. send_command('bind @8 gs c set mainweapon "DaggerDualwield"')
  31. else
  32. send_command('bind @7 gs c set mainweapon "Staff"')
  33. send_command('bind @8 gs c set mainweapon "Dagger"')
  34. end
  35. send_command('bind ` input /target <bt>')
  36. end
  37.  
  38. function job_setup()
  39. state.mainweapon = M{['description'] = 'Main Weapon'}
  40. if player.sub_job == 'DNC' then
  41. state.mainweapon:options('Ragnarok','Montante','Svarga','Reikiko','Axe','Club','SwordDualwield','DaggerDualwield')
  42. else
  43. state.mainweapon:options('Ragnarok','Montante','Svarga','Reikiko','Axe','Club','Staff','Dagger')
  44. end
  45. end
  46.  
  47. function user_setup()
  48. -- Options: Override default values
  49. state.OffenseMode:options('Normal', 'LowAcc', 'MidAcc', 'HighAcc')
  50. state.WeaponskillMode:options('Normal', 'Capped')
  51. state.HybridMode:options('Normal', 'PDT')
  52. state.CastingMode:options('Normal', 'Resistant')
  53. state.IdleMode:options('Normal','PDT')
  54. state.PhysicalDefenseMode:options('PDT', 'MDT')
  55.  
  56. Rag_weapons = S{'Ragnarok'}
  57. Shield_weapons = S{'Blurred Shield +1'}
  58. Svarga_weapons = S{'Svarga'}
  59. Montante_weapons =S{'Montante +1'}
  60. Staff_weapons = S{'Gozuki Mezuki'}
  61. Dualwield_weapons = S{'Reikiko'}
  62. update_combat_form()
  63. select_default_macro_book()
  64. end
  65.  
  66. -- Called when this job file is unloaded (eg: job change)
  67. function file_unload()
  68. if binds_on_unload then
  69. binds_on_unload()
  70. end
  71. end
  72.  
  73. sets.mainweapon = {}
  74. sets.mainweapon.Ragnarok = {
  75. main="Ragnarok",
  76. sub="Utu Grip"
  77. }
  78. sets.mainweapon.Montante = {
  79. main="Montante +1",
  80. sub="Utu Grip"
  81. }
  82. sets.mainweapon.Reikiko = {
  83. main="Reikiko",
  84. sub="Blurred Shield +1"
  85. }
  86. sets.mainweapon.Svarga = {
  87. main={ name="Svarga", augments={'Accuracy+18','"Store TP"+6','DMG:+37',}},
  88. sub="Utu Grip"
  89. }
  90. sets.mainweapon.Staff = {
  91. main="Gozuki Mezuki",
  92. sub="Utu Grip"
  93. }
  94. sets.mainweapon.Axe = {
  95. main="Arasy Tabar +1",
  96. sub="Blurred Shield +1"
  97. }
  98. sets.mainweapon.Club = {
  99. main="Beryllium Mace +1",
  100. sub="Blurred Shield +1"
  101. }
  102. sets.mainweapon.Dagger = {
  103. main="Anathema Harpe +1",
  104. sub="Blurred Shield +1"
  105. }
  106. sets.mainweapon.DaggerDualwield = {
  107. main="Anathema Harpe +1",
  108. sub="Reikiko"
  109. }
  110. sets.mainweapon.SwordDualwield = {
  111. main="Tanmogayi +1",
  112. sub="Reikiko"
  113. }
  114.  
  115. -- Define sets and vars used by this job file.
  116. function init_gear_sets()
  117. -- Precast sets
  118. sets.precast.JA['Berserk'] = {feet="Agoge Calligae +1",body="Pummeler's Lorica +3",back="Cichol's Mantle"}
  119. sets.precast.JA['Warcry'] = {head="Agoge Mask +1"}
  120. sets.precast.JA['Aggressor'] = {body="Agoge Lorica +1"}
  121. sets.precast.JA['Blood Rage'] = {body="Boii Lorica +1"}
  122. sets.precast.JA['Retaliation'] = {}
  123. sets.precast.JA['Restraint'] = {}
  124. sets.precast.JA['Mighty Strikes'] = {hands="Agoge Mufflers +1"}
  125. sets.precast.JA["Warrior's Charge"] = {}
  126. sets.precast.JA['Provoke'] = {}
  127.  
  128. -- Fast cast sets for spells
  129. sets.precast.FC = {}
  130.  
  131. -- Midcast Sets
  132. sets.midcast.FastRecast = {}
  133.  
  134. sets.midcast.Flash = {}
  135.  
  136. -- Resting sets
  137. sets.resting = {}
  138.  
  139. -- Idle sets
  140. sets.idle = {
  141. ammo="Ginsen",
  142. head="Valorous Mask",
  143. body="Sulevia's Plate. +2",
  144. hands="Sulev. Gauntlets +2",
  145. legs="Sulev. Cuisses +2",
  146. feet="Hermes' Sandals",
  147. neck="Loricate Torque +1",
  148. waist="Flume Belt +1",
  149. left_ear="Cessance Earring",
  150. right_ear="Telos Earring",
  151. left_ring="Defending Ring",
  152. right_ring="Gelatinous Ring +1",
  153. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}}
  154. }
  155.  
  156. sets.idle.PDT = {
  157. ammo="Ginsen",
  158. head="Sulevia's Mask +2",
  159. body="Sulevia's Plate. +2",
  160. hands="Sulev. Gauntlets +2",
  161. legs="Sulev. Cuisses +2",
  162. feet="Sulev. Leggings +2",
  163. neck="Loricate Torque +1",
  164. waist="Flume Belt +1",
  165. left_ear="Cessance Earring",
  166. right_ear="Telos Earring",
  167. left_ring="Defending Ring",
  168. right_ring="Gelatinous Ring +1",
  169. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}}
  170. }
  171.  
  172. sets.idle.Town = {
  173. ammo="Seeth. Bomblet +1",
  174. head={ name="Argosy Celata +1", augments={'DEX+12','Accuracy+20','"Dbl.Atk."+3',}},
  175. body={ name="Argosy Hauberk +1", augments={'STR+12','DEX+12','Attack+20',}},
  176. hands={ name="Argosy Mufflers +1", augments={'STR+20','"Dbl.Atk."+3','Haste+3%',}},
  177. legs={ name="Argosy Breeches +1", augments={'STR+12','DEX+12','Attack+20',}},
  178. feet="Hermes' Sandals",
  179. neck="Fotia Gorget",
  180. waist="Fotia Belt",
  181. left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}},
  182. right_ear="Brutal Earring",
  183. left_ring="Regal Ring",
  184. right_ring="Niqmaddu Ring",
  185. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10',}}
  186. }
  187.  
  188. sets.idle.Weak = {
  189. head="Twilight Helm",
  190. body="Twilight Mail"
  191. }
  192.  
  193. -- Ragnarok Sets
  194.  
  195. sets.engaged.Ragnarok = {
  196. ammo="Ginsen",
  197. head="Flam. Zucchetto +2",
  198. body={ name="Valorous Mail", augments={'Accuracy+17 Attack+17','"Store TP"+5','VIT+2','Accuracy+12','Attack+15',}},
  199. hands="Sulev. Gauntlets +2",
  200. legs="Pumm. Cuisses +3",
  201. feet="Pumm. Calligae +3",
  202. neck="Lissome Necklace",
  203. waist="Ioskeha Belt",
  204. left_ear="Cessance Earring",
  205. right_ear="Brutal Earring",
  206. left_ring="Regal Ring",
  207. right_ring="Niqmaddu Ring",
  208. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}}
  209. }
  210.  
  211. sets.engaged.Ragnarok.PDT = {
  212. ammo="Ginsen",
  213. head="Sulevia's Mask +2",
  214. body="Sulevia's Plate. +2",
  215. hands="Sulev. Gauntlets +2",
  216. legs="Sulev. Cuisses +2",
  217. feet="Sulev. Leggings +2",
  218. neck="Loricate Torque +1",
  219. waist="Ioskeha Belt",
  220. left_ear="Cessance Earring",
  221. right_ear="Brutal Earring",
  222. left_ring="Defending Ring",
  223. right_ring="Niqmaddu Ring",
  224. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}}
  225. }
  226.  
  227. sets.engaged.Ragnarok.LowAcc = {}
  228.  
  229. sets.engaged.Ragnarok.LowAcc.PDT = sets.engaged.Ragnarok.PDT
  230.  
  231. sets.engaged.Ragnarok.MidAcc = {}
  232.  
  233. sets.engaged.Ragnarok.MidAcc.PDT = {}
  234.  
  235.  
  236. sets.engaged.Ragnarok.HighAcc = {}
  237.  
  238. sets.engaged.Ragnarok.HighAcc.PDT = sets.engaged.Ragnarok.MidAcc.PDT
  239.  
  240. -- Montante Sets
  241.  
  242. sets.engaged.Montante = {
  243. ammo="Ginsen",
  244. head="Flam. Zucchetto +2",
  245. body={ name="Valorous Mail", augments={'Accuracy+17 Attack+17','"Store TP"+5','VIT+2','Accuracy+12','Attack+15',}},
  246. hands="Sulev. Gauntlets +2",
  247. legs="Pumm. Cuisses +3",
  248. feet="Pumm. Calligae +3",
  249. neck="Lissome Necklace",
  250. waist="Ioskeha Belt",
  251. left_ear="Cessance Earring",
  252. right_ear="Brutal Earring",
  253. left_ring="Regal Ring",
  254. right_ring="Niqmaddu Ring",
  255. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}}
  256. }
  257.  
  258. sets.engaged.Montante.PDT = {
  259. ammo="Ginsen",
  260. head="Sulevia's Mask +2",
  261. body="Sulevia's Plate. +2",
  262. hands="Sulev. Gauntlets +2",
  263. legs="Sulev. Cuisses +2",
  264. feet="Sulev. Leggings +2",
  265. neck="Loricate Torque +1",
  266. waist="Ioskeha Belt",
  267. left_ear="Cessance Earring",
  268. right_ear="Brutal Earring",
  269. left_ring="Defending Ring",
  270. right_ring="Niqmaddu Ring",
  271. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}}
  272. }
  273.  
  274. -- Greataxe Sets
  275. sets.engaged.Svarga = {
  276. ammo="Ginsen",
  277. head="Flam. Zucchetto +2",
  278. body={ name="Valorous Mail", augments={'Accuracy+17 Attack+17','"Store TP"+5','VIT+2','Accuracy+12','Attack+15',}},
  279. hands="Sulev. Gauntlets +2",
  280. legs="Pumm. Cuisses +3",
  281. feet="Pumm. Calligae +3",
  282. neck="Lissome Necklace",
  283. waist="Ioskeha Belt",
  284. left_ear="Cessance Earring",
  285. right_ear="Brutal Earring",
  286. left_ring="Regal Ring",
  287. right_ring="Niqmaddu Ring",
  288. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}}
  289. }
  290.  
  291. sets.engaged.Svarga.PDT = {
  292. ammo="Ginsen",
  293. head="Sulevia's Mask +2",
  294. body="Sulevia's Plate. +2",
  295. hands="Sulev. Gauntlets +2",
  296. legs="Sulev. Cuisses +2",
  297. feet="Sulev. Leggings +2",
  298. neck="Loricate Torque +1",
  299. waist="Ioskeha Belt",
  300. left_ear="Cessance Earring",
  301. right_ear="Telos Earring",
  302. left_ring="Defending Ring",
  303. right_ring="Niqmaddu Ring",
  304. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}}
  305. }
  306.  
  307. -- Staff Sets
  308. sets.engaged.Staff = {
  309. ammo="Ginsen",
  310. head="Flam. Zucchetto +2",
  311. body={ name="Valorous Mail", augments={'Accuracy+17 Attack+17','"Store TP"+5','VIT+2','Accuracy+12','Attack+15',}},
  312. hands="Sulev. Gauntlets +2",
  313. legs="Pumm. Cuisses +3",
  314. feet="Pumm. Calligae +3",
  315. neck="Lissome Necklace",
  316. waist="Ioskeha Belt",
  317. left_ear="Cessance Earring",
  318. right_ear="Brutal Earring",
  319. left_ring="Petrov Ring",
  320. right_ring="Niqmaddu Ring",
  321. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}}
  322. }
  323.  
  324. sets.engaged.Staff.PDT = {
  325. ammo="Ginsen",
  326. head="Sulevia's Mask +2",
  327. body="Sulevia's Plate. +2",
  328. hands="Sulev. Gauntlets +2",
  329. legs="Sulev. Cuisses +2",
  330. feet="Sulev. Leggings +2",
  331. neck="Loricate Torque +1",
  332. waist="Ioskeha Belt",
  333. left_ear="Cessance Earring",
  334. right_ear="Telos Earring",
  335. left_ring="Defending Ring",
  336. right_ring="Niqmaddu Ring",
  337. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}}
  338. }
  339.  
  340. -- Blurred Sets
  341. sets.engaged.Blurred = {
  342. ammo="Ginsen",
  343. head="Flam. Zucchetto +2",
  344. body={ name="Valorous Mail", augments={'Accuracy+17 Attack+17','"Store TP"+5','VIT+2','Accuracy+12','Attack+15',}},
  345. hands="Sulev. Gauntlets +2",
  346. legs="Pumm. Cuisses +3",
  347. feet="Pumm. Calligae +3",
  348. neck="Lissome Necklace",
  349. waist="Ioskeha Belt",
  350. left_ear="Cessance Earring",
  351. right_ear="Telos Earring",
  352. left_ring="Regal Ring",
  353. right_ring="Niqmaddu Ring",
  354. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}}
  355. }
  356.  
  357. sets.engaged.Blurred.PDT = {
  358. ammo="Ginsen",
  359. head="Sulevia's Mask +2",
  360. body="Sulevia's Plate. +2",
  361. hands="Sulev. Gauntlets +2",
  362. legs="Sulev. Cuisses +2",
  363. feet="Sulev. Leggings +2",
  364. neck="Loricate Torque +1",
  365. waist="Ioskeha Belt",
  366. left_ear="Cessance Earring",
  367. right_ear="Telos Earring",
  368. left_ring="Defending Ring",
  369. right_ring="Niqmaddu Ring",
  370. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}}
  371. }
  372.  
  373. --Dual wield sets
  374.  
  375. sets.engaged.Dualwield = {
  376. ammo="Ginsen",
  377. head="Flam. Zucchetto +2",
  378. body={ name="Valorous Mail", augments={'Accuracy+17 Attack+17','"Store TP"+5','VIT+2','Accuracy+12','Attack+15',}},
  379. hands="Sulev. Gauntlets +2",
  380. legs="Pumm. Cuisses +3",
  381. feet="Pumm. Calligae +3",
  382. neck="Lissome Necklace",
  383. waist="Ioskeha Belt",
  384. left_ear="Suppanomimi",
  385. right_ear="Eabani Earring",
  386. left_ring="Regal Ring",
  387. right_ring="Niqmaddu Ring",
  388. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}}
  389. }
  390.  
  391. sets.engaged.Dualwield.PDT = {
  392. ammo="Ginsen",
  393. head="Sulevia's Mask +2",
  394. body="Sulevia's Plate. +2",
  395. hands="Sulev. Gauntlets +2",
  396. legs="Sulev. Cuisses +2",
  397. feet="Sulev. Leggings +2",
  398. neck="Loricate Torque +1",
  399. waist="Ioskeha Belt",
  400. left_ear="Suppanomimi",
  401. right_ear="Eabani Earring",
  402. left_ring="Defending Ring",
  403. right_ring="Niqmaddu Ring",
  404. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10',}}
  405. }
  406.  
  407. -- Weaponskill sets
  408. sets.precast.WS = {
  409. ammo="Knobkierrie",
  410. head={ name="Odyssean Helm", augments={'Accuracy+29','Weapon skill damage +5%','STR+5','Attack+8',}},
  411. body="Pummeler's Lorica +3",
  412. hands={ name="Odyssean Gauntlets", augments={'Accuracy+17 Attack+17','Weapon skill damage +4%','DEX+5','Attack+9',}},
  413. legs={ name="Odyssean Cuisses", augments={'Accuracy+4 Attack+4','Weapon skill damage +5%','STR+6','Accuracy+12','Attack+6',}},
  414. feet="Sulev. Leggings +2",
  415. neck="Fotia Gorget",
  416. waist="Fotia Belt",
  417. left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}},
  418. right_ear="Ishvara Earring",
  419. left_ring="Regal Ring",
  420. right_ring="Niqmaddu Ring",
  421. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}}
  422. }
  423.  
  424. sets.precast.WS.Acc = set_combine(sets.precast.WS, {})
  425.  
  426.  
  427. sets.precast.WS['Resolution'] = {
  428. ammo="Seeth. Bomblet +1",
  429. head={ name="Argosy Celata +1", augments={'DEX+12','Accuracy+20','"Dbl.Atk."+3',}},
  430. body={ name="Argosy Hauberk +1", augments={'STR+12','DEX+12','Attack+20',}},
  431. hands={ name="Argosy Mufflers +1", augments={'STR+20','"Dbl.Atk."+3','Haste+3%',}},
  432. legs={ name="Argosy Breeches +1", augments={'STR+12','DEX+12','Attack+20',}},
  433. feet="Pumm. Calligae +3",
  434. neck="Fotia Gorget",
  435. waist="Fotia Belt",
  436. left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}},
  437. right_ear="Brutal Earring",
  438. left_ring="Regal Ring",
  439. right_ring="Niqmaddu Ring",
  440. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10',}}
  441. }
  442.  
  443. sets.precast.WS['Resolution'].Capped = set_combine(sets.precast.WS['Resolution'], {head="Flam. Zucchetto +2", feet="Flam. Gambieras +2"})
  444.  
  445. sets.precast.WS['Scourge'] = {
  446. ammo="Knobkierrie",
  447. head={ name="Odyssean Helm", augments={'Accuracy+29','Weapon skill damage +5%','STR+5','Attack+8',}},
  448. body="Pummeler's Lorica +3",
  449. hands={ name="Odyssean Gauntlets", augments={'Accuracy+17 Attack+17','Weapon skill damage +4%','DEX+5','Attack+9',}},
  450. legs={ name="Odyssean Cuisses", augments={'Accuracy+4 Attack+4','Weapon skill damage +5%','STR+6','Accuracy+12','Attack+6',}},
  451. feet="Sulev. Leggings +2",
  452. neck="Caro Necklace",
  453. waist="Grunfeld Rope",
  454. left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}},
  455. right_ear="Ishvara Earring",
  456. left_ring="Regal Ring",
  457. right_ring="Niqmaddu Ring",
  458. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}}
  459. }
  460.  
  461. sets.precast.WS['Cloudsplitter'] = {
  462. ammo="Knobkierrie",
  463. head={ name="Jumalik Helm", augments={'MND+8','"Mag.Atk.Bns."+14','Magic burst dmg.+8%',}},
  464. body="Pummeler's Lorica +3",
  465. hands={ name="Founder's Gauntlets", augments={'STR+10','Attack+15','"Mag.Atk.Bns."+15','Phys. dmg. taken -5%',}},
  466. legs={ name="Odyssean Cuisses", augments={'Accuracy+4 Attack+4','Weapon skill damage +5%','STR+6','Accuracy+12','Attack+6',}},
  467. feet={ name="Founder's Greaves", augments={'VIT+10','Accuracy+15','"Mag.Atk.Bns."+15','Mag. Evasion+15',}},
  468. neck="Sanctity Necklace",
  469. waist="Salire Belt",
  470. left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}},
  471. right_ear="Friomisi Earring",
  472. left_ring="Regal Ring",
  473. right_ring="Acumen Ring",
  474. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}}
  475. }
  476.  
  477. sets.precast.WS['Upheaval'] = {
  478. ammo="Seeth. Bomblet +1",
  479. head={ name="Odyssean Helm", augments={'Accuracy+19 Attack+19','"Dbl.Atk."+3','VIT+4',}},
  480. body={ name="Argosy Hauberk +1", augments={'STR+12','DEX+12','Attack+20',}},
  481. hands="Sulev. Gauntlets +2",
  482. legs="Sulev. Cuisses +2",
  483. feet="Pumm. Calligae +3",
  484. neck="Fotia Gorget",
  485. waist="Fotia Belt",
  486. left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}},
  487. right_ear="Telos Earring",
  488. left_ring="Regal Ring",
  489. right_ring="Niqmaddu Ring",
  490. back={ name="Cichol's Mantle", augments={'VIT+20','Accuracy+20 Attack+20','VIT+10','Weapon skill damage +10%',}}
  491. }
  492.  
  493. sets.precast.WS['Ukkos Fury'] = {
  494. ammo="Yetshila",
  495. head={ name="Argosy Celata +1", augments={'DEX+12','Accuracy+20','"Dbl.Atk."+3',}},
  496. body={ name="Argosy Hauberk +1", augments={'STR+12','DEX+12','Attack+20',}},
  497. hands={ name="Argosy Mufflers +1", augments={'STR+20','"Dbl.Atk."+3','Haste+3%',}},
  498. legs={ name="Argosy Breeches +1", augments={'STR+12','DEX+12','Attack+20',}},
  499. feet="Thereoid Greaves",
  500. neck="Rancor Collar",
  501. waist="Windbuffet Belt +1",
  502. left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}},
  503. right_ear="Brutal Earring",
  504. left_ring="Regal Ring",
  505. right_ring="Niqmaddu Ring",
  506. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Crit.hit rate+10',}}
  507. }
  508.  
  509. sets.precast.WS['Armor Break'] = {
  510. ammo="Seeth. Bomblet +1",
  511. head="Flam. Zucchetto +2",
  512. body="Flamma Korazin +2",
  513. hands="Flam. Manopolas +2",
  514. legs="Flamma Dirs +2",
  515. feet="Flam. Gambieras +2",
  516. neck="Sanctity Necklace",
  517. waist="Fotia Belt",
  518. left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}},
  519. right_ear="Telos Earring",
  520. left_ring="Regal Ring",
  521. right_ring="Stikini Ring",
  522. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}}
  523. }
  524.  
  525. sets.precast.WS['Requiescat'] = {
  526. ammo="Seeth. Bomblet +1",
  527. head={ name="Argosy Celata +1", augments={'DEX+12','Accuracy+20','"Dbl.Atk."+3',}},
  528. body={ name="Argosy Hauberk +1", augments={'STR+12','DEX+12','Attack+20',}},
  529. hands={ name="Argosy Mufflers +1", augments={'STR+20','"Dbl.Atk."+3','Haste+3%',}},
  530. legs={ name="Argosy Breeches +1", augments={'STR+12','DEX+12','Attack+20',}},
  531. feet="Pumm. Calligae +3",
  532. neck="Fotia Gorget",
  533. waist="Fotia Belt",
  534. left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}},
  535. right_ear="Brutal Earring",
  536. left_ring="Regal Ring",
  537. right_ring="Niqmaddu Ring",
  538. back={ name="Cichol's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10',}}
  539. }
  540.  
  541. sets.precast.WS['Shockwave'] = sets.precast.WS['Scourge']
  542.  
  543. sets.precast.WS['Ground Strike'] = sets.precast.WS['Scourge']
  544.  
  545. sets.precast.WS['Steel Cyclone'] = sets.precast.WS['Scourge']
  546.  
  547. sets.precast.WS['Kings Justice'] = sets.precast.WS['Resolution']
  548.  
  549. sets.precast.WS['Fell Cleave'] = sets.precast.WS['Scourge']
  550.  
  551. sets.precast.WS['Raging Rush'] = sets.precast.WS['Ukkos Fury']
  552.  
  553. sets.precast.WS['Full Break'] = sets.precast.WS['Armor Break']
  554.  
  555. sets.precast.WS['Retribution'] = sets.precast.WS['Scourge']
  556.  
  557. sets.precast.WS['Shell Crusher'] = sets.precast.WS['Armor Break']
  558.  
  559. sets.precast.WS['Savage Blade'] = sets.precast.WS['Scourge']
  560.  
  561. sets.precast.WS['Savage Blade'].Acc = {}
  562.  
  563. sets.precast.WS['Vorpal Blade'] = set_combine(sets.precast.WS['Ukkos Fury'], {neck="Fotia Gorget", waist="Fotia Belt"})
  564.  
  565. sets.precast.WS['Evisceration'] = sets.precast.WS['Vorpal Blade']
  566.  
  567. sets.precast.WS['Rampage'] = sets.precast.WS['Vorpal Blade']
  568.  
  569. sets.precast.WS['Ruinator'] = sets.precast.WS['Resolution']
  570.  
  571. sets.precast.WS['Hexa Strike'] = sets.precast.WS['Vorpal Blade']
  572.  
  573. sets.precast.WS['Black Halo'] = sets.precast.WS['Scourge']
  574.  
  575. sets.precast.WS['Judgment'] = sets.precast.WS['Savage Blade']
  576.  
  577. sets.precast.WS['Brainshaker'] = sets.precast.WS['Armor Break']
  578.  
  579. sets.precast.WS['Cataclysm'] = sets.precast.WS['Cloudsplitter']
  580.  
  581. sets.precast.WS['Freezebite'] = sets.precast.WS['Cloudsplitter']
  582.  
  583. sets.precast.WS['Frostbite'] = sets.precast.WS['Cloudsplitter']
  584.  
  585. sets.precast.WS['Herculean Slash'] = sets.precast.WS['Cloudsplitter']
  586.  
  587. sets.precast.WS['Seraph Blade'] = sets.precast.WS['Cloudsplitter']
  588.  
  589. sets.precast.WS['Shining Blade'] = sets.precast.WS['Cloudsplitter']
  590.  
  591. sets.precast.WS['Red Lotus Blade'] = sets.precast.WS['Cloudsplitter']
  592.  
  593. sets.precast.WS['Burning Blade'] = sets.precast.WS['Cloudsplitter']
  594.  
  595. sets.precast.WS['Sanguine Blade'] = sets.precast.WS['Cloudsplitter']
  596.  
  597. -- Mighty Strikes WS Set --
  598. sets.MS_WS = {ammo="Yetshila",feet="Boii Calligae +1"}
  599. end
  600.  
  601. -- Job-specific hooks for standard casting events.
  602. function job_midcast(spell, action, spellMap, eventArgs)
  603.  
  604. end
  605.  
  606. -- Called when the player's status changes.
  607. function job_state_change(field, new_value, old_value)
  608.  
  609. end
  610.  
  611. function display_current_job_state(eventArgs)
  612. local msg = 'Melee'
  613. if state.HybridMode.value ~= 'Normal' then
  614. msg = msg .. '/' .. state.HybridMode.value
  615. end
  616. end
  617.  
  618. function update_combat_form()
  619. -- Check Weapontype
  620. if Rag_weapons:contains(player.equipment.main) then
  621. state.CombatForm:set('Ragnarok')
  622. elseif
  623. Shield_weapons:contains(player.equipment.sub) then
  624. state.CombatForm:set('Blurred')
  625. elseif
  626. Svarga_weapons:contains(player.equipment.main) then
  627. state.CombatForm:set('Svarga')
  628. elseif
  629. Montante_weapons:contains(player.equipment.main) then
  630. state.CombatForm:set('Montante')
  631. elseif
  632. Staff_weapons:contains(player.equipment.main) then
  633. state.CombatForm:set('Staff')
  634. elseif
  635. Dualwield_weapons:contains(player.equipment.sub) then
  636. state.CombatForm:set('Dualwield')
  637. else
  638. state.CombatForm:reset()
  639. end
  640. end
  641.  
  642. function job_self_command(cmdParams, eventArgs)
  643. command = cmdParams[1]:lower()
  644. if command=='mainweapon' then
  645. enable('main','sub')
  646. mainswap=1
  647. send_command('gs c cycle mainweapon')
  648. end
  649. end
  650.  
  651. function job_update(cmdParams, eventArgs)
  652. update_combat_form()
  653. end
  654.  
  655. -- Called by the 'update' self-command, for common needs.
  656. -- Set eventArgs.handled to true if we don't want automatic equipping of gear.
  657. function job_update(cmdParams, eventArgs)
  658. update_combat_form()
  659. end
  660.  
  661. -- eventArgs is the same one used in job_precast, in case information needs to be persisted.
  662. moonshade_WS = S{"Resolution", "Savage Blade"}
  663.  
  664. function job_post_precast(spell, action, spellMap, eventArgs)
  665. if spell.type == 'WeaponSkill' then
  666. if moonshade_WS:contains(spell.english) and player.tp<2950 then
  667. equip({ear2="Moonshade Earring"})
  668. end
  669. if buffactive['Mighty Strikes'] then
  670. if sets.precast.WS[spell] then
  671. equipSet = sets.precast.WS[spell]
  672. equipSet = set_combine(equipSet,sets.MS_WS)
  673. equip(equipSet)
  674. else
  675. equipSet = sets.precast.WS
  676. equipSet = set_combine(equipSet,sets.MS_WS)
  677. equip(equipSet)
  678. end
  679. end
  680. end
  681. end
  682.  
  683. function job_buff_change(buff, gain)
  684. if buff == 'sleep' and player.status == 'Engaged' then
  685. if gain then
  686. equip({neck="Berserker's Torque"})
  687. add_to_chat(122, "***Asleep!! Equipping Berserker's Torque!!***")
  688. else
  689. handle_equipping_gear(player.status)
  690. add_to_chat(122, "***Awake!! Un-Equipping Berserker's Torque!!***")
  691. end
  692. end
  693. end
  694.  
  695. function customize_idle_set(idleSet)
  696. if mainswap then
  697. mainswap=0
  698. enable('main','sub')
  699. equip(sets.mainweapon[state.mainweapon.value])
  700. disable('main','sub')
  701. end
  702. if player.mpp < 51 then
  703. return set_combine(idleSet, sets.latent_refresh)
  704. end
  705. if state.Buff.Doom or state.Buff.Curse then
  706. return set_combine(idleSet, sets.Doom)
  707. else
  708. return idleSet
  709. end
  710. end
  711.  
  712. function customize_melee_set(meleeSet)
  713. if mainswap then
  714. mainswap=0
  715. enable('main','sub')
  716. equip(sets.mainweapon[state.mainweapon.value])
  717. disable('main','sub')
  718. end
  719. if state.Buff.Aftermath then
  720. return set_combine(meleeSet, sets.Aftermath)
  721. end
  722. if state.Buff.Doom then
  723. return set_combine(meleeSet, sets.Doom)
  724. end
  725. if state.Buff.Curse then
  726. return set_combine(meleeSet, sets.Curse)
  727. else
  728. return meleeSet
  729. end
  730. end
  731.  
  732. -- eventArgs is the same one used in job_midcast, in case information needs to be persisted.
  733.  
  734.  
  735. -- Select default macro book on initial load or subjob change.
  736. function select_default_macro_book()
  737. -- Default macro set/book
  738. if player.sub_job == 'SAM' then
  739. set_macro_page(1, 11)
  740. elseif player.sub_job == 'RUN' then
  741. set_macro_page(1, 12)
  742. elseif player.sub_job == 'NIN' then
  743. set_macro_page(1, 13)
  744. elseif player.sub_job == 'DNC' then
  745. set_macro_page(1, 14)
  746. else
  747. set_macro_page(1, 11)
  748. end
  749. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement