Advertisement
Guest User

Ramzus - SAM (Nov 28th, 2014)

a guest
Nov 28th, 2014
189
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 32.71 KB | None | 0 0
  1. -- *** Credit goes to Flippant for helping me with Gearswap *** --
  2. -- ** I Use Some of Motenten's Functions ** --
  3. -- Last Updated: 05/02/14 8:00 PM *Advanced Version* --
  4.  
  5. function get_sets()
  6. AccIndex = 1
  7. AccArray = {"LowACC","MidACC","HighACC"} -- 3 Levels Of Accuracy Sets For TP/WS/Hybrid. First Set Is LowACC. Add More ACC Sets If Needed Then Create Your New ACC Below. Most of These Sets Are Empty So You Need To Edit Them On Your Own. Remember To Check What The Combined Set Is For Each Sets. --
  8. WeaponIndex = 1
  9. WeaponArray = {"Kogarasumaru","Tsurumaru","Amanomurakumo","Masamune"} -- Default TP Set Is Kogarasumaru. Can Delete Any Weapons/Sets That You Don't Need Or Replace/Add The New Weapons That You Want To Use. --
  10. IdleIndex = 1
  11. IdleArray = {"Movement","Regen"} -- Default Idle Set Is Movement --
  12. Armor = 'None'
  13. Twilight = 'None'
  14. Attack = 'OFF' -- Set Default Attack Set ON or OFF Here --
  15. Seigan = 'ON' -- Set Default Seigan Set ON or OFF Here --
  16. Third_Eye = 'ON' -- Set Default Third Eye Set ON or OFF Here --
  17. Samurai_Roll = 'OFF' -- Set Default SAM Roll ON or OFF Here --
  18. target_distance = 5 -- Set Default Distance Here --
  19. select_default_macro_book() -- Change Default Macro Book At The End --
  20.  
  21. sc_map = {SC1="TachiFudo", SC2="TachiRana", SC3="NamasArrow"} -- 3 Additional Binds. Can Change Whatever JA/WS/Spells You Like Here. Remember Not To Use Spaces. --
  22.  
  23. sets.Idle = {}
  24. -- Idle/Town Sets --
  25. sets.Idle.Regen = {
  26. head="Tenryu Somen +1",
  27. neck="Agitator's Collar",
  28. ear1="Vulcan's Pearl",
  29. ear2="Vulcan's Pearl",
  30. body="Tenryu Domaru +1",
  31. hands="Tenryu Tekko +1",
  32. ring1="Ifrit Ring +1",
  33. ring2="Ifrit Ring +1",
  34. back="Buquwik Cape",
  35. waist="Pya'ekue Belt +1",
  36. legs="Tenryu Hakama +1",
  37. feet="Tenryu Sune-Ate +1"}
  38.  
  39.  
  40. sets.Twilight = {head="Twilight Helm",body="Twilight Mail"}
  41.  
  42. -- TP Base Set --
  43. sets.TP = {}
  44.  
  45. -- Kogarasumaru(AM3 Down) TP Sets --
  46. sets.TP.Kogarasumaru = {
  47. main="Kogarasumaru",
  48. sub="Bloodrain Strap",
  49. range="Cibitshavore",
  50. ammo="Tulfaire Arrow",
  51. head="Sakonji Kabuto +1",
  52. neck="Ganesha's Mala",
  53. ear1="Tripudio Earring",
  54. ear2="Brutal Earring",
  55. body="Sakonji Domaru +1",
  56. hands="Wakido Kote +1",
  57. ring1="K'ayres Ring",
  58. ring2="Rajas Ring",
  59. back="Takaha Mantle",
  60. waist="windbuffet belt +1",
  61. legs="Otronif Brais +1",
  62. feet="Otronif Boots +1"}
  63. sets.TP.Kogarasumaru.MidACC = set_combine(sets.TP.Kogarasumaru,{
  64. head="Yaoyotl Helm",
  65. ear1="Steelflash Earring",
  66. ear2="Bladeborn Earring",
  67. neck="iqabi necklace",
  68. waist="Dynamic Belt +1"})
  69. sets.TP.Kogarasumaru.HighACC = set_combine(sets.TP.Kogarasumaru.MidACC,{
  70. body="Mes'yohi Haubergeon",
  71. ring1="ramuh ring +1",
  72. ring2="ramuh ring +1",
  73. legs="Xaddi Cuisses",
  74. feet="Wakido Sune-Ate +1"} )
  75.  
  76. -- Kogarasumaru(AM3 Up) TP Sets --
  77. sets.TP.Kogarasumaru.AM3 = set_combine(sets.TP.Kogarasumaru,{
  78. main="Kogarasumaru",
  79. range="Cibitshavore",
  80. ammo="Tulfaire Arrow",
  81. head="Sakonji Kabuto +1",
  82. neck="Ganesha's Mala",
  83. ear1="Tripudio Earring",
  84. ear2="Brutal Earring",
  85. body="Sakonji Domaru +1",
  86. hands="Wakido Kote +1",
  87. ring1="K'ayres Ring",
  88. ring2="Rajas Ring",
  89. back="Takaha Mantle",
  90. waist="windbuffet belt +1",
  91. legs="Otronif Brais +1",
  92. feet="Otronif Boots +1"})
  93. sets.TP.Kogarasumaru.MidACC.AM3 = set_combine(sets.TP.Kogarasumaru.AM3,{
  94. head="Yaoyotl Helm",
  95. ear1="Steelflash Earring",
  96. neck="iqabi necklace"})
  97. sets.TP.Kogarasumaru.HighACC.AM3 = set_combine(sets.TP.Kogarasumaru.MidACC.AM3,{
  98. body="Mes'yohi Haubergeon",
  99. waist="Dynamic belt +1",
  100. ring1="ramuh ring +1",
  101. ring1="ramuh ring +1",
  102. legs="Xaddi Cuisses",
  103. feet="Wakido Sune-Ate +1"})
  104.  
  105. -- Kogarasumaru(AM3 Down: Ionis) TP Sets --
  106. sets.TP.Kogarasumaru.Ionis = set_combine(sets.TP.Kogarasumaru,{})
  107. sets.TP.Kogarasumaru.MidACC.Ionis = set_combine(sets.TP.Kogarasumaru.MidACC,{})
  108. sets.TP.Kogarasumaru.HighACC.Ionis = set_combine(sets.TP.Kogarasumaru.HighACC,{})
  109.  
  110. -- Kogarasumaru(AM3 Up: Ionis) TP Sets --
  111. sets.TP.Kogarasumaru.AM3.Ionis = set_combine(sets.TP.Kogarasumaru.AM3,{})
  112. sets.TP.Kogarasumaru.MidACC.AM3.Ionis = set_combine(sets.TP.Kogarasumaru.MidACC.AM3,{})
  113. sets.TP.Kogarasumaru.HighACC.AM3.Ionis = set_combine(sets.TP.Kogarasumaru.HighACC.AM3,{})
  114.  
  115. -- Kogarasumaru(AM3 Down: SAM Roll) TP Sets --
  116. sets.TP.Kogarasumaru.STP = set_combine(sets.TP.Kogarasumaru,{
  117. head="Sakonji Kabuto +1",
  118. ear1="Tripudio Earring",
  119. ear2="Brutal Earring",
  120. back="Takaha Mantle",
  121. waist="Goading Belt"})
  122. sets.TP.Kogarasumaru.MidACC.STP = set_combine(sets.TP.Kogarasumaru.STP,{
  123. head="Yaoyotl Helm",
  124. feet="Sak. Sune-Ate +1"})
  125. sets.TP.Kogarasumaru.HighACC.STP = set_combine(sets.TP.Kogarasumaru.MidACC.STP,{
  126. neck="iqabi necklace",
  127. ear1="Steelflash Earring",
  128. ear2="Bladeborn Earring",
  129. body="Mes. Haubergeon",
  130. ring1="ramuh ring +1",
  131. ring2="ramuh ring +1",
  132. waist="Dynamic Belt +1",
  133. legs="Xaddi Cuisses"})
  134.  
  135. -- Kogarasumaru(AM3 Up: SAM Roll) TP Sets --
  136. sets.TP.Kogarasumaru.AM3.STP = set_combine(sets.TP.Kogarasumaru.STP,{})
  137. sets.TP.Kogarasumaru.MidACC.AM3.STP = set_combine(sets.TP.Kogarasumaru.MidACC.STP,{})
  138. sets.TP.Kogarasumaru.HighACC.AM3.STP = set_combine(sets.TP.Kogarasumaru.HighACC.STP,{})
  139.  
  140. -- Kogarasumaru(AM3 Down: Ionis + SAM Roll) TP Sets --
  141. sets.TP.Kogarasumaru.Ionis.STP = set_combine(sets.TP.Kogarasumaru.STP,{})
  142. sets.TP.Kogarasumaru.MidACC.Ionis.STP = set_combine(sets.TP.Kogarasumaru.MidACC.STP,{})
  143. sets.TP.Kogarasumaru.HighACC.Ionis.STP = set_combine(sets.TP.Kogarasumaru.HighACC.STP,{})
  144.  
  145. -- Kogarasumaru(AM3 Up: Ionis + SAM Roll) TP Sets --
  146. sets.TP.Kogarasumaru.AM3.Ionis.STP = set_combine(sets.TP.Kogarasumaru.AM3.STP,{})
  147. sets.TP.Kogarasumaru.MidACC.AM3.Ionis.STP = set_combine(sets.TP.Kogarasumaru.MidACC.AM3.STP,{})
  148. sets.TP.Kogarasumaru.HighACC.AM3.Ionis.STP = set_combine(sets.TP.Kogarasumaru.HighACC.AM3.STP,{})
  149.  
  150.  
  151.  
  152. -- Tsurumaru TP Sets --
  153. sets.TP.Tsurumaru = {
  154. main="Tsurumaru",
  155. sub="Bloodrain Strap",
  156. range="Yoichinoyumi",
  157. ammo="Tulfaire Arrow",
  158. head="Otomi Helm",
  159. neck="Ganesha's Mala",
  160. ear1="Tripudio Earring",
  161. ear2="Brutal Earring",
  162. body="Sakonji Domaru +1",
  163. hands="Wakido Kote +1",
  164. ring1="K'ayres Ring",
  165. ring2="Rajas Ring",
  166. back="Takaha Mantle",
  167. waist="windbuffet belt +1",
  168. legs="Wakido Haidate +1",
  169. feet="Otronif Boots +1"}
  170. sets.TP.Tsurumaru.MidACC = set_combine(sets.TP.Tsurumaru,{
  171. head="Yaoyotl Helm",
  172. ear1="Steelflash Earring",
  173. ear2="Bladeborn Earring"})
  174. sets.TP.Tsurumaru.HighACC = set_combine(sets.TP.Tsurumaru.MidACC,{
  175. neck="iqabi necklace",
  176. body="Mes. Haubergeon",
  177. waist="Dynamic Belt +1",
  178. ring1="ramuh ring +1",
  179. ring2="ramuh ring +1",
  180. legs="Xaddi Cuisses",
  181. feet="Wakido Sune-Ate +1"})
  182.  
  183. -- Tsurumaru(Ionis) TP Sets --
  184. sets.TP.Tsurumaru.Ionis = set_combine(sets.TP.Tsurumaru,{})
  185.  
  186. sets.TP.Tsurumaru.MidACC.Ionis = set_combine(sets.TP.Tsurumaru.Ionis,{
  187. head="Yaoyotl Helm",
  188. ear1="Steelflash Earring",
  189. ear2="Bladeborn Earring"})
  190. sets.TP.Tsurumaru.HighACC.Ionis = set_combine(sets.TP.Tsurumaru.MidACC.Ionis,{
  191. neck="iqabi necklace",
  192. body="Mes. Haubergeon",
  193. waist="Dynamic Belt +1",
  194. legs="Xaddi Cuisses",
  195. feet="Wakido Sune-Ate +1"})
  196.  
  197. -- Tsurumaru(SAM Roll) TP Sets --
  198. sets.TP.Tsurumaru.STP = set_combine(sets.TP.Tsurumaru,{})
  199. sets.TP.Tsurumaru.MidACC.STP = set_combine(sets.TP.Tsurumaru.MidACC,{})
  200. sets.TP.Tsurumaru.HighACC.STP = set_combine(sets.TP.Tsurumaru.HighACC,{})
  201.  
  202. -- Tsurumaru(Ionis + SAM Roll) TP Sets --
  203. sets.TP.Tsurumaru.Ionis.STP = set_combine(sets.TP.Tsurumaru.Ionis,{})
  204.  
  205. sets.TP.Tsurumaru.MidACC.Ionis.STP = set_combine(sets.TP.Tsurumaru.Ionis.STP,{
  206. head="Yaoyotl Helm",
  207. ear1="Steelflash Earring",
  208. ear2="Bladeborn Earring"})
  209. sets.TP.Tsurumaru.HighACC.Ionis.STP = set_combine(sets.TP.Tsurumaru.MidACC.Ionis.STP,{
  210. neck="iqabi necklace",
  211. body="Mes. Haubergeon",
  212. waist="Dynamic Belt +1",
  213. legs="Xaddi Cuisses",
  214. feet="Wakido Sune-Ate +1"})
  215.  
  216. -- Amanomurakumo(AM Down) TP Sets --
  217. sets.TP.Amanomurakumo = {
  218. main="Amanomurakumo",
  219. sub="Bloodrain Strap",
  220. range="Cibitshavore",
  221. ammo="Tulfaire Arrow",
  222. head="Otomi Helm",
  223. neck="Ganesha's Mala",
  224. ear1="Tripudio Earring",
  225. ear2="Brutal Earring",
  226. body="Sakonji Domaru +1",
  227. hands="Wakido Kote +1",
  228. ring1="K'ayres Ring",
  229. ring2="Rajas Ring",
  230. back="Takaha Mantle",
  231. waist="windbuffet belt +1",
  232. legs="Otronif Brais +1",
  233. feet="Otronif Boots +1"}
  234. sets.TP.Amanomurakumo.MidACC = set_combine(sets.TP.Amanomurakumo,{
  235. head="Yaoyotl Helm",
  236. ear1="Steelflash Earring",
  237. ear2="Bladeborn Earring",
  238. waist="Dynamic Belt +1"})
  239. sets.TP.Amanomurakumo.HighACC = set_combine(sets.TP.Amanomurakumo.MidACC,{
  240. neck="iqabi necklace",
  241. body="Mes. Haubergeon",
  242. ring1="ramuh ring +1",
  243. legs="Xaddi Cuisses",
  244. feet="Waki. Sune-Ate +1"})
  245.  
  246. -- Amanomurakumo(AM Up) TP Sets --
  247. sets.TP.Amanomurakumo.AM = set_combine(sets.TP.Amanomurakumo,{})
  248. sets.TP.Amanomurakumo.MidACC.AM = set_combine(sets.TP.Amanomurakumo.AM,{})
  249. sets.TP.Amanomurakumo.HighACC.AM = set_combine(sets.TP.Amanomurakumo.MidACC.AM,{})
  250.  
  251. -- Amanomurakumo(AM Down: Ionis) TP Sets --
  252. sets.TP.Amanomurakumo.Ionis = set_combine(sets.TP.Amanomurakumo,{})
  253. sets.TP.Amanomurakumo.MidACC.Ionis = set_combine(sets.TP.Amanomurakumo.Ionis,{})
  254. sets.TP.Amanomurakumo.HighACC.Ionis = set_combine(sets.TP.Amanomurakumo.MidACC.Ionis,{})
  255.  
  256. -- Amanomurakumo(AM Up: Ionis) TP Sets --
  257. sets.TP.Amanomurakumo.AM.Ionis = set_combine(sets.TP.Amanomurakumo.AM,{})
  258. sets.TP.Amanomurakumo.MidACC.AM.Ionis = set_combine(sets.TP.Amanomurakumo.AM.Ionis,{})
  259. sets.TP.Amanomurakumo.HighACC.AM.Ionis = set_combine(sets.TP.Amanomurakumo.MidACC.AM.Ionis,{})
  260.  
  261. -- Amanomurakumo(AM Down: SAM Roll) TP Sets --
  262. sets.TP.Amanomurakumo.STP = set_combine(sets.TP.Amanomurakumo,{})
  263. sets.TP.Amanomurakumo.MidACC.STP = set_combine(sets.TP.Amanomurakumo.MidACC,{})
  264. sets.TP.Amanomurakumo.HighACC.STP = set_combine(sets.TP.Amanomurakumo.HighACC,{})
  265.  
  266. -- Amanomurakumo(AM Up: SAM Roll) TP Sets --
  267. sets.TP.Amanomurakumo.AM.STP = set_combine(sets.TP.Amanomurakumo.STP,{})
  268. sets.TP.Amanomurakumo.MidACC.AM.STP = set_combine(sets.TP.Amanomurakumo.MidACC.STP,{})
  269. sets.TP.Amanomurakumo.HighACC.AM.STP = set_combine(sets.TP.Amanomurakumo.HighACC.STP,{})
  270.  
  271. -- Amanomurakumo(AM Down: Ionis + SAM Roll) TP Sets --
  272. sets.TP.Amanomurakumo.Ionis.STP = set_combine(sets.TP.Amanomurakumo.STP,{})
  273. sets.TP.Amanomurakumo.MidACC.Ionis.STP = set_combine(sets.TP.Amanomurakumo.MidACC.STP,{})
  274. sets.TP.Amanomurakumo.HighACC.Ionis.STP = set_combine(sets.TP.Amanomurakumo.HighACC.STP,{})
  275.  
  276. -- Amanomurakumo(AM Up: Ionis + SAM Roll) TP Sets --
  277. sets.TP.Amanomurakumo.AM.Ionis.STP = set_combine(sets.TP.Amanomurakumo.AM.STP,{})
  278. sets.TP.Amanomurakumo.MidACC.AM.Ionis.STP = set_combine(sets.TP.Amanomurakumo.MidACC.AM.STP,{})
  279. sets.TP.Amanomurakumo.HighACC.AM.Ionis.STP = set_combine(sets.TP.Amanomurakumo.HighACC.AM.STP,{})
  280.  
  281. -- Masamune TP Sets --
  282. sets.TP.Masamune = {
  283. main="Masamune",
  284. sub="Bloodrain Strap",
  285. range="Cibitshavore",
  286. ammo="Tulfaire Arrow",
  287. head="Otomi Helm",
  288. neck="Ganesha's Mala",
  289. ear1="Tripudio Earring",
  290. ear2="Brutal Earring",
  291. body="Sakonji Domaru +1",
  292. hands="Wakido Kote +1",
  293. ring1="K'ayres Ring",
  294. ring2="Rajas Ring",
  295. back="Takaha Mantle",
  296. waist="windbuffet belt +1",
  297. legs="Otronif Brais +1",
  298. feet="Otronif Boots +1"}
  299. sets.TP.Masamune.MidACC = set_combine(sets.TP.Masamune,{
  300. head="Yaoyotl Helm",
  301. ear1="Steelflash Earring",
  302. ear2="Bladeborn Earring",
  303. waist="Dynamic Belt +1"})
  304. sets.TP.Masamune.HighACC = set_combine(sets.TP.Masamune.MidACC,{
  305. neck="iqabi necklace",
  306. legs="Xaddi Cuisses",
  307. body="Mes. Haubergeon",
  308. ring1="ramuh ring +1",
  309. feet="Waki. Sune-Ate +1"})
  310.  
  311. -- Masamune(Ionis) TP Sets --
  312. sets.TP.Masamune.Ionis = set_combine(sets.TP.Masamune,{})
  313. sets.TP.Masamune.MidACC.Ionis = set_combine(sets.TP.Masamune.Ionis,{})
  314. sets.TP.Masamune.HighACC.Ionis = set_combine(sets.TP.Masamune.MidACC.Ionis,{})
  315.  
  316. -- Masamune(SAM Roll) TP Sets --
  317. sets.TP.Masamune.STP = set_combine(sets.TP.Masamune,{})
  318. sets.TP.Masamune.MidACC.STP = set_combine(sets.TP.Masamune.MidACC,{})
  319. sets.TP.Masamune.HighACC.STP = set_combine(sets.TP.Masamune.HighACC,{})
  320.  
  321. -- Masamune(Ionis + SAM Roll) TP Sets --
  322. sets.TP.Masamune.Ionis.STP = set_combine(sets.TP.Masamune.Ionis,{})
  323. sets.TP.Masamune.MidACC.Ionis.STP = set_combine(sets.TP.Masamune.Ionis.STP,{})
  324. sets.TP.Masamune.HighACC.Ionis.STP = set_combine(sets.TP.Masamune.MidACC.Ionis.STP,{})
  325.  
  326. -- Seigan TP Set --
  327. sets.TP.Seigan = {}
  328.  
  329. -- Third Eye TP Set --
  330. sets.TP['Third Eye'] = {legs="Sakonji Haidate +1"}
  331.  
  332. -- PDT/MDT Sets --
  333. sets.PDT = {
  334. head="lithelimb cap",
  335. neck="Twilight Torque",
  336. body="Otro. Harness +1",
  337. hands="sakonji kote +1",
  338. ring2="Dark Ring",
  339. ring1="Defending Ring",
  340. back="mollusca mantle",
  341. waist="Flume Belt",
  342. legs="xaddi cuisses",
  343. feet="Otronif Boots +1"}
  344.  
  345. sets.MDT = set_combine(sets.PDT,{
  346. head="otronif mask +1",
  347. ear1="Merman's Earring",
  348. ear2="Sanare Earring",
  349. body="sakonji domaru +1",
  350. ring2="Shadow Ring",
  351. back="mubvumbamiri mantle",
  352. hands="Wakido Kote +1",
  353. feet="Wakido Sune-ate +1"})
  354.  
  355. -- Hybrid Sets --
  356. sets.TP.Hybrid = set_combine(sets.PDT,{
  357. ear1="Steelflash Earring",
  358. ear2="Bladeborn Earring",
  359. body="Sakonji Domaru +1",
  360. hands="Wakido Kote +1",})
  361. sets.TP.Hybrid.MidACC = set_combine(sets.TP.Hybrid,{
  362. neck="agitator's collar",
  363. ring2="Patricius ring",
  364. })
  365. sets.TP.Hybrid.HighACC = set_combine(sets.TP.Hybrid.MidACC,{
  366. back="takaha mantle",
  367. waist="dynamic belt +1",
  368. feet="wakido sune-ate +1"})
  369.  
  370. -- WS Base Set --
  371. sets.WS = {
  372. head="Otomi Helm",
  373. neck="Ganesha's Mala",
  374. ear1="Vulcan's Pearl",
  375. ear2="Brutal Earring",
  376. body="Phorcys Korazin",
  377. hands="Mikinaak Gauntlets",
  378. ring1="Ifrit Ring +1",
  379. ring2="Ifrit Ring +1",
  380. back="Buquwik Cape",
  381. waist="windbuffet belt +1",
  382. legs="Wakido Haidate +1",
  383. feet="Sak. Sune-Ate +1"}
  384.  
  385. -- Tachi: Fudo Sets --
  386. sets.WS["Tachi: Fudo"] = {
  387. head="Otomi Helm",
  388. neck="Breeze Gorget",
  389. ear1="Vulcan's Pearl",
  390. ear2="Brutal Earring",
  391. body="Phorcys Korazin",
  392. hands="Miki. Gauntlets",
  393. ring1="Ifrit Ring +1",
  394. ring2="Ifrit Ring +1",
  395. back="Buquwik Cape",
  396. waist="Light Belt",
  397. legs="Wakido Haidate +1",
  398. feet="Sak. Sune-Ate +1"}
  399. sets.WS["Tachi: Fudo"].MidACC = set_combine(sets.WS["Tachi: Fudo"],{
  400. head="Yaoyotl Helm",
  401. legs="Mikinaak Cuisses"})
  402. sets.WS["Tachi: Fudo"].HighACC = set_combine(sets.WS["Tachi: Fudo"].MidACC,{
  403. body="Mes. Haubergeon",
  404. back="Letalis Mantle",
  405. feet="Waki. Sune-Ate +1"})
  406.  
  407. -- Tachi: Fudo(SAM Roll) Sets --
  408. sets.WS["Tachi: Fudo"].STP = set_combine(sets.WS["Tachi: Fudo"],{})
  409. sets.WS["Tachi: Fudo"].MidACC.STP = set_combine(sets.WS["Tachi: Fudo"].MidACC,{})
  410. sets.WS["Tachi: Fudo"].HighACC.STP = set_combine(sets.WS["Tachi: Fudo"].HighACC,{})
  411.  
  412. -- Tachi: Fudo(Attack) Set --
  413. sets.WS["Tachi: Fudo"].ATT = set_combine(sets.WS["Tachi: Fudo"],{
  414. head="Yaoyotl Helm",
  415. hands="Miki. Gauntlets"})
  416.  
  417. -- Tachi: Shoha Sets --
  418. sets.WS["Tachi: Shoha"] = {
  419. head="Otomi Helm",
  420. neck="Ganesha's Mala",
  421. ear1="Vulcan's Pearl",
  422. ear2="Brutal Earring",
  423. body="Phorcys Korazin",
  424. hands="Boor Bracelets",
  425. ring1="ifrit ring +1",
  426. ring2="Rajas Ring",
  427. back="Buquwik Cape",
  428. waist="windbuffet belt +1",
  429. legs="Wakido Haidate +1",
  430. feet="Sak. Sune-Ate +1"}
  431. sets.WS["Tachi: Shoha"].MidACC = set_combine(sets.WS["Tachi: Shoha"],{
  432. head="Yaoyotl Helm",
  433. neck="Breeze Gorget",
  434. body="Sakonji Domaru +1",
  435. hands="Miki. Gauntlets",
  436. waist="Breeze Belt",
  437. legs="Mikinaak Cuisses"})
  438. sets.WS["Tachi: Shoha"].HighACC = set_combine(sets.WS["Tachi: Shoha"].MidACC,{
  439. ear1="bladeborn earring",
  440. ear2="Steelflash earring",
  441. body="mes'yohi haubergeon",
  442. back="letalis mantle",
  443. feet="wakido sune-ate +1"})
  444.  
  445.  
  446. -- Tachi: Shoha(SAM Roll) Sets --
  447. sets.WS["Tachi: Shoha"].STP = set_combine(sets.WS["Tachi: Shoha"],{})
  448. sets.WS["Tachi: Shoha"].MidACC.STP = set_combine(sets.WS["Tachi: Shoha"].MidACC,{})
  449. sets.WS["Tachi: Shoha"].HighACC.STP = set_combine(sets.WS["Tachi: Shoha"].HighACC,{})
  450.  
  451. -- Tachi: Rana Sets --
  452. sets.WS["Tachi: Rana"] = {
  453. head="Otomi Helm",
  454. neck="Snow Gorget",
  455. ear1="Vulcan's Pearl",
  456. ear2="Brutal Earring",
  457. body="Mes. Haubergeon",
  458. hands="mikinaak gauntlets",
  459. ring1="ifrit ring +1",
  460. ring2="Rajas Ring",
  461. back="Buquwik Cape",
  462. waist="Anguinus Belt",
  463. legs="Wakido Haidate +1",
  464. feet="Sak. Sune-Ate +1"}
  465. sets.WS["Tachi: Rana"].MidACC = set_combine(sets.WS["Tachi: Rana"],{
  466. head="Yaoyotl Helm",
  467. legs="Mikinaak Cuisses",
  468. feet="Waki. Sune-Ate +1"})
  469. sets.WS["Tachi: Rana"].HighACC = set_combine(sets.WS["Tachi: Rana"].MidACC,{
  470. back="Letalis Mantle",
  471. ring1="ramuh ring +1"})
  472.  
  473.  
  474.  
  475. -- Tachi: Rana(SAM Roll) Sets --
  476. sets.WS["Tachi: Rana"].STP = set_combine(sets.WS["Tachi: Rana"],{})
  477. sets.WS["Tachi: Rana"].MidACC.STP = set_combine(sets.WS["Tachi: Rana"].MidACC,{})
  478. sets.WS["Tachi: Rana"].HighACC.STP = set_combine(sets.WS["Tachi: Rana"].HighACC,{})
  479.  
  480. -- Namas Arrow Sets --
  481. sets.WS["Namas Arrow"] = {
  482. ammo="Tulfaire Arrow",
  483. head="Sakonji Kabuto +1",
  484. neck="Snow Gorget",
  485. ear1="Vulcan's Pearl",
  486. ear2="Vulcan's Pearl",
  487. body="Phorcys Korazin",
  488. hands="Unkai Kote +2",
  489. ring1="ifrit ring +1",
  490. ring2="Hajduk Ring +1",
  491. back="Buquwik Cape",
  492. waist="Light Belt",
  493. legs="Wakido Haidate +1",
  494. feet="Waki. Sune-Ate +1"}
  495. sets.WS["Namas Arrow"].MidACC = set_combine(sets.WS["Namas Arrow"],{})
  496. sets.WS["Namas Arrow"].HighACC = set_combine(sets.WS["Namas Arrow"].MidACC,{
  497. body="Kyujutsugi",
  498. ring1="Paqichikaji Ring",
  499. back="Thall Mantle"})
  500.  
  501. sets.WS["Apex Arrow"] = {
  502. ammo="Tulfaire Arrow",
  503. head="Sakonji Kabuto +1",
  504. neck="Breeze Gorget",
  505. ear1="Altdorf's Earring",
  506. ear2="Wilhelm's Earring",
  507. body="Phorcys Korazin",
  508. hands="Unkai Kote +2",
  509. ring1="Stormsoul Ring",
  510. ring2="Stormsoul Ring",
  511. back="Buquwik Cape",
  512. waist="Breeze Belt",
  513. legs="Wakido Haidate +1",
  514. feet="Waki. Sune-Ate +1"}
  515. sets.WS["Apex Arrow"].MidACC = set_combine(sets.WS["Apex Arrow"],{})
  516. sets.WS["Apex Arrow"].HighACC = set_combine(sets.WS["Apex Arrow"].MidACC,{
  517. body="Kyujutsugi"})
  518.  
  519. -- JA Sets --
  520. sets.JA = {}
  521. sets.JA.Meditate = {head="Wakido Kabuto +1",hands="Sakonji Kote +1"}
  522. sets.JA["Warding Circle"] = {head="Wakido Kabuto +1"}
  523.  
  524. -- Waltz Set --
  525. sets.Waltz = {}
  526.  
  527. sets.Precast = {}
  528. -- Fastcast Set --
  529. sets.Precast.FastCast = {
  530. neck="Orunmila's Torque",
  531. ear1="Loquac. Earring",
  532. ring1="Prolix Ring",
  533. ring2="Veneficium Ring"}
  534.  
  535. sets.Midcast = {}
  536. -- Magic Haste Set --
  537. sets.Midcast.Haste = set_combine(sets.PDT,{})
  538. end
  539.  
  540. function pretarget(spell,action)
  541. if (spell.type:endswith('Magic') or spell.type == "Ninjutsu") and buffactive.silence then -- Auto Use Echo Drops If You Are Silenced --
  542. cancel_spell()
  543. send_command('input /item "Echo Drops" <me>')
  544. elseif spell.english == "Berserk" and buffactive.Berserk then -- Change Berserk To Aggressor If Berserk Is On --
  545. cancel_spell()
  546. send_command('Aggressor')
  547. elseif spell.english == "Seigan" and buffactive.Seigan then -- Change Seigan To Third Eye If Seigan Is On --
  548. cancel_spell()
  549. send_command('ThirdEye')
  550. elseif spell.english == "Meditate" and player.tp > 2900 then -- Cancel Meditate If TP Is Above 290 --
  551. cancel_spell()
  552. add_to_chat(123, spell.name .. ' Canceled: ['..player.tp..' TP]')
  553. elseif (spell.english == 'Ranged' and spell.target.distance > 24.9) or (player.status == 'Engaged' and (((spell.english == "Namas Arrow" or spell.english == "Apex Arrow") and spell.target.distance > 16+target_distance) or (spell.type == "WeaponSkill" and spell.english ~= "Namas Arrow" and spell.english ~= "Apex Arrow" and spell.target.distance > target_distance))) then -- Cancel Ranged Attack or WS If You Are Out Of Range --
  554. cancel_spell()
  555. add_to_chat(123, spell.name..' Canceled: [Out of Range]')
  556. return
  557. end
  558. end
  559.  
  560. function precast(spell,action)
  561. if spell.type == "WeaponSkill" then
  562. if player.status ~= 'Engaged' then -- Cancel WS If You Are Not Engaged. Can Delete It If You Don't Need It --
  563. cancel_spell()
  564. add_to_chat(123,'Unable To Use WeaponSkill: [Disengaged]')
  565. return
  566. else
  567. equipSet = sets.WS
  568. if equipSet[spell.english] then
  569. equipSet = equipSet[spell.english]
  570. end
  571. if Attack == 'ON' then
  572. equipSet = equipSet["ATT"]
  573. end
  574. if equipSet[AccArray[AccIndex]] then
  575. equipSet = equipSet[AccArray[AccIndex]]
  576. end
  577. if buffactive["Samurai Roll"] and equipSet["STP"] and Samurai_Roll == 'ON' then
  578. equipSet = equipSet["STP"]
  579. end
  580. if buffactive.Sekkanoki then -- Equip Unkai Kote +2 When Sekkanoki Is On --
  581. equipSet = set_combine(equipSet,{hands="Unkai Kote +2"})
  582. end
  583. if buffactive.Sengikori then -- Equip Unkai Sune-ate +2 When Sengikori Is On --
  584. equipSet = set_combine(equipSet,{feet="Unkai Sune-ate +2"})
  585. end
  586. if (spell.english == "Tachi: Fudo" or spell.english == "Tachi: Shoha") and (player.tp > 299 or buffactive.Sekkanoki or (player.tp > 199 and buffactive.Hagakure)) then -- Equip Vulcan's Pearl When You Have 300 TP or Sekkanoki On or 200+ TP For Hagakure --
  587. equipSet = set_combine(equipSet,{ear1="Vulcan's Pearl"})
  588. end
  589. equip(equipSet)
  590. end
  591. elseif spell.type == "JobAbility" then
  592. if sets.JA[spell.english] then
  593. equip(sets.JA[spell.english])
  594. end
  595. elseif spell.type:endswith('Magic') or spell.type == 'Ninjutsu' then
  596. if string.find(spell.english,'Utsusemi') then
  597. if buffactive['Copy Image (3)'] or buffactive['Copy Image (4)'] then
  598. cancel_spell()
  599. add_to_chat(123, spell.name .. ' Canceled: [3+ Images]')
  600. return
  601. else
  602. equip(sets.Precast.FastCast)
  603. end
  604. else
  605. equip(sets.Precast.FastCast)
  606. end
  607. elseif spell.type == "Waltz" then
  608. refine_waltz(spell,action)
  609. equip(sets.Waltz)
  610. elseif spell.english == 'Spectral Jig' and buffactive.Sneak then
  611. cast_delay(0.2)
  612. send_command('cancel Sneak')
  613. end
  614. if Twilight == 'Twilight' then
  615. equip(sets.Twilight)
  616. end
  617. end
  618.  
  619. function midcast(spell,action)
  620. if spell.type:endswith('Magic') or spell.type == 'Ninjutsu' then
  621. if string.find(spell.english,'Utsusemi') then
  622. if spell.english == 'Utsusemi: Ichi' and (buffactive['Copy Image'] or buffactive['Copy Image (2)']) then
  623. send_command('@wait 1.7;cancel Copy Image*')
  624. end
  625. equip(sets.Midcast.Haste)
  626. elseif spell.english == 'Monomi: Ichi' then
  627. if buffactive['Sneak'] then
  628. send_command('@wait 1.7;cancel sneak')
  629. end
  630. equip(sets.Midcast.Haste)
  631. else
  632. equip(sets.Midcast.Haste)
  633. end
  634. end
  635. end
  636.  
  637. function aftercast(spell,action)
  638. if not spell.interrupted then
  639. if spell.type == "WeaponSkill" then
  640. send_command('wait 0.2;gs c TP')
  641. elseif spell.english == "Warding Circle" then -- Warding Circle Countdown --
  642. send_command('wait 260;input /echo '..spell.name..': [WEARING OFF IN 10 SEC.];wait 10;input /echo '..spell.name..': [OFF]')
  643. end
  644. end
  645. status_change(player.status)
  646. end
  647.  
  648. function status_change(new,old)
  649. if Armor == 'PDT' then
  650. equip(sets.PDT)
  651. elseif Armor == 'MDT' then
  652. equip(sets.MDT)
  653. elseif new == 'Engaged' then
  654. equipSet = sets.TP
  655. if Armor == 'Hybrid' and equipSet["Hybrid"] then
  656. equipSet = equipSet["Hybrid"]
  657. end
  658. if equipSet[WeaponArray[WeaponIndex]] then
  659. equipSet = equipSet[WeaponArray[WeaponIndex]]
  660. end
  661. if equipSet[AccArray[AccIndex]] then
  662. equipSet = equipSet[AccArray[AccIndex]]
  663. end
  664. if buffactive["Aftermath: Lv.3"] and equipSet["AM3"] then
  665. equipSet = equipSet["AM3"]
  666. end
  667. if buffactive.Ionis and equipSet["Ionis"] then
  668. equipSet = equipSet["Ionis"]
  669. end
  670. if buffactive["Samurai Roll"] and equipSet["STP"] and Samurai_Roll == 'ON' then
  671. equipSet = equipSet["STP"]
  672. end
  673. if buffactive.Seigan and Seigan == 'ON' then -- Use Seigan Toggle For Seigan TP Set --
  674. equipSet = set_combine(equipSet,sets.TP.Seigan)
  675. end
  676. if buffactive["Third Eye"] and Third_Eye == 'ON' then -- Use Third Eye Toggle For Third Eye TP Set --
  677. equipSet = set_combine(equipSet,sets.TP["Third Eye"])
  678. end
  679. equip(equipSet)
  680. else
  681. equipSet = sets.Idle
  682. if equipSet[IdleArray[IdleIndex]] then
  683. equipSet = equipSet[IdleArray[IdleIndex]]
  684. end
  685. if equipSet[WeaponArray[WeaponIndex]] then
  686. equipSet = equipSet[WeaponArray[WeaponIndex]]
  687. end
  688. equip(equipSet)
  689. end
  690. if Twilight == 'Twilight' then
  691. equip(sets.Twilight)
  692. end
  693. end
  694.  
  695. function buff_change(buff,gain)
  696. buff = string.lower(buff)
  697. if buff == "aftermath: lv.3" then -- AM3 Timer/Countdown --
  698. if gain then
  699. 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.]')
  700. else
  701. send_command('timers delete "Aftermath: Lv.3"')
  702. add_to_chat(123,'AM3: [OFF]')
  703. end
  704. elseif buff == "perfect defense" then -- PD Timer --
  705. if gain then
  706. send_command('timers create "Perfect Defense" 57 down')
  707. else
  708. send_command('timers delete "Perfect Defense"')
  709. add_to_chat(123,'PD: [OFF]')
  710. end
  711. elseif buff == "yaegasumi" then -- Yaegasumi Timer --
  712. if gain then
  713. send_command('timers create "Yaegasumi" 45 down')
  714. else
  715. send_command('timers delete "Yaegasumi"')
  716. add_to_chat(123,'Yaegasumi: [OFF]')
  717. end
  718. elseif buff == 'weakness' then -- Weakness Timer --
  719. if gain then
  720. send_command('timers create "Weakness" 300 up')
  721. else
  722. send_command('timers delete "Weakness"')
  723. end
  724. end
  725. if buff == "sleep" and gain and player.hp > 200 and player.status == "Engaged" then -- Equip Berserker's Torque When You Are Asleep & Have 200+ HP --
  726. equip({neck="Berserker's Torque"})
  727. else
  728. if not midaction() then
  729. status_change(player.status)
  730. end
  731. end
  732. end
  733.  
  734. -- In Game: //gs c (command), Macro: /console gs c (command), Bind: gs c (command) --
  735. function self_command(command)
  736. if command == 'Accuracy' then -- Accuracy Toggle --
  737. AccIndex = (AccIndex % #AccArray) + 1
  738. add_to_chat(158,'Accuracy Level: '..AccArray[AccIndex])
  739. status_change(player.status)
  740. elseif command == 'Weapon' then -- Main Weapon Toggle --
  741. WeaponIndex = (WeaponIndex % #WeaponArray) + 1
  742. add_to_chat(158,'Main Weapon: '..WeaponArray[WeaponIndex])
  743. status_change(player.status)
  744. elseif command == 'Update' then -- Auto Update Gear Toggle --
  745. status_change(player.status)
  746. add_to_chat(158,'Auto Update Gear')
  747. elseif command == 'Hybrid' then -- Hybrid Toggle --
  748. if Armor == 'Hybrid' then
  749. Armor = 'None'
  750. add_to_chat(123,'Hybrid Set: [Unlocked]')
  751. else
  752. Armor = 'Hybrid'
  753. add_to_chat(158,'Hybrid Set: '..AccArray[AccIndex])
  754. end
  755. status_change(player.status)
  756. elseif command == 'PDT' then -- PDT Toggle --
  757. if Armor == 'PDT' then
  758. Armor = 'None'
  759. add_to_chat(123,'PDT Set: [Unlocked]')
  760. else
  761. Armor = 'PDT'
  762. add_to_chat(158,'PDT Set: [Locked]')
  763. end
  764. status_change(player.status)
  765. elseif command == 'MDT' then -- MDT Toggle --
  766. if Armor == 'MDT' then
  767. Armor = 'None'
  768. add_to_chat(123,'MDT Set: [Unlocked]')
  769. else
  770. Armor = 'MDT'
  771. add_to_chat(158,'MDT Set: [Locked]')
  772. end
  773. status_change(player.status)
  774. elseif command == 'C16' then -- Seigan Toggle --
  775. if Seigan == 'ON' then
  776. Seigan = 'OFF'
  777. add_to_chat(123,'Seigan Set: [Unlocked]')
  778. else
  779. Seigan = 'ON'
  780. add_to_chat(158,'Seigan Set: [Locked]')
  781. end
  782. status_change(player.status)
  783. elseif command == 'C12' then -- Third Eye Toggle --
  784. if Third_Eye == 'ON' then
  785. Third_Eye = 'OFF'
  786. add_to_chat(123,'Third Eye Set: [Unlocked]')
  787. else
  788. Third_Eye = 'ON'
  789. add_to_chat(158,'Third Eye Set: [Locked]')
  790. end
  791. status_change(player.status)
  792. elseif command == 'SAM' then -- SAM Roll Toggle --
  793. if Samurai_Roll == 'ON' then
  794. Samurai_Roll = 'OFF'
  795. add_to_chat(123,'SAM Roll: [OFF]')
  796. else
  797. Samurai_Roll = 'ON'
  798. add_to_chat(158,'SAM Roll: [ON]')
  799. end
  800. status_change(player.status)
  801. elseif command == 'C9' then -- Attack Toggle --
  802. if Attack == 'ON' then
  803. Attack = 'OFF'
  804. add_to_chat(123,'Attack: [OFF]')
  805. else
  806. Attack = 'ON'
  807. add_to_chat(158,'Attack: [ON]')
  808. end
  809. status_change(player.status)
  810. elseif command == 'C3' then -- Twilight Toggle --
  811. if Twilight == 'Twilight' then
  812. Twilight = 'None'
  813. add_to_chat(123,'Twilight Set: [Unlocked]')
  814. else
  815. Twilight = 'Twilight'
  816. add_to_chat(158,'Twilight Set: [locked]')
  817. end
  818. status_change(player.status)
  819. elseif command == 'C8' then -- Distance Toggle --
  820. if player.target.distance then
  821. target_distance = math.floor(player.target.distance*10)/10
  822. add_to_chat(158,'Distance: '..target_distance)
  823. else
  824. add_to_chat(123,'No Target Selected')
  825. end
  826. elseif command == 'C10' then -- Cancel Meikyo Shisui --
  827. send_command('Cancel Meikyo Shisui')
  828. add_to_chat(123,'Meikyo Shisui: [OFF]')
  829. elseif command == 'Town' then -- Idle Toggle --
  830. IdleIndex = (IdleIndex % #IdleArray) + 1
  831. add_to_chat(158,'Idle Set: '..IdleArray[IdleIndex])
  832. status_change(player.status)
  833. elseif command == 'TP' then
  834. add_to_chat(158,'TP Return: ['..tostring(player.tp)..']')
  835. elseif command:match('^SC%d$') then
  836. send_command('//'..sc_map[command])
  837. end
  838. end
  839.  
  840. function refine_waltz(spell,action)
  841. if spell.type ~= 'Waltz' then
  842. return
  843. end
  844.  
  845. if spell.name == "Healing Waltz" or spell.name == "Divine Waltz" or spell.name == "Divine Waltz II" then
  846. return
  847. end
  848.  
  849. local newWaltz = spell.english
  850. local waltzID
  851.  
  852. local missingHP
  853.  
  854. if spell.target.type == "SELF" then
  855. missingHP = player.max_hp - player.hp
  856. elseif spell.target.isallymember then
  857. local target = find_player_in_alliance(spell.target.name)
  858. local est_max_hp = target.hp / (target.hpp/100)
  859. missingHP = math.floor(est_max_hp - target.hp)
  860. end
  861.  
  862. if missingHP ~= nil then
  863. if player.sub_job == 'DNC' then
  864. if missingHP < 40 and spell.target.name == player.name then
  865. add_to_chat(123,'Full HP!')
  866. cancel_spell()
  867. return
  868. elseif missingHP < 150 then
  869. newWaltz = 'Curing Waltz'
  870. waltzID = 190
  871. elseif missingHP < 300 then
  872. newWaltz = 'Curing Waltz II'
  873. waltzID = 191
  874. else
  875. newWaltz = 'Curing Waltz III'
  876. waltzID = 192
  877. end
  878. else
  879. return
  880. end
  881. end
  882.  
  883. local waltzTPCost = {['Curing Waltz'] = 20, ['Curing Waltz II'] = 35, ['Curing Waltz III'] = 50, ['Curing Waltz IV'] = 65, ['Curing Waltz V'] = 80}
  884. local tpCost = waltzTPCost[newWaltz]
  885.  
  886. local downgrade
  887.  
  888. if player.tp < tpCost and not buffactive.trance then
  889.  
  890. if player.tp < 20 then
  891. add_to_chat(123, 'Insufficient TP ['..tostring(player.tp)..']. Cancelling.')
  892. cancel_spell()
  893. return
  894. elseif player.tp < 35 then
  895. newWaltz = 'Curing Waltz'
  896. elseif player.tp < 50 then
  897. newWaltz = 'Curing Waltz II'
  898. elseif player.tp < 65 then
  899. newWaltz = 'Curing Waltz III'
  900. elseif player.tp < 80 then
  901. newWaltz = 'Curing Waltz IV'
  902. end
  903.  
  904. downgrade = 'Insufficient TP ['..tostring(player.tp)..']. Downgrading to '..newWaltz..'.'
  905. end
  906.  
  907. if newWaltz ~= spell.english then
  908. send_command('@input /ja "'..newWaltz..'" '..tostring(spell.target.raw))
  909. if downgrade then
  910. add_to_chat(158, downgrade)
  911. end
  912. cancel_spell()
  913. return
  914. end
  915.  
  916. if missingHP > 0 then
  917. add_to_chat(158,'Trying to cure '..tostring(missingHP)..' HP using '..newWaltz..'.')
  918. end
  919. end
  920.  
  921. function find_player_in_alliance(name)
  922. for i,v in ipairs(alliance) do
  923. for k,p in ipairs(v) do
  924. if p.name == name then
  925. return p
  926. end
  927. end
  928. end
  929. end
  930.  
  931. function sub_job_change(newSubjob, oldSubjob)
  932. select_default_macro_book()
  933. end
  934.  
  935. function set_macro_page(set,book)
  936. if not tonumber(set) then
  937. add_to_chat(123,'Error setting macro page: Set is not a valid number ('..tostring(set)..').')
  938. return
  939. end
  940. if set < 1 or set > 10 then
  941. add_to_chat(123,'Error setting macro page: Macro set ('..tostring(set)..') must be between 1 and 10.')
  942. return
  943. end
  944.  
  945. if book then
  946. if not tonumber(book) then
  947. add_to_chat(123,'Error setting macro page: book is not a valid number ('..tostring(book)..').')
  948. return
  949. end
  950. if book < 1 or book > 20 then
  951. add_to_chat(123,'Error setting macro page: Macro book ('..tostring(book)..') must be between 1 and 20.')
  952. return
  953. end
  954. send_command('@input /macro book '..tostring(book)..';wait .1;input /macro set '..tostring(set))
  955. else
  956. send_command('@input /macro set '..tostring(set))
  957. end
  958. end
  959.  
  960. function select_default_macro_book()
  961. -- Default macro set/book
  962. if player.sub_job == 'WAR' then
  963. set_macro_page(10, 4)
  964. elseif player.sub_job == 'DNC' then
  965. set_macro_page(3, 12)
  966. elseif player.sub_job == 'DRK' then
  967. set_macro_page(2, 12)
  968. elseif player.sub_job == 'NIN' then
  969. set_macro_page(5, 12)
  970. else
  971. set_macro_page(1, 12)
  972. end
  973. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement