Advertisement
Guest User

SMN.lua

a guest
Sep 5th, 2016
451
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 14.46 KB | None | 0 0
  1. -------------------------------------------------------------------------------------------------------------------
  2. -- Global settings
  3. -------------------------------------------------------------------------------------------------------------------
  4.  
  5. -- You'll need the Shortcuts addon to handle the auto-targetting of the custom pact commands.
  6. -- I really recommend if you use this, it's on a full keyboard it uses a lot of keybinds.  If you are imaginative there is enough keybinds using window and app key to go around though.  A supported macro keyboard also helps.  I use a Strix Tactic Pro that a windower developer kindly made work with Windower.
  7. --
  8.  
  9. display_hud = true -- can toggle with app/menu key + 0
  10. display_states = false -- can toggle with app/menu key + 8
  11. --app/menu key + 9 will force the hud to refresh in case of any bugs/to trouble shoot bugs
  12. base_icon_dir = 'D:/Program Files (x86)/Windower4/addons/Gearswap/data/icons/' --had to use absolute pathing, set this to the icon directory
  13. hud_x_pos = 1500 --important to update these if you have a smaller screen
  14. hud_y_pos = 200
  15. hud_draggable = false -- really recommend leaving it false for now, after the icons were introduced it gets kind of buggy.
  16. hud_font_size = 12
  17. hud_icon_width = 32 --the size of icons from plugins folder, if you change the icons in icon folder you gave above, set the width height here
  18. hud_icon_height = 32 --the size of icons from plugins folder, if you change the icons in icon folder you gave above, set the width height here
  19. hud_transparency = 220 -- a value of 0 (invisible) to 255 (no transparency at all)
  20. debug_gs1 = false --outputs info if you're trying to debug sets
  21. --Whether to let organizer see these sets or not, or to leave them at home, cramped inventory means I don't need to always have all these
  22. usemephitas = false --will equip mephitas +1 ring if you are near full mana, can be useful to do just before conduit etc
  23. use_melee = true
  24. use_enfeeb = true
  25. use_player_mab = true
  26. use_resistant = false
  27. conduit_lock = true
  28. --shattersoul_set = true
  29. --use_bliss = true
  30. --use_cataclysm = true
  31. exp_rings = false
  32. load_debugging = false
  33. useall_bp_reduction_gear = false --if doing salvage useful to use all the bp reduction gear you can
  34.  
  35. cureIV = false --Macros use cure3 or cure4
  36. if player.sub_job == 'WHM' or player.sub_job == 'RDM' then
  37.     cureIV = true
  38. end
  39.  
  40.  
  41. -------------------------------------------------------------------------------------------------------------------
  42. -- Key bindings, and toggles/switches using mote's libraries.  Feel free to change key bindings
  43. -- ! = alt, ^ = ctrl, @ = windows key, # = menu key/app key,
  44. -- putting % after any of these disables the keybind if you are typing in a chat window
  45. -------------------------------------------------------------------------------------------------------------------
  46. -- Setup vars that are user-dependent.  Can override this function in a sidecar file.
  47. function user_setup()
  48.     state.OffenseMode:options('Perp', 'Melee')
  49.     state.CastingMode:options('Normal', 'Resistant','PDT')
  50.     --state.IdleMode:options('Normal', 'PDT')
  51.     state.damagetaken = M{['description']="Damage Taken",'None','MDT'}
  52.     --state.damagetaken = M{['description']="Damage Taken",'None','DT', 'PDT', 'MDT'} --can use this line instead and cycle more damage resistance types
  53.     state.petdamagetaken = M{['description']="Pet Damage Taken",'None','DT'}
  54.     state.cpmode = M(false, 'CP Mode')
  55.     state.movement = M(false, 'Movement Mode')
  56.     state.tplock = M(false, 'Staff Lock')
  57.     state.kclub = M(false, 'Kraken Club')
  58.     state.impactmode = M(false, 'Impact Debuff Mode')
  59.     state.favor = M{['description'] = 'Favor Mode'}
  60.     state.favor:options('mpsaver','allout')
  61.     state.burstmode = M{['description'] = 'Burst Mode'}
  62.     state.burstmode:options('Normal','Burst')
  63.     state.pullmode = M(false, 'Pull Mode')
  64.     state.idlehealer = M(false, 'Idle Healer')
  65.     state.bpmagicacc = M(false, 'BP Accuracy Mode')
  66.  
  67.     --multiboxing binds
  68.     --send_command('alias testecho echo hi')
  69.     --send_command('lua l send_commands')
  70.    
  71. --    send_command('alias stp_m14 send Blua s_cmd1; send Flupplewolfe s_cmd1')--follow verda
  72. --    send_command('alias stp_m15 send Blua s_cmd2; send Flupplewolfe s_cmd2')--curaga's
  73. --    send_command('alias stp_m16 send Blua s_cmd3; wait .5; send Flupplewolfe s_cmd3; wait .5; s_cmd3')--teleport crystal
  74. --    send_command('alias stp_m17 send Blua s_cmd4; wait .5; send Flupplewolfe s_cmd4;wait .5; s_cmd4')--enter WKR
  75. --    send_command('alias stp_m18 send Blua s_cmd5; wait .5; send Flupplewolfe s_cmd5;wait .5; s_cmd5')--exit WKR
  76. --    send_command('alias stp_m19 send Blua s_cmd6; wait .5; send Flupplewolfe s_cmd6;wait .5; s_cmd6')--purchase KIs
  77. --    --send_command('alias stp_m20 send Blua s_cmd7; wait 1; send Flupplewolfe s_cmd7;wait 1; gs c warpring')--warp home
  78. --    send_command('alias stp_m20 input /ma "Warp II" Blua;wait 7;input /ma "Warp II" Flupplewolfe;wait 5;input /ma "Warp" <me>')--warp home
  79. --    send_command('alias stp_m21 send Blua s_cmd8; wait .5; send Flupplewolfe s_cmd8;wait .5; s_cmd8')--purchase KIs
  80. --    send_command('alias stp_m9 send Blua s_cmd9; wait .5; send Flupplewolfe s_cmd9;wait .5; s_cmd9')--teleport crystal 2
  81.  
  82.     send_command('alias s1 input /p (1) On Wind/Detonation next Ice/Induration')
  83.     send_command('alias s2 input /p (2) On Ice/Induration next Fire/Liquefication')
  84.     send_command('alias s3 input /p (3) On Fire/Liquefication next Dark/Compression')
  85.     send_command('alias s4 input /p (4) On Dark/Compression next Thunder/Impaction')
  86.     send_command('alias s5 input /p (5) On Thunder/Impaction next Wind/Detonation')
  87.  
  88.     --gear.perp_staff = {name="Nirvana"}
  89.    
  90.     select_default_macro_book()
  91.     send_command('bind @numpad1 gs c smn carbuncle')
  92.     send_command('bind @numpad2 gs c smn fenrir')
  93.     send_command('bind @numpad3 gs c smn ifrit')
  94.     send_command('bind @numpad4 gs c smn titan')
  95.     send_command('bind @numpad5 gs c smn leviathan')
  96.     send_command('bind @numpad6 gs c smn garuda')
  97.     send_command('bind @numpad7 gs c smn shiva')
  98.     send_command('bind @numpad8 gs c smn ramuh')
  99.     send_command('bind @numpad9 gs c smn diabolos')
  100.     send_command('bind @numpad0 gs c smn caitsith')
  101.     send_command('bind @numpadenter gs c smn atomos')
  102.     send_command('bind @numpad. gs c smn lightspirit')
  103.  
  104.     send_command('bind !delete input /ja "Avatar\'s Favor"')
  105.     send_command('bind !pagedown input /ja "Apogee"')
  106.     send_command('bind !end input /ja "Sublimation"')
  107.  
  108.     send_command('bind @home gs c warpring')
  109.     send_command('bind @c input /ma "Dia" <t>')
  110.     send_command('bind #0 gs c toggle_hud')
  111.     send_command('bind #9 gs c force_hud_refresh')
  112.     send_command('bind #8 gs c toggle_states')
  113.     --send_command('bind #1 input /item "Forbidden Key" <t>;wait .5;setkey enter down;wait .1;setkey enter up')
  114.     --send_command('bind @%1 input /item "Forbidden Key" <t>;wait .5;setkey enter down;wait .1;setkey enter up')
  115.     send_command('bind @%2 input /ma "Dia" <t>')
  116.  
  117.     if cureIV then
  118.         send_command('alias stp_m1 input /ma "Cure IV" <p0>')
  119.         send_command('alias stp_m2 input /ma "Cure IV" <p1>')
  120.         send_command('alias stp_m3 input /ma "Cure IV" <p2>')
  121.         send_command('alias stp_m4 input /ma "Cure IV" <p3>')
  122.         send_command('alias stp_m5 input /ma "Cure IV" <p4>')
  123.         send_command('alias stp_m6 input /ma "Cure IV" <p5>')
  124.         send_command('alias stp_m7 input /ma "Cure IV"')
  125.     else
  126.         send_command('alias stp_m1 input /ma "Cure III" <p0>')
  127.         send_command('alias stp_m2 input /ma "Cure III" <p1>')
  128.         send_command('alias stp_m3 input /ma "Cure III" <p2>')
  129.         send_command('alias stp_m4 input /ma "Cure III" <p3>')
  130.         send_command('alias stp_m5 input /ma "Cure III" <p4>')
  131.         send_command('alias stp_m6 input /ma "Cure III" <p5>')
  132.         send_command('alias stp_m7 input /ma "Cure III"')
  133.     end
  134.     send_command('alias trust_wkr input /ma "August" <me>;wait 5;input /ma "Yoran-Oran (UC)" <me>;wait 5;input /ma "Qultada" <me>')
  135.     send_command('alias trust_dmn input /ma "August" <me>;wait 5;input /ma "Yoran-Oran (UC)" <me>;wait 5;input /ma "Qultada" <me>;wait 5;input /ma "Selh\'teus" <me>;wait 5;input /ma "Ulmia" <me>')
  136.     send_command('alias trust_woe input /ma "August" <me>;wait 5;input /ma "Yoran-Oran (UC)" <me>;wait 5;input /ma "Ullegore" <me>;wait 5;input /ma "Adelheid" <me>;wait 5;input /ma "Zeid II" <me>')
  137.     send_command('alias trust_bcnm input /ma "Gessho" <me>;wait 5;input /ma "Yoran-Oran (UC)" <me>;wait 5;input /ma "Selh\'teus" <me>;wait 5;input /ma "Uka Tothlin" <me>;wait 5;input /ma "Arciela II" <me>')
  138.     --send_command('alias trust_wkr input /ma "August" <me>;')
  139.    
  140.     --send_command('alias stp_m8 input /ma "Regen II"')
  141.     send_command('alias stp_m8 gs c nukemode')
  142.     --send_command('alias stp_m9 gs c supportmode')
  143.     --send_command('alias stp_m10 gs c switch_dualbox_binds')
  144.     --send_command('alias stp_m10 input /pet "Mewing Lullaby" <t>;wait .5;input /p / mew')
  145.     send_command('alias stp_m11 gs c release')
  146.     send_command('alias stp_m12 input /pet "Retreat" <me>')
  147.     send_command('alias stp_m13 input /pet "Assault" <t>')
  148.     --send_command('alias stp_m14 input /ma "Light Spirit" <me>')
  149.  
  150.     --if you don't use a macro keyboard then you could use these
  151.     send_command('bind ^%numpad1 gs c release')
  152.     send_command('bind ^%numpad2 input /pet "Retreat" <me>')
  153.     send_command('bind ^%numpad3 input /pet "Assault" <t>')
  154.  
  155.     send_command('alias stp_m11 gs c release')
  156.     send_command('alias stp_m12 input /pet "Retreat" <me>')
  157.     send_command('alias stp_m13 input /pet "Assault" <t>')
  158.     --send_command('alias stp_m14 input /ma "Light Spirit" <me>')
  159.  
  160.     --shortcuts
  161.     send_command('alias si input /ma sneak;wait 4;input /ma invisible')
  162.     send_command('alias sn input /ma sneak')
  163.     send_command('alias in input /ma invisible')
  164.     send_command('alias f1 input /ma fire;wait 3.5;input /ma fire')
  165.     send_command('alias t1 input /ma thunder;wait 3.5;input /ma thunder')
  166.     send_command('alias p input /ma paralyna')
  167.     send_command('alias l input /ma aurorastorm')
  168.     send_command('alias po input /ma poisona')
  169.     send_command('alias e input /ma erase')
  170.     send_command('alias c input /ma cursna')
  171.     send_command('alias s input /ma silena')
  172.     send_command('alias st input /ma stona')
  173.     send_command('alias b input /ma blindna')
  174.     send_command('alias bu input /ma stoneskin;wait 4.9;input /ma aquaveil;wait 4.6;input /ma refresh;wait 4.5;input /ma regen')
  175.     send_command('alias ss input /ma stoneskin')
  176.     send_command('alias bl input /ma blink')
  177.     send_command('alias r input /ma refresh')
  178.     send_command('alias rr input /ma reraise')
  179.     send_command('alias  input /ma aquaveil')
  180.     send_command('alias rg lua r gearswap')
  181.     send_command('alias cl gs c conduit_lock')
  182.  
  183.     --alt
  184.     send_command('bind !1 gs c pact cure')
  185.     send_command('bind !2 gs c pact curaga')
  186.     send_command('bind !3 gs c pact buffoffense')
  187.     send_command('bind !4 gs c pact buffdefense')
  188.     send_command('bind !5 gs c pact buffspecial')
  189.     send_command('bind !6 gs c pact debuff1')
  190.     send_command('bind !7 gs c pact debuff2')
  191.     send_command('bind !8 gs c pact sleep')
  192.     send_command('bind !9 gs c pact misc2')
  193.     --send_command('bind !0 input /item "Ginger Cookie" <stnpc>; wait 1; input /item "Ginger Cookie" <lastst>; wait 1;input /item "Ginger Cookie" <lastst>') --halloween event.. >.>
  194.  
  195.     --ctrl
  196.     send_command('bind ^1 gs c pact nuke2')
  197.     send_command('bind ^2 gs c pact nuke4')
  198.     send_command('bind ^3 gs c pact bp70')
  199.     send_command('bind ^4 gs c pact bp75')
  200.     send_command('bind ^5 gs c pact bprage1')
  201.     send_command('bind ^6 gs c pact astralflow')
  202.     send_command('bind ^7 gs c pact misc1')
  203.     --send_command('bind ^9 gs c pact misc3')
  204.     --send_command('bind ^9 input /pet "Release" <me>')
  205.  
  206.     --send_command('bind ^0 gs c pact misc4')
  207.  
  208.     --send_command('bind ^o gs c switchmode')
  209.     --send_command('bind ^o gs c switch_dualbox_binds')
  210.    
  211.     send_command('bind !q gs c siphon')
  212.     send_command('bind !o input /map')
  213.     send_command('bind !%numpad+ input /map')
  214.     send_command('bind !%numpad- gs c fleet_wind')
  215.     send_command('bind f11 gs c cycle damagetaken')
  216.     send_command('bind !f11 gs c cycle petdamagetaken')
  217.     send_command('bind ^f11 gs c toggle pullmode')
  218.     send_command('bind @f11 gs c toggle idlehealer')
  219.     send_command('bind f10 gs c toggle movement')
  220.     send_command('bind ^f10 gs c cycle favor')
  221.     send_command('bind !f10 gs c cycle impactmode')
  222.     send_command('bind !f9 gs c cycle burstmode')
  223.     send_command('bind ^f9 gs c cycle bpmagicacc')
  224.     --send_command('bind ^[ gs c cpmode')
  225.     send_command('bind ^[ gs c toggle cpmode')
  226.     send_command('bind ![ gs c toggle tplock')
  227.     send_command('bind ![ gs c toggle tplock')
  228.     send_command('bind !insert gs c toggle kclub')
  229.     send_command('bind ^] gs c buffrotation')
  230.     --send_command('bind %numpad1 setkey f8 down;wait .1;setkey f8 up;input /pet "Flaming Crush" <t>')
  231.     send_command('bind %numpad1 setkey f8 down;wait .1;setkey f8 up;wait .1;input /attack <t>')
  232.     send_command('bind %numpad3 input /ws "Garland of Bliss" <t>')
  233.     --send_command('bind %numpad3 setkey f8 down;wait .1;setkey f8 up;wait .1;input /pet "Assault" <t>')
  234.     --send_command('bind %numpad3 setkey f8 down;wait .1;setkey f8 up;input /pet "Sleepga" <t>')
  235.     --send_command('bind %numpad3 input /pet "Flaming Crush" <t>')
  236.     --send_command('bind !%numpad. gs c smn lightspirit')
  237.     --
  238.     send_command('alias c input /targetnpc;wait 1;input /item "Rubicund Cell" <t>;wait 1;input /item "Cobalt Cell" <t>;wait 1;input /item "Phase Displacer" <t>;wait 1;input /item "Phase Displacer" <t>;wait 1;input /item "Phase Displacer" <t>;wait 1;input /item "Phase Displacer" <t>;wait 1;input /item "Phase Displacer" <t>;')
  239.     send_command('alias stp_m10 input /pet "Mewing Lullaby" <t>;wait 1;input /p Mewing <t>;wait 11;input /p Mili Mew :3 ')
  240.  
  241.     setup_hud() -- HUD for summoner, don't modify this line --
  242. end
  243.  
  244. -------------------------------------------------------------------------------------------------------------------
  245. -- Sets, modify these :D
  246. -------------------------------------------------------------------------------------------------------------------
  247.  
  248. use_dualbox = false
  249. -- Define sets and vars used by this job file.
  250. function init_gear_sets()
  251.     require(player.name..'-SMN-sets.lua')
  252. end
  253.  
  254. include(player.name..'-SMN-lib.lua') -- Leave this line to include all the library functionality --
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement