Advertisement
Guest User

Untitled

a guest
May 30th, 2018
364
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 35.49 KB | None | 0 0
  1. function get_sets()
  2. AccIndex = 1
  3. AccArray = {"LowACC","MidACC","HighACC"} -- 3 Levels Of Accuracy Sets For Shooting/QD/TP/WS. Default ACC Set Is LowACC. The First TP Set Of Your Main Weapon Is LowACC. Add More ACC Sets If Needed Then Create Your New ACC Below --
  4. IdleIndex = 1
  5. IdleArray = {'Movement', 'Regen'} -- Default Idle Set Is Movement --
  6. Armor = 'None'
  7. define_roll_values()
  8. AutoMode = 'OFF' -- Set Default Auto RA/WS ON or OFF Here --
  9. Obi = 'ON' -- Turn Default Obi ON or OFF Here --
  10. target_distance = 5 -- Set Default Distance Here --
  11. select_default_macro_book() -- Change Default Macro Book At The End --
  12.  
  13. ACC_Shots = S{"Light Shot","Dark Shot"}
  14.  
  15. Cure_Spells = {"Cure","Cure II","Cure III","Cure IV"} -- Cure Degradation --
  16. Curaga_Spells = {"Curaga","Curaga II"} -- Curaga Degradation --
  17. sc_map = {SC1="CoursersRoll", SC2="DiaII", SC3="LightShot"} -- 3 Additional Binds. Can Change Whatever JA/WS/Spells You Like Here. Remember Not To Use Spaces. --
  18.  
  19. sets.Idle = {}
  20. -- Idle/Town Sets --
  21. sets.Idle.Town = {}
  22.  
  23. sets.Idle.Regen = {
  24. ammo="Eminent Bullet",
  25. head="Blood mask",
  26. neck="Sanctity necklace",
  27. body="Lanun Frac +1",
  28. ear1="Merman's Earring",
  29. ear2="Merman's Earring",
  30. hands="Meg. Gloves +2",
  31. ring1="Paguroidea Ring",
  32. ring2="Meghanada Ring",
  33. back="Solemnity cape",
  34. legs="Carmine cuisses",
  35. waist="Flume Belt",
  36. feet="Lanun Bottes +1"}
  37.  
  38. sets.Idle.Movement = set_combine(sets.Idle.Regen,{})
  39.  
  40. -- QD Sets --
  41. sets.QD = {
  42. ammo="Animikii Bullet",
  43. head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+17 Pet: "Mag.Atk.Bns."+17','Accuracy+3','Accuracy+13 Attack+13','Mag. Acc.+20 "Mag.Atk.Bns."+20',}},
  44. neck="Sanctity necklace",
  45. ear1="Hecate's Earring",
  46. ear2="Friomisi Earring",
  47. body="Lanun Frac +1",
  48. hands="Carmine Fin. Ga.",
  49. ring1="Acumen ring",
  50. ring2="Stormsoul Ring",
  51. back="Gunslinger's Cape",
  52. waist="Aquiline Belt",
  53. legs={ name="Herculean Trousers", augments={'"Mag.Atk.Bns."+23','Weapon skill damage +4%','INT+8','Mag. Acc.+1',}},
  54. feet="Adhemar gamashes"}
  55. sets.QD.MidACC = set_combine(sets.QD,{
  56. ammo="Animikii Bullet",
  57. head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+17 Pet: "Mag.Atk.Bns."+17','Accuracy+3','Accuracy+13 Attack+13','Mag. Acc.+20 "Mag.Atk.Bns."+20',}},
  58. neck="Sanctity necklace",
  59. ear1="Gwati Earring",
  60. ear2="Friomisi Earring",
  61. body="Mirke wardecors",
  62. hands="Carmine Fin. Ga.",
  63. ring1="Acumen ring",
  64. ring2="Sangoma Ring",
  65. back="Gunslinger's Cape",
  66. waist="Aquiline Belt",
  67. legs={ name="Herculean Trousers", augments={'"Mag.Atk.Bns."+23','Weapon skill damage +4%','INT+8','Mag. Acc.+1',}},
  68. feet="Adhemar gamashes"})
  69. sets.QD.HighACC = set_combine(sets.QD.MidACC,{
  70. ammo="Animikii Bullet",
  71. head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+17 Pet: "Mag.Atk.Bns."+17','Accuracy+3','Accuracy+13 Attack+13','Mag. Acc.+20 "Mag.Atk.Bns."+20',}},
  72. neck="Sanctity necklace",
  73. ear1="Lifestorm Earring",
  74. ear2="Psystorm Earring",
  75. body="Lanun frac +1",
  76. hands="Carmine Fin. Ga.",
  77. ring1="Acumen ring",
  78. ring2="Sangoma Ring",
  79. back="Gunslinger's Cape",
  80. waist="Aquiline Belt",
  81. legs={ name="Herculean Trousers", augments={'"Mag.Atk.Bns."+23','Weapon skill damage +4%','INT+8','Mag. Acc.+1',}},
  82. feet="Adhemar gamashes"})
  83.  
  84.  
  85. sets.QD["Light Shot"] = set_combine(sets.QD.HighACC,{
  86. ammo="Animikii Bullet",
  87. head="Blood Mask",
  88. neck="Sanctity necklace",
  89. ear1="Lifestorm Earring",
  90. ear2="Psystorm Earring",
  91. body="Mirke wardecors",
  92. hands="Carmine Fin. Ga.",
  93. ring1="Acumen ring",
  94. ring2="Sangoma Ring",
  95. back="Gunslinger's Cape",
  96. waist="Aquiline Belt",
  97. legs={ name="Herculean Trousers", augments={'"Mag.Atk.Bns."+23','Weapon skill damage +4%','INT+8','Mag. Acc.+1',}},
  98. feet="Adhemar gamashes"})
  99.  
  100. sets.QD["Dark Shot"] = set_combine(sets.QD.HighACC,{
  101. ammo="Animikii Bullet",
  102. head="Blood Mask",
  103. neck="Sanctity necklace",
  104. ear1="Lifestorm Earring",
  105. ear2="Psystorm Earring",
  106. body="Mirke Wardecors",
  107. hands="Carmine Fin. Ga.",
  108. ring1="Acumen ring",
  109. ring2="Sangoma Ring",
  110. back="Gunslinger's Cape",
  111. waist="Aquiline Belt",
  112. legs={ name="Herculean Trousers", augments={'"Mag.Atk.Bns."+23','Weapon skill damage +4%','INT+8','Mag. Acc.+1',}},
  113. feet="Adhemar gamashes"})
  114.  
  115. -- PDT/MDT Sets --
  116. sets.PDT = {
  117. ammo="Eminent Bullet",
  118. head="Meghanada visor +1",
  119. neck="Twilight Torque",
  120. body="Lanun Frac +1",
  121. ear1="Merman's Earring",
  122. ear2="Merman's Earring",
  123. hands="Meg. Gloves +2",
  124. ring1="Dark Ring",
  125. ring2="Dark Ring",
  126. back="Repulse Mantle",
  127. legs="Carmine cuisses",
  128. waist="Flume belt",
  129. feet="Lanun Bottes +1"}
  130.  
  131. sets.MDT = set_combine(sets.PDT,{})
  132.  
  133. -- Roll Set --
  134. sets.Rolls = {
  135. head="Lanun Tricorne +1",
  136. hands="Chasseur's Gants",
  137. legs="Desultor tassets",
  138. ring1="Luzaf's Ring",
  139. ring2="Barataria ring",
  140. back="Camulus's mantle"}
  141.  
  142. -- Preshot --
  143. sets.Preshot = {
  144. ammo="Eminent Bullet",
  145. head="Uk'uxkaj cap",
  146. body="Laksa. Frac +2",
  147. hands="Lanun Gants +1",
  148. back="Navarch's Mantle",
  149. waist="Impulse belt",
  150. legs="Adhemar kecks"}
  151.  
  152. -- Shooting Base Set --
  153. sets.Midshot = {}
  154.  
  155. -- Death Penalty Sets --
  156. sets.Midshot['Death Penalty'] = {}
  157. sets.Midshot['Death Penalty'].MidACC = set_combine(sets.Midshot['Death Penalty'],{})
  158. sets.Midshot['Death Penalty'].HighACC = set_combine(sets.Midshot['Death Penalty'].MidACC,{})
  159.  
  160. -- Deathlocke Sets --
  161. sets.Midshot['Deathlocke'] = {
  162. ammo="Eminent Bullet",
  163. head="Meghanada visor +1",
  164. neck="Sanctity necklace",
  165. ear1="Navarch's earring",
  166. ear2="Volley Earring",
  167. body="Laksa. Frac +2",
  168. hands="Meg. Gloves +2",
  169. ring1="Paqichikaji Ring",
  170. ring2="Longshot Ring",
  171. back="Gunslinger's Cape",
  172. waist="Commodore belt",
  173. legs="Adhemar kecks",
  174. feet="Meg. Jam. +1"}
  175. sets.Midshot['Deathlocke'].MidACC = set_combine(sets.Midshot['Deathlocke'],{
  176. ammo="Eminent Bullet",
  177. head="Meghanada visor +1",
  178. neck="Sanctity necklace",
  179. ear1="Navarch's earring",
  180. ear2="Volley Earring",
  181. body="Laksa. Frac +2",
  182. hands="Meg. Gloves +2",
  183. ring1="Paqichikaji Ring",
  184. ring2="Longshot Ring",
  185. back="Gunslinger's Cape",
  186. waist="Commodore belt",
  187. legs="Adhemar kecks",
  188. feet="Meg. Jam. +1"})
  189. sets.Midshot['Deathlocke'].HighACC = set_combine(sets.Midshot['Deathlocke'].MidACC,{
  190. ammo="Eminent Bullet",
  191. head="Meghanada visor +1",
  192. neck="Sanctity necklace",
  193. ear1="Navarch's earring",
  194. ear2="Volley Earring",
  195. body="Laksa. Frac +2",
  196. hands="Meg. Gloves +2",
  197. ring1="Paqichikaji Ring",
  198. ring2="Longshot Ring",
  199. back="Gunslinger's Cape",
  200. waist="Commodore belt",
  201. legs="Adhemar kecks",
  202. feet="Meg. Jam. +1"})
  203.  
  204. -- Compensator Sets --
  205. sets.Midshot['Compensator'] = {
  206. ammo="Eminent Bullet",
  207. head="Meghanada visor +1",
  208. neck="Sanctity necklace",
  209. ear1="Navarch's earring",
  210. ear2="Volley Earring",
  211. body="Laksa. Frac +2",
  212. hands="Meg. Gloves +2",
  213. ring1="Paqichikaji Ring",
  214. ring2="Longshot Ring",
  215. back="Gunslinger's Cape",
  216. waist="Commodore belt",
  217. legs="Adhemar kecks",
  218. feet="Meg. Jam. +1"}
  219. sets.Midshot['Compensator'].MidACC = set_combine(sets.Midshot['Compensator'],{
  220. ammo="Eminent Bullet",
  221. head="Meghanada visor +1",
  222. neck="Sanctity necklace",
  223. ear1="Navarch's earring",
  224. ear2="Volley Earring",
  225. body="Laksa. Frac +2",
  226. hands="Meg. Gloves +2",
  227. ring1="Paqichikaji Ring",
  228. ring2="Longshot Ring",
  229. back="Gunslinger's Cape",
  230. waist="Commodore belt",
  231. legs="Adhemar kecks",
  232. feet="Meg. Jam. +1"})
  233. sets.Midshot['Compensator'].HighACC = set_combine(sets.Midshot['Compensator'].MidACC,{
  234. ammo="Eminent Bullet",
  235. head="Meghanada visor +1",
  236. neck="Sanctity necklace",
  237. ear1="Navarch's earring",
  238. ear2="Volley Earring",
  239. body="Laksa. Frac +2",
  240. hands="Meg. Gloves +2",
  241. ring1="Paqichikaji Ring",
  242. ring2="Longshot Ring",
  243. back="Gunslinger's Cape",
  244. waist="Commodore belt",
  245. legs="Adhemar kecks",
  246. feet="Meg. Jam. +1"})
  247.  
  248. -- Melee Sets --
  249. sets.Melee = {
  250. ammo="Eminent Bullet",
  251. head="Adhemar bonnet",
  252. neck="Asperity necklace",
  253. ear1="Heartseeker Earring",
  254. ear2="Dudgeon Earring",
  255. body="Adhemar jacket",
  256. hands="Adhemar Wristbands",
  257. ring1="Epona's Ring",
  258. ring2="Petrov Ring",
  259. back="Letalis Mantle",
  260. waist="Windbuffet belt",
  261. legs="Meg. Chausses +1",
  262. feet="Herculean boots"}
  263. sets.Melee.MidACC = set_combine(sets.Melee,{
  264. ammo="Eminent Bullet",
  265. head="Mummu bonnet +1",
  266. neck="Asperity necklace",
  267. ear1="Heartseeker Earring",
  268. ear2="Dudgeon Earring",
  269. body="Mummu jacket +2",
  270. hands="Mummu Wrists +1",
  271. ring1="Epona's Ring",
  272. ring2="Mummu Ring",
  273. back="Letalis Mantle",
  274. waist="Windbuffet belt",
  275. legs="Mummu kecks +1",
  276. feet="Mummu Gamash. +1"})
  277. sets.Melee.HighACC = set_combine(sets.Melee.MidACC,{
  278. ammo="Eminent Bullet",
  279. head="Adhemar bonnet",
  280. neck="Sanctity necklace",
  281. ear1="Heartseeker Earring",
  282. ear2="Dudgeon Earring",
  283. body="Adhemar jacket",
  284. hands="Adhemar Wristbands",
  285. ring1="Epona's Ring",
  286. ring2="Mummu Ring",
  287. back="Letalis Mantle",
  288. waist="Hurch'lan sash",
  289. legs="Meg. Chausses +1",
  290. feet="Herculean boots"})
  291.  
  292. -- WS Base Set --
  293. sets.WS = {}
  294.  
  295. -- Last Stand Sets --
  296. sets.WS["Last Stand"] = {
  297. ammo="Eminent Bullet",
  298. head="Meghanada Visor +1",
  299. neck="Light Gorget",
  300. ear1="Ishvara Earring",
  301. ear2="Moonshade earring",
  302. body="Laksa. Frac +2",
  303. hands="Meg. Gloves +2",
  304. ring1="Mummu Ring",
  305. ring2="Longshot Ring",
  306. back="Gunslinger's cape",
  307. waist="Flame Belt",
  308. legs="Meg. Chausses +1",
  309. feet="Meg. Jam. +1"}
  310. sets.WS["Last Stand"].MidACC = set_combine(sets.WS["Last Stand"],{
  311. ammo="Eminent Bullet",
  312. head="Meghanada Visor +1",
  313. neck="Light Gorget",
  314. ear1="Ishvara Earring",
  315. ear2="Moonshade earring",
  316. body="Laksa. Frac +2",
  317. hands="Meg. Gloves +2",
  318. ring1="Mummu Ring",
  319. ring2="Longshot Ring",
  320. back="Gunslinger's cape",
  321. waist="Flame Belt",
  322. legs="Meg. Chausses +1",
  323. feet="Meg. Jam. +1"})
  324. sets.WS["Last Stand"].HighACC = set_combine(sets.WS["Last Stand"].MidACC,{
  325. ammo="Eminent Bullet",
  326. head="Meghanada Visor +1",
  327. neck="Light Gorget",
  328. ear1="Ishvara Earring",
  329. ear2="Moonshade earring",
  330. body="Laksa. Frac +2",
  331. hands="Meg. Gloves +2",
  332. ring1="Paqichikaji Ring",
  333. ring2="Longshot Ring",
  334. back="Gunslinger's cape",
  335. waist="Flame Belt",
  336. legs="Meg. Chausses +1",
  337. feet="Meg. Jam. +1"})
  338.  
  339. -- Wildfire Sets --
  340. sets.WS["Wildfire"] = {
  341. ammo="Eminent Bullet",
  342. head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+17 Pet: "Mag.Atk.Bns."+17','Accuracy+3','Accuracy+13 Attack+13','Mag. Acc.+20 "Mag.Atk.Bns."+20',}},
  343. neck="Sanctity necklace",
  344. ear1="Friomisi Earring",
  345. ear2="Moonshade Earring",
  346. body="Rawhide Vest",
  347. hands="Carmine Fin. Ga.",
  348. ring1="Acumen Ring",
  349. ring2="Stormsoul Ring",
  350. back="Camulus's mantle",
  351. waist="Svelt. Gouriz +1",
  352. legs={ name="Herculean Trousers", augments={'"Mag.Atk.Bns."+23','Weapon skill damage +4%','INT+8','Mag. Acc.+1',}},
  353. feet="Adhemar gamashes"}
  354. sets.WS["Wildfire"].MidACC = set_combine(sets.WS["Wildfire"],{
  355. ammo="Eminent Bullet",
  356. head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+17 Pet: "Mag.Atk.Bns."+17','Accuracy+3','Accuracy+13 Attack+13','Mag. Acc.+20 "Mag.Atk.Bns."+20',}},
  357. neck="Sanctity necklace",
  358. ear1="Friomisi Earring",
  359. ear2="Moonshade Earring",
  360. body="Rawhide Vest",
  361. hands="Carmine Fin. Ga.",
  362. ring1="Acumen Ring",
  363. ring2="Stormsoul Ring",
  364. back="Camulus's mantle",
  365. waist="Svelt. Gouriz +1",
  366. legs={ name="Herculean Trousers", augments={'"Mag.Atk.Bns."+23','Weapon skill damage +4%','INT+8','Mag. Acc.+1',}},
  367. feet="Adhemar gamashes"})
  368. sets.WS["Wildfire"].HighACC = set_combine(sets.WS["Wildfire"].MidACC,{
  369. ammo="Eminent Bullet",
  370. head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+17 Pet: "Mag.Atk.Bns."+17','Accuracy+3','Accuracy+13 Attack+13','Mag. Acc.+20 "Mag.Atk.Bns."+20',}},
  371. neck="Sanctity necklace",
  372. ear1="Friomisi Earring",
  373. ear2="Moonshade Earring",
  374. body="Lanun Frac +1",
  375. hands="Carmine Fin. Ga.",
  376. ring1="Acumen Ring",
  377. ring2="Stormsoul Ring",
  378. back="Camulus's mantle",
  379. waist="Svelt. Gouriz +1",
  380. legs={ name="Herculean Trousers", augments={'"Mag.Atk.Bns."+23','Weapon skill damage +4%','INT+8','Mag. Acc.+1',}},
  381. feet="Adhemar gamashes"})
  382.  
  383. -- Leaden Salute Sets --
  384. sets.WS['Leaden Salute'] = {
  385. ammo="Eminent Bullet",
  386. head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+17 Pet: "Mag.Atk.Bns."+17','Accuracy+3','Accuracy+13 Attack+13','Mag. Acc.+20 "Mag.Atk.Bns."+20',}},
  387. neck="Sanctity necklace",
  388. ear1="Friomisi Earring",
  389. ear2="Moonshade Earring",
  390. body="Rawhide Vest",
  391. hands="Carmine Fin. Ga.",
  392. ring1="Acumen Ring",
  393. ring2="Stormsoul Ring",
  394. back="Camulus's mantle",
  395. waist="Svelt. Gouriz +1",
  396. legs={ name="Herculean Trousers", augments={'"Mag.Atk.Bns."+23','Weapon skill damage +4%','INT+8','Mag. Acc.+1',}},
  397. feet="Adhemar gamashes"}
  398. sets.WS['Leaden Salute'].MidACC = set_combine(sets.WS['Leaden Salute'],{
  399. ammo="Eminent Bullet",
  400. head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+17 Pet: "Mag.Atk.Bns."+17','Accuracy+3','Accuracy+13 Attack+13','Mag. Acc.+20 "Mag.Atk.Bns."+20',}},
  401. neck="Sanctity necklace",
  402. ear1="Friomisi Earring",
  403. ear2="Moonshade Earring",
  404. body="Rawhide Vest",
  405. hands="Carmine Fin. Ga.",
  406. ring1="Acumen Ring",
  407. ring2="Stormsoul Ring",
  408. back="Camulus's mantle",
  409. waist="Svelt. Gouriz +1",
  410. legs={ name="Herculean Trousers", augments={'"Mag.Atk.Bns."+23','Weapon skill damage +4%','INT+8','Mag. Acc.+1',}},
  411. feet="Adhemar gamashes"})
  412. sets.WS['Leaden Salute'].HighACC = set_combine(sets.WS['Leaden Salute'].MidACC,{
  413. ammo="Eminent Bullet",
  414. head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+17 Pet: "Mag.Atk.Bns."+17','Accuracy+3','Accuracy+13 Attack+13','Mag. Acc.+20 "Mag.Atk.Bns."+20',}},
  415. neck="Sanctity necklace",
  416. ear1="Friomisi Earring",
  417. ear2="Moonshade Earring",
  418. body="Lanun Frac +1",
  419. hands="Carmine Fin. Ga.",
  420. ring1="Acumen Ring",
  421. ring2="Stormsoul Ring",
  422. back="Camulus's mantle",
  423. waist="Svelt. Gouriz +1",
  424. legs={ name="Herculean Trousers", augments={'"Mag.Atk.Bns."+23','Weapon skill damage +4%','INT+8','Mag. Acc.+1',}},
  425. feet="Adhemar gamashes"})
  426.  
  427. -- Aeolian Sets --
  428. sets.WS['Aeolian Edge'] = {
  429. ammo="Eminent Bullet",
  430. head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+17 Pet: "Mag.Atk.Bns."+17','Accuracy+3','Accuracy+13 Attack+13','Mag. Acc.+20 "Mag.Atk.Bns."+20',}},
  431. neck="Sanctity necklace",
  432. ear1="Friomisi Earring",
  433. ear2="Moonshade Earring",
  434. body="Lanun Frac +1",
  435. hands="Carmine Fin. Ga.",
  436. ring1="Acumen Ring",
  437. ring2="Stormsoul Ring",
  438. back="Camulus's mantle",
  439. waist="Svelt. Gouriz +1",
  440. legs={ name="Herculean Trousers", augments={'"Mag.Atk.Bns."+23','Weapon skill damage +4%','INT+8','Mag. Acc.+1',}},
  441. feet="Adhemar gamashes"}
  442. sets.WS['Aeolian Edge'].MidACC = set_combine(sets.WS['Aeolian Edge'],{
  443. ammo="Eminent Bullet",
  444. head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+17 Pet: "Mag.Atk.Bns."+17','Accuracy+3','Accuracy+13 Attack+13','Mag. Acc.+20 "Mag.Atk.Bns."+20',}},
  445. neck="Sanctity necklace",
  446. ear1="Friomisi Earring",
  447. ear2="Moonshade Earring",
  448. body="Lanun Frac +1",
  449. hands="Carmine Fin. Ga.",
  450. ring1="Acumen Ring",
  451. ring2="Stormsoul Ring",
  452. back="Camulus's mantle",
  453. waist="Svelt. Gouriz +1",
  454. legs={ name="Herculean Trousers", augments={'"Mag.Atk.Bns."+23','Weapon skill damage +4%','INT+8','Mag. Acc.+1',}},
  455. feet="Adhemar gamashes"})
  456. sets.WS['Aeolian Edge'].HighACC = set_combine(sets.WS['Aeolian Edge'].MidACC,{
  457. ammo="Eminent Bullet",
  458. head={ name="Herculean Helm", augments={'Pet: Mag. Acc.+17 Pet: "Mag.Atk.Bns."+17','Accuracy+3','Accuracy+13 Attack+13','Mag. Acc.+20 "Mag.Atk.Bns."+20',}},
  459. neck="Sanctity necklace",
  460. ear1="Friomisi Earring",
  461. ear2="Moonshade Earring",
  462. body="Lanun Frac +1",
  463. hands="Carmine Fin. Ga.",
  464. ring1="Acumen Ring",
  465. ring2="Stormsoul Ring",
  466. back="Camulus's mantle",
  467. waist="Svelt. Gouriz +1",
  468. legs={ name="Herculean Trousers", augments={'"Mag.Atk.Bns."+23','Weapon skill damage +4%','INT+8','Mag. Acc.+1',}},
  469. feet="Adhemar gamashes"})
  470.  
  471. -- Savage Blade Sets --
  472. sets.WS['Savage Blade'] = {
  473. ammo="Eminent Bullet",
  474. head="Meghanada visor +1",
  475. neck="Soil Gorget",
  476. ear1="Ishvara Earring",
  477. ear2="Moonshade Earring",
  478. body="Adhemar jacket",
  479. hands="Meg. Gloves +2",
  480. ring1="Petrov Ring",
  481. ring2="Mars's Ring",
  482. back="Camulus Mantle",
  483. waist="Windbuffet belt",
  484. legs="Meg. Chausses +1",
  485. feet="Meg. Jam. +1"}
  486. sets.WS['Savage Blade'].MidACC = set_combine(sets.WS['Savage Blade'],{
  487. ammo="Eminent Bullet",
  488. head="Meghanada visor +1",
  489. neck="Soil Gorget",
  490. ear1="Ishvara Earring",
  491. ear2="Moonshade Earring",
  492. body="Adhemar jacket",
  493. hands="Meg. Gloves +2",
  494. ring1="Petrov Ring",
  495. ring2="Mars's Ring",
  496. back="Camulus Mantle",
  497. waist="Windbuffet belt",
  498. legs="Meg. Chausses +1",
  499. feet="Meg. Jam. +1"})
  500. sets.WS['Savage Blade'].HighACC = set_combine(sets.WS['Savage Blade'].MidACC,{
  501. ammo="Eminent Bullet",
  502. head="Meghanada visor +1",
  503. neck="Soil Gorget",
  504. ear1="Ishvara Earring",
  505. ear2="Moonshade Earring",
  506. body="Adhemar jacket",
  507. hands="Meg. Gloves +2",
  508. ring1="Petrov Ring",
  509. ring2="Mars's Ring",
  510. back="Camulus Mantle",
  511. waist="Windbuffet belt",
  512. legs="Meg. Chausses +1",
  513. feet="Meg. Jam. +1"})
  514.  
  515. -- Elemental Obi --
  516. sets.Obi = {}
  517. sets.Obi.Thunder = {waist='Hachirin-no-obi'}
  518. sets.Obi.Water = {waist='Hachirin-no-obi'}
  519. sets.Obi.Fire = {waist='Hachirin-no-obi'}
  520. sets.Obi.Ice = {waist='Hachirin-no-obi'}
  521. sets.Obi.Wind = {waist='Hachirin-no-obi'}
  522. sets.Obi.Earth = {waist='Hachirin-no-obi'}
  523. sets.Obi.Light = {waist='Hachirin-no-obi'}
  524. sets.Obi.Dark = {waist='Hachirin-no-obi'}
  525.  
  526. -- JA Sets --
  527. sets.JA = {}
  528. sets.JA["Random Deal"] = {body="Lanun Frac +1"}
  529. sets.JA["Snake Eye"] = {legs="Lanun culottes +1"}
  530. sets.JA["Wild Card"] = {feet="Lanun Bottes +1"}
  531. sets.JA["Triple Shot"] = {body="Chasseur's frac"}
  532.  
  533. -- Waltz Set --
  534. sets.Waltz = {}
  535.  
  536. sets.Precast = {}
  537. --Fastcast Set --
  538. sets.Precast.FastCast = {}
  539.  
  540. sets.Midcast = {}
  541. -- Magic Haste Set --
  542. sets.Midcast.Haste = set_combine(sets.WS["Last Stand"].HighACC,{})
  543. end
  544.  
  545. function pretarget(spell,action)
  546. if spell.action_type == 'Magic' and buffactive.silence then -- Auto Use Echo Drops If You Are Silenced --
  547. cancel_spell()
  548. send_command('input /item "Echo Drops" <me>')
  549. elseif spell.type == "CorsairRoll" and buffactive[spell.english] then -- Change Any Rolls To Double-Up When You Have A Roll Up --
  550. cancel_spell()
  551. send_command('doubleup')
  552. elseif spell.english == "Seigan" and buffactive.Seigan then -- Change Seigan To Third Eye If Seigan Is On --
  553. cancel_spell()
  554. send_command('ThirdEye')
  555. elseif spell.english == "Meditate" and player.tp > 290 then -- Cancel Meditate If TP Is Above 290 --
  556. cancel_spell()
  557. add_to_chat(123, spell.name .. ' Canceled: ' .. player.tp)
  558. elseif spell.action_type == 'Ranged Attack' then -- Auto WS
  559. if player.tp >= 100 and AutoMode == 'ON' and not buffactive.amnesia then
  560. cancel_spell()
  561. autoWS()
  562. end
  563. elseif spell.action_type == 'Ranged Attack' and spell.target.distance > 24.9 then
  564. cancel_spell()
  565. add_to_chat(123, spell.name..' Canceled: [Out of Range]')
  566. return
  567. elseif spell.type == 'WeaponSkill' and player.status == 'Engaged' then
  568. if spell.skill == 'Marksmanship' then
  569. if spell.target.distance > 16+target_distance then
  570. cancel_spell()
  571. add_to_chat(123, spell.name..' Canceled: [Out of Range]')
  572. return
  573. end
  574. else
  575. if spell.target.distance > target_distance then
  576. cancel_spell()
  577. add_to_chat(123, spell.name..' Canceled: [Out of Range]')
  578. return
  579. end
  580. end
  581. end
  582. end
  583.  
  584. function precast(spell,action)
  585. if spell.action_type == 'Ranged Attack' or spell.type == "WeaponSkill" then
  586. if player.equipment.ammo == "Animikii Bullet" then -- Cancel Ranged Attack or WS If You Have Animikii Bullet Equipped --
  587. cancel_spell()
  588. add_to_chat(123, spell.name .. ' Canceled: [Animikii Bullet Equipped!]')
  589. return
  590. else
  591. if spell.action_type == 'Ranged Attack' then
  592. equip(sets.Preshot)
  593. elseif spell.type == "WeaponSkill" then
  594. if player.status ~= 'Engaged' then -- Cancel WS If You Are Not Engaged. Can Delete It If You Don't Need It --
  595. cancel_spell()
  596. add_to_chat(123,'Unable To Use WeaponSkill: [Disengaged]')
  597. return
  598. else
  599. equipSet = sets.WS
  600. if equipSet[spell.english] then
  601. equipSet = equipSet[spell.english]
  602. end
  603. if equipSet[AccArray[AccIndex]] then
  604. equipSet = equipSet[AccArray[AccIndex]]
  605. end
  606. if spell.english == "Last Stand" and (player.tp > 299 or buffactive.Sekkanoki) then -- Equip Altdorf's Earring and Wilhelm's Earring When You Have 300 TP or Sekkanoki For Last Stand --
  607. equipSet = set_combine(equipSet,{ear1="Altdorf's Earring",ear2="Wilhelm's Earring"})
  608. end
  609. if spell.english == 'Leaden Salute' and (world.day_element == spell.element or world.weather_element == spell.element) and sets.Obi[spell.element] and Obi == 'ON' then -- Use Obi Toggle To Unlock Elemental Obi --
  610. equipSet = set_combine(equipSet,sets.Obi[spell.element])
  611. end
  612. if spell.english == 'Wildfire' and (world.day_element == spell.element or world.weather_element == spell.element) and sets.Obi[spell.element] and Obi == 'ON' then -- Use Obi Toggle To Unlock Elemental Obi --
  613. equipSet = set_combine(equipSet,sets.Obi[spell.element])
  614. end
  615. equip(equipSet)
  616. end
  617. end
  618. end
  619. elseif spell.type == "JobAbility" then
  620. if sets.JA[spell.english] then
  621. equip(sets.JA[spell.english])
  622. if spell.english == "Snake Eye" then -- Auto Double-Up After You Use Snake Eye --
  623. send_command('@wait 1;input /ja Double-Up <me>')
  624. end
  625. end
  626. elseif spell.type == "CorsairRoll" then
  627. equip(sets.Rolls)
  628. if spell.english == "Tactician's Roll" then
  629. equip({body="Chasseur's frac"})
  630. elseif spell.english == "Caster's Roll" then
  631. equip({legs="Nvrch. Culottes +2"})
  632. elseif spell.english == "Courser's Roll" then
  633. equip({feet="Chasseur's bottes"})
  634. end
  635. elseif spell.english == "Double-Up" then
  636. equip(sets.Rolls)
  637. elseif spell.type == "CorsairShot" then
  638. equipSet = sets.QD
  639. if ACC_Shots:contains(spell.english) then
  640. equipSet = sets.QD["Light Shot"]
  641. elseif spell.english == "Dark Shot" then
  642. equipSet = sets.QD["Dark Shot"]
  643. else
  644. if equipSet[AccArray[AccIndex]] then
  645. equipSet = equipSet[AccArray[AccIndex]]
  646. end
  647. if not ACC_Shots:contains(spell.english) and (world.day_element == spell.element or world.weather_element == spell.element) and sets.Obi[spell.element] and Obi == 'ON' then -- Use Obi Toggle To Unlock Elemental Obi --
  648. equipSet = set_combine(equipSet,sets.Obi[spell.element])
  649. end
  650. end
  651. equip(equipSet)
  652. elseif spell.action_type == 'Magic' then
  653. if string.find(spell.english,'Utsusemi') then
  654. if buffactive['Copy Image (3)'] or buffactive['Copy Image (4)'] then
  655. cancel_spell()
  656. add_to_chat(123, spell.name .. ' Canceled: [3+ Images]')
  657. return
  658. else
  659. equip(sets.Precast.FastCast)
  660. end
  661. else
  662. equip(sets.Precast.FastCast)
  663. end
  664. elseif spell.type == "Waltz" then
  665. refine_waltz(spell,action)
  666. equip(sets.Waltz)
  667. elseif spell.english == 'Spectral Jig' and buffactive.Sneak then
  668. cast_delay(0.2)
  669. send_command('cancel Sneak')
  670. end
  671. end
  672.  
  673. function midcast(spell,action)
  674. if spell.action_type == 'Ranged Attack' then
  675. equipSet = sets.Midshot
  676. if equipSet[player.equipment.range] then
  677. equipSet = equipSet[player.equipment.range]
  678. end
  679. if equipSet[AccArray[AccIndex]] then
  680. equipSet = equipSet[AccArray[AccIndex]]
  681. end
  682. equip(equipSet)
  683. elseif spell.action_type == 'Magic' then
  684. if spell.english == "Stoneskin" then
  685. if buffactive.Stoneskin then
  686. send_command('@wait 2.8;cancel stoneskin')
  687. end
  688. equip(sets.Midcast.Stoneskin)
  689. elseif spell.english == "Sneak" then
  690. if spell.target.name == player.name and buffactive['Sneak'] then
  691. send_command('cancel sneak')
  692. end
  693. equip(sets.Midcast.Haste)
  694. elseif string.find(spell.english,'Utsusemi') then
  695. if spell.english == 'Utsusemi: Ichi' and (buffactive['Copy Image'] or buffactive['Copy Image (2)']) then
  696. send_command('@wait 1.7;cancel Copy Image*')
  697. end
  698. equip(sets.Midcast.Haste)
  699. elseif spell.english == 'Monomi: Ichi' then
  700. if buffactive['Sneak'] then
  701. send_command('@wait 1.7;cancel sneak')
  702. end
  703. equip(sets.Midcast.Haste)
  704. else
  705. equip(sets.Midcast.Haste)
  706. end
  707. end
  708. end
  709.  
  710. function aftercast(spell,action)
  711. if spell.action_type == 'Ranged Attack' and AutoMode == 'ON' then
  712. autoRA()
  713. elseif not spell.interrupted then
  714. if spell.type == "WeaponSkill" then
  715. send_command('wait 0.2;gs c TP')
  716. elseif spell.type == 'CorsairRoll' then
  717. display_roll_info(spell)
  718. elseif spell.english == 'Light Shot' then -- Sleep Countdown --
  719. send_command('wait 50;input /echo '..spell.name..' Effect: [WEARING OFF IN 10 SEC.];wait 10;input /echo '..spell.name..' Effect: [OFF]')
  720. end
  721. end
  722. status_change(player.status)
  723. end
  724.  
  725. function status_change(new,old)
  726. if Armor == 'PDT' then
  727. equip(sets.PDT)
  728. elseif Armor == 'MDT' then
  729. equip(sets.MDT)
  730. elseif new == 'Engaged' then
  731. equipSet = sets.Melee
  732. if equipSet[AccArray[AccIndex]] then
  733. equipSet = equipSet[AccArray[AccIndex]]
  734. end
  735. equip(equipSet)
  736. elseif new == 'Idle' then
  737. equip(sets.Idle[IdleArray[IdleIndex]])
  738. elseif new == 'Resting' then
  739. equip(sets.Resting)
  740. end
  741. end
  742.  
  743. function buff_change(buff,gain)
  744. buff = string.lower(buff)
  745. if buff == "aftermath: lv.3" then -- AM3 Timer/Countdown --
  746. if gain then
  747. 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.]')
  748. else
  749. send_command('timers delete "Aftermath: Lv.3"')
  750. add_to_chat(123,'AM3: [OFF]')
  751. end
  752. elseif buff == 'weakness' then -- Weakness Timer --
  753. if gain then
  754. send_command('timers create "Weakness" 300 up')
  755. else
  756. send_command('timers delete "Weakness"')
  757. end
  758. end
  759. if not midaction() then
  760. status_change(player.status)
  761. end
  762. end
  763.  
  764. -- In Game: //gs c (command), Macro: /console gs c (command), Bind: gs c (command) --
  765. function self_command(command)
  766. if command == 'C1' then -- Accuracy Level Toggle --
  767. AccIndex = (AccIndex % #AccArray) + 1
  768. status_change(player.status)
  769. add_to_chat(158,'Accuracy Level: ' .. AccArray[AccIndex])
  770. elseif command == 'C5' then -- Auto Update Gear Toggle --
  771. status_change(player.status)
  772. add_to_chat(158,'Auto Update Gear')
  773. elseif command == 'C7' then -- Obi Toggle --
  774. if Obi == 'ON' then
  775. Obi = 'OFF'
  776. add_to_chat(123,'Obi: [OFF]')
  777. else
  778. Obi = 'ON'
  779. add_to_chat(158,'Obi: [ON]')
  780. end
  781. status_change(player.status)
  782. elseif command == 'C6' then -- PDT Toggle --
  783. if Armor == 'PDT' then
  784. Armor = 'None'
  785. add_to_chat(123,'PDT Set: [Unlocked]')
  786. else
  787. Armor = 'PDT'
  788. add_to_chat(158,'PDT Set: [Locked]')
  789. end
  790. status_change(player.status)
  791. elseif command == 'C15' then -- MDT Toggle --
  792. if Armor == 'MDT' then
  793. Armor = 'None'
  794. add_to_chat(123,'MDT Set: [Unlocked]')
  795. else
  796. Armor = 'MDT'
  797. add_to_chat(158,'MDT Set: [Locked]')
  798. end
  799. status_change(player.status)
  800. elseif command == 'C8' then -- Distance Toggle --
  801. if player.target.distance then
  802. target_distance = math.floor(player.target.distance*10)/10
  803. add_to_chat(158,'Distance: '..target_distance)
  804. else
  805. add_to_chat(123,'No Target Selected')
  806. end
  807. elseif command == 'C3' then -- Idle Toggle --
  808. IdleIndex = (IdleIndex % #IdleArray) + 1
  809. status_change(player.status)
  810. add_to_chat(158,'Idle Set: ' .. IdleArray[IdleIndex])
  811. elseif command == 'C2' then -- Auto RA/WS Toggle. *Don't Rely On This. It Isn't As Fast As Shooting Manually. It Is Mainly For AFK or When You Dualbox* --
  812. if AutoMode == 'ON' then
  813. AutoMode = 'OFF'
  814. add_to_chat(123,'Auto Mode: [OFF]')
  815. else
  816. AutoMode = 'ON'
  817. add_to_chat(158,'Auto Mode: [ON]')
  818. end
  819. elseif command == 'TP' then
  820. add_to_chat(158,'TP Return: ['..tostring(player.tp)..']')
  821. elseif command:match('^SC%d$') then
  822. send_command('//' .. sc_map[command])
  823. end
  824. end
  825.  
  826. function autoRA()
  827. send_command('@wait 2.7; input /ra <t>')
  828. end
  829.  
  830. function autoWS() -- Change Auto WS Here --
  831. send_command('input /ws "Leaden Salute" <t>')
  832. end
  833.  
  834. function define_roll_values()
  835. rolls = {
  836. ["Corsair's Roll"] = {lucky=5, unlucky=9, bonus="Experience Points"},
  837. ["Ninja Roll"] = {lucky=4, unlucky=8, bonus="Evasion"},
  838. ["Hunter's Roll"] = {lucky=4, unlucky=8, bonus="Accuracy"},
  839. ["Chaos Roll"] = {lucky=4, unlucky=8, bonus="Attack"},
  840. ["Magus's Roll"] = {lucky=2, unlucky=6, bonus="Magic Defense"},
  841. ["Healer's Roll"] = {lucky=3, unlucky=7, bonus="Cure Potency Received"},
  842. ["Puppet Roll"] = {lucky=4, unlucky=8, bonus="Pet Magic Accuracy/Attack"},
  843. ["Choral Roll"] = {lucky=2, unlucky=6, bonus="Spell Interruption Rate"},
  844. ["Monk's Roll"] = {lucky=3, unlucky=7, bonus="Subtle Blow"},
  845. ["Beast Roll"] = {lucky=4, unlucky=8, bonus="Pet Attack"},
  846. ["Samurai Roll"] = {lucky=2, unlucky=6, bonus="Store TP"},
  847. ["Evoker's Roll"] = {lucky=5, unlucky=9, bonus="Refresh"},
  848. ["Rogue's Roll"] = {lucky=5, unlucky=9, bonus="Critical Hit Rate"},
  849. ["Warlock's Roll"] = {lucky=4, unlucky=8, bonus="Magic Accuracy"},
  850. ["Fighter's Roll"] = {lucky=5, unlucky=9, bonus="Double Attack Rate"},
  851. ["Drachen Roll"] = {lucky=3, unlucky=7, bonus="Pet Accuracy"},
  852. ["Gallant's Roll"] = {lucky=3, unlucky=7, bonus="Defense"},
  853. ["Wizard's Roll"] = {lucky=5, unlucky=9, bonus="Magic Attack"},
  854. ["Dancer's Roll"] = {lucky=3, unlucky=7, bonus="Regen"},
  855. ["Scholar's Roll"] = {lucky=2, unlucky=6, bonus="Conserve MP"},
  856. ["Bolter's Roll"] = {lucky=3, unlucky=9, bonus="Movement Speed"},
  857. ["Caster's Roll"] = {lucky=2, unlucky=7, bonus="Fast Cast"},
  858. ["Courser's Roll"] = {lucky=3, unlucky=9, bonus="Snapshot"},
  859. ["Blitzer's Roll"] = {lucky=4, unlucky=9, bonus="Attack Delay"},
  860. ["Tactician's Roll"] = {lucky=5, unlucky=8, bonus="Regain"},
  861. ["Allies's Roll"] = {lucky=3, unlucky=10, bonus="Skillchain Damage"},
  862. ["Miser's Roll"] = {lucky=5, unlucky=7, bonus="Save TP"},
  863. ["Companion's Roll"] = {lucky=2, unlucky=10, bonus="Pet Regain and Regen"},
  864. ["Avenger's Roll"] = {lucky=4, unlucky=8, bonus="Counter Rate"},
  865. }
  866. end
  867.  
  868. function display_roll_info(spell)
  869. rollinfo = rolls[(string.gsub((string.gsub(spell.english, "%'+", "")), "%s+", ""))]
  870. if rollinfo then
  871. add_to_chat(158, spell.english..' = '..rollinfo.bonus..'. Lucky Roll is '..
  872. tostring(rollinfo.lucky)..', Unlucky Roll is '..tostring(rollinfo.unlucky)..'.')
  873. end
  874. end
  875.  
  876. function refine_waltz(spell,action)
  877. if spell.type ~= 'Waltz' then
  878. return
  879. end
  880.  
  881. if spell.name == "Healing Waltz" or spell.name == "Divine Waltz" or spell.name == "Divine Waltz II" then
  882. return
  883. end
  884.  
  885. local newWaltz = spell.english
  886.  
  887. local missingHP = 0
  888. local targ
  889.  
  890. if spell.target.type == "SELF" then
  891. targ = alliance[1][1]
  892. missingHP = player.max_hp - player.hp
  893. elseif spell.target.isallymember then
  894. targ = find_player_in_alliance(spell.target.name)
  895. local est_max_hp = targ.hp / (targ.hpp/100)
  896. missingHP = math.floor(est_max_hp - targ.hp)
  897. end
  898.  
  899. if targ then
  900. if player.sub_job == 'DNC' then
  901. if missingHP < 40 then
  902. add_to_chat(123,'Full HP!')
  903. cancel_spell()
  904. return
  905. elseif missingHP < 150 then
  906. newWaltz = 'Curing Waltz'
  907. elseif missingHP < 300 then
  908. newWaltz = 'Curing Waltz II'
  909. else
  910. newWaltz = 'Curing Waltz III'
  911. end
  912. else
  913. return
  914. end
  915. end
  916.  
  917. local waltzTPCost = {['Curing Waltz'] = 20,['Curing Waltz II'] = 35,['Curing Waltz III'] = 50,['Curing Waltz IV'] = 65,['Curing Waltz V'] = 80}
  918. local tpCost = waltzTPCost[newWaltz]
  919. local downgrade
  920.  
  921. if player.tp < tpCost and not buffactive.trance then
  922. if player.tp < 20 then
  923. add_to_chat(123, 'Insufficient TP ['..tostring(player.tp)..']. Cancelling.')
  924. cancel_spell()
  925. return
  926. elseif player.tp < 35 then
  927. newWaltz = 'Curing Waltz'
  928. elseif player.tp < 50 then
  929. newWaltz = 'Curing Waltz II'
  930. elseif player.tp < 65 then
  931. newWaltz = 'Curing Waltz III'
  932. elseif player.tp < 80 then
  933. newWaltz = 'Curing Waltz IV'
  934. end
  935. downgrade = 'Insufficient TP ['..tostring(player.tp)..']. Downgrading to '..newWaltz..'.'
  936. end
  937.  
  938. if newWaltz ~= spell.english then
  939. send_command('wait 0.03;input /ja "'..newWaltz..'" '..tostring(spell.target.raw))
  940. if downgrade then
  941. add_to_chat(158, downgrade)
  942. end
  943. cancel_spell()
  944. return
  945. end
  946.  
  947. if missingHP > 0 then
  948. add_to_chat(158,'Trying to cure '..tostring(missingHP)..' HP using '..newWaltz..'.')
  949. end
  950. end
  951.  
  952. function find_player_in_alliance(name)
  953. for i,v in ipairs(alliance) do
  954. for k,p in ipairs(v) do
  955. if p.name == name then
  956. return p
  957. end
  958. end
  959. end
  960. end
  961.  
  962. function actualCost(originalCost)
  963. if buffactive["Penury"] then
  964. return originalCost*.5
  965. elseif buffactive["Light Arts"] then
  966. return originalCost*.9
  967. else
  968. return originalCost
  969. end
  970. end
  971.  
  972. function degrade_spell(spell,degrade_array)
  973. spell_index = table.find(degrade_array,spell.name)
  974. if spell_index>1 then
  975. new_spell = degrade_array[spell_index - 1]
  976. change_spell(new_spell,spell.target.raw)
  977. add_to_chat(8,spell.name..' Canceled: ['..player.mp..'/'..player.max_mp..'MP::'..player.mpp..'%] Casting '..new_spell..' instead.')
  978. end
  979. end
  980.  
  981. function change_spell(spell_name,target)
  982. cancel_spell()
  983. send_command('//'..spell_name..' '..target)
  984. end
  985.  
  986. function sub_job_change(newSubjob, oldSubjob)
  987. select_default_macro_book()
  988. end
  989.  
  990. function set_macro_page(set,book)
  991. if not tonumber(set) then
  992. add_to_chat(123,'Error setting macro page: Set is not a valid number ('..tostring(set)..').')
  993. return
  994. end
  995. if set < 1 or set > 10 then
  996. add_to_chat(123,'Error setting macro page: Macro set ('..tostring(set)..') must be between 1 and 10.')
  997. return
  998. end
  999.  
  1000. if book then
  1001. if not tonumber(book) then
  1002. add_to_chat(123,'Error setting macro page: book is not a valid number ('..tostring(book)..').')
  1003. return
  1004. end
  1005. if book < 1 or book > 20 then
  1006. add_to_chat(123,'Error setting macro page: Macro book ('..tostring(book)..') must be between 1 and 20.')
  1007. return
  1008. end
  1009. send_command('@input /macro book '..tostring(book)..';wait .1;input /macro set '..tostring(set))
  1010. else
  1011. send_command('@input /macro set '..tostring(set))
  1012. end
  1013. end
  1014.  
  1015. function select_default_macro_book()
  1016. -- Default macro set/book
  1017. if player.sub_job == 'SAM' then
  1018. set_macro_page(1, 7)
  1019. elseif player.sub_job == 'WHM' then
  1020. set_macro_page(1, 7)
  1021. elseif player.sub_job == 'DNC' then
  1022. set_macro_page(1, 7)
  1023. elseif player.sub_job == 'NIN' then
  1024. set_macro_page(1, 7)
  1025. elseif player.sub_job == 'RDM' then
  1026. set_macro_page(1, 7)
  1027. elseif player.sub_job == 'WAR' then
  1028. set_macro_page(1, 7)
  1029. elseif player.sub_job == 'DRG' then
  1030. set_macro_page(1, 7)
  1031. else
  1032. set_macro_page(1, 7)
  1033. end
  1034. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement