Guest User

Geo.lua

a guest
Aug 4th, 2014
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 13.63 KB | None | 0 0
  1. -------------------------------------------------------------------------------------------------------------------
  2. -- Initialization function that defines sets and variables to be used.
  3. -------------------------------------------------------------------------------------------------------------------
  4.  
  5. -- IMPORTANT: Make sure to also get the Mote-Include.lua file (and its supplementary files) to go with this.
  6.  
  7. -- Initialization function for this job file.
  8. function get_sets()
  9. -- Load and initialize the include file.
  10. include('Mote-Include.lua')
  11. end
  12.  
  13. -- Setup vars that are user-independent.
  14. function job_setup()
  15.  
  16. end
  17.  
  18. -- Setup vars that are user-dependent. Can override this function in a sidecar file.
  19. function user_setup()
  20. -- Options: Override default values
  21. options.OffenseModes = {'Normal'}
  22. options.DefenseModes = {'Normal'}
  23. options.WeaponskillModes = {'Normal'}
  24. options.IdleModes = {'Normal', 'PDT'}
  25. options.RestingModes = {'Normal'}
  26. options.PhysicalDefenseModes = {'PDT'}
  27. options.MagicalDefenseModes = {'MDT'}
  28.  
  29. state.Defense.PhysicalMode = 'PDT'
  30.  
  31. -- Default macro set/book
  32. set_macro_page(5, 1)
  33. end
  34.  
  35. -- Called when this job file is unloaded (eg: job change)
  36. function file_unload()
  37. if binds_on_unload then
  38. binds_on_unload()
  39. end
  40. end
  41.  
  42.  
  43. -- Define sets and vars used by this job file.
  44. function init_gear_sets()
  45. --------------------------------------
  46. -- Start defining the sets
  47. --------------------------------------
  48.  
  49. -- Precast Sets
  50.  
  51. -- Precast sets to enhance JAs
  52. sets.precast.JA['Life Cycle'] = {body="Geo. Tunic +1"}
  53. sets.precast.JA['Full Circle'] = {hands="Bagua Mitaines +1"}
  54. sets.precast.JA['Radial Arcana'] = {feet="Bagua Sandals +1"}
  55. sets.precast.JA['Bolster'] = {body="Bagua Tunic +1"}
  56. sets.precast.JA['Mending Halation'] = {legs="Bagua Pants +1"}
  57.  
  58. -- Fast cast sets for spells
  59. sets.precast.FC = {
  60. head="Nahtirah Hat",neck="Orunmila's Torque",ear2="Loquacious Earring",ammo="Impatiens",ear1="Magnetic Earring",
  61. body="Anhur Robe",hands="Repartie Gloves",ring1="Veneficium Ring",ring2="Prolix Ring",
  62. back="Lifestream Cape",waist="Witful Belt",legs="Geo. Pants +1",feet="Chelona Boots"}
  63.  
  64. sets.precast.FC.Stoneskin = set_combine(sets.precast.FC, {head="Umuthi Hat"})
  65.  
  66. sets.precast.FC.Cure = {
  67. head="Nahtirah Hat",neck="Orunmila's Torque",ear1="Magnetic Earring",ear2="Loquacious Earring",ammo="Impatiens",
  68. body="Heka's Kalasiris",hands="Repartie Gloves",ring1="Veneficium Ring",ring2="Prolix Ring",
  69. back="Pahtli Cape",waist="Witful Belt",legs="Geo. Pants +1",feet="Chelona Boots"}
  70.  
  71. sets.precast.FC['Elemental Magic'] = set_combine(sets.precast.FC, {hands="Bagua Mitaines +1"})
  72.  
  73. sets.precast.FC.Geomancy = {main="Idris",range="Dunna",
  74. head="Nahtirah Hat",neck="Orunmila's Torque",ear2="Loquacious Earring",ear1="Magnetic Earring",
  75. body="Anhur Robe",hands="Repartie Gloves",ring1="Veneficium Ring",ring2="Prolix Ring",
  76. back="Lifestream Cape",waist="Witful Belt",legs="Geo. Pants +1",feet="Chelona Boots"}
  77.  
  78.  
  79. -- Weaponskill sets: Specific weaponskill sets. Uses the base set if an appropriate WSMod version isn't found.
  80. sets.precast.WS['Realmrazer'] = {
  81. head="Espial Cap",neck="Light Gorget",ear1="Moonshade Earring",ear2="Brutal Earring",
  82. body="Espial Gambison",hands="Yaoyotl Gloves",ring1="Aquasoul Ring",ring2="Mars's Ring",
  83. back="Buquwik Cape",waist="Anguinus Belt",legs="Espial Hose",feet="Espial Socks"}
  84.  
  85. sets.precast.WS['Exudation'] = {main="Idris",sub="Cagliostro's Rod",ammo="Jukukik Feather",
  86. head="Buremte Hat",neck="Asperity Necklace",ear1="Steelflash Earring",ear2="Bladeborn Earring",
  87. body="Ischemia Chasu.",hands="Geo. Gloves +1",ring1="Levia. Ring +1",ring2="Levia. Ring +1",
  88. back="Refraction Cape",waist="Windbuffet Belt",legs="Mes'Yohi Slacks",feet="Bagua Sandals +1"}
  89.  
  90. sets.precast.WS['Seraph Strike'] = {ammo="Dosis Tathlum",
  91. head="Hagondes Hat",neck="Eddy Necklace",ear1="Friomisi Earring",ear2="Crematio Earring",
  92. body="Hagondes Coat +1",hands="Otomi Gloves",ring1="Acumen Ring",ring2="Levia. Ring +1",
  93. back="Toro Cape",waist="Sekhmet Corset",legs="Hagondes Pants +1",feet="Umbani Boots"}
  94.  
  95. sets.precast.WS['Starlight'] = {ear2="Moonshade Earring"}
  96.  
  97. sets.precast.WS['Moonlight'] = {ear2="Moonshade Earring"}
  98.  
  99. sets.precast.WS['Flash Nova'] = {
  100. head="Hagondes Hat",neck="Eddy Necklace",ear1="Friomisi Earring",ear2="Crematio Earring",ammo="Dosis Tathlum",
  101. body="Hagondes Coat +1",hands="Otomi Gloves",ring1="Acumen Ring",ring2="Levia. Ring +1",
  102. back="Toro Cape",waist="Sekhmet Corset",legs="Hagondes Pants +1",feet="Umbani Boots"}
  103.  
  104.  
  105. -- Midcast Sets
  106. sets.midcast.FastRecast = {
  107. head="Nahtirah Hat",neck="Orunmila's Torque",ear2="Loquacious Earring",
  108. body="Anhur Robe",hands="Repartie Gloves",ring2="Prolix Ring",
  109. back="Lifestream Cape",waist="Witful Belt",legs="Geo. Pants +1",feet="Chelona Boots"}
  110.  
  111. sets.midcast.Geomancy = {main="Idris",range="Dunna",
  112. head="Selenian Cap",ear1="Magnetic Earring",ear2="Loquacious Earring",
  113. body="Bagua Tunic +1",hands="Geo. Mitaines +1",ring2="Prolix Ring",
  114. back="Lifestream Cape",waist="Witful Belt",legs="Theurgist's Slacks",feet="Umbani Boots"}
  115.  
  116. sets.midcast.Indi = set_combine(sets.midcast.Geomancy, {legs="Bagua Pants"})
  117.  
  118. sets.midcast.Cure = {main="Tamaxchi",sub="Genbu's Shield",ammo="Impatiens",
  119. head="Nahtirah Hat",neck="Orunmila's Torque",ear1="Loquacious Earring",ear2="Beatific Earring",
  120. body="Heka's Kalasiris",hands="Bokwus Gloves",ring1="Sirona's Ring",ring2="Prolix Ring",
  121. back="Lifestream Cape",waist="Witful Belt",legs="Geo. Pants +1",feet="Chelona Boots"}
  122.  
  123. sets.midcast['Dark Magic'] = {main="Idis",sub="Genbu's Shield",
  124. head="Nahtirah Hat",neck="Aesir Torque",ear1="Psystorm Earring",ear2="Lifestorm Earring",
  125. body="Geo. Tunic +1",hands="Yaoyotl Gloves",ring1="Strendu Ring",ring2="Sangoma Ring",
  126. back="Refraction Cape",waist="Witful Belt",legs="Geomancy Pants",feet="Orvail Souliers +1"}
  127.  
  128. sets.midcast.Drain = {main="Idris",range="Dunna",
  129. head="Bagua Galero",neck="Weike Torque",ear1="Psystorm Earring",ear2="Lifestorm Earring",
  130. body="Geo. Tunic +1",hands="Lurid Mitts",ring1="Perception Ring",ring2="Sangoma Ring",
  131. back="Refraction Cape",waist="Witful Belt",legs="Mes'yohi Slacks",feet="Artsieq Boots"}
  132.  
  133. sets.midcast.Aspir = sets.midcast.Drain
  134. sets.midcast['Aspir II'] = sets.midcast.Drain
  135.  
  136. sets.midcast['Elemental Magic'] = {main="Idris",ammo="Dosis Tathlum",
  137. head="Hagondes Hat",neck="Eddy Necklace",ear1="Crematio Earring",ear2="Friomisi Earring",
  138. body="Hagondes Coat +1",hands="Otomi Gloves",ring1="Acumen Ring",ring2="Icesoul Ring",
  139. back="Toro Cape",waist="Sekhmet Corset",legs="Hagondes Pants +1",feet="Umbani Boots"}
  140.  
  141. sets.midcast['Protect III'] = {ring1="Sheltered Ring"}
  142. sets.midcast['Shell II'] = {ring1="Sheltered Ring"}
  143.  
  144. -- Enfeebling Magic Sets
  145. sets.midcast.MndEnfeebles = {main="Idris",
  146. head="Artsieq Hat",neck="Weike Torque",ear1="Psystorm Earring",ear2="Lifestorm Earring",
  147. body="Ischemia Chasu.",hands="Lurid Mitts",ring1="Levia. Ring +1",ring2="Levia. Ring +1",
  148. back="Lifestream Cape",waist="Bougonia Rope",legs="Mes'yohi Slacks",feet="Artsieq Boots"}
  149.  
  150. sets.midcast.IntEnfeebles = {main="Idris",
  151. head="Artsieq Hat",neck="Weike Torque",ear1="Psystorm Earring",ear2="Lifestorm Earring",
  152. body="Ischemia Chasu.",hands="Lurid Mitts",ring1="Perception Ring",ring2="Sangoma Ring",
  153. back="Lifestream Cape",waist="Bougonia Rope",legs="Mes'yohi Slacks",feet="Artsieq Boots"}
  154.  
  155. sets.midcast.ElementalEnfeeble = sets.midcast.IntEnfeebles
  156.  
  157.  
  158. -- Sets to return to when not performing an action.
  159.  
  160. -- Resting sets
  161. sets.resting = {range="Dunna",
  162. head="Nefer Khat",neck="Wiglen Gorget",ear1="Sanare Earring",ear2="Merman's Earring",
  163. body="Heka's Kalasiris",hands="Bagua Mitaines +1",ring1="Sheltered Ring",ring2="Paguroidea Ring",
  164. back="Umbra Cape",waist="Austerity Belt",legs="Nares Trews",feet="Chelona Boots"}
  165.  
  166.  
  167. -- Idle sets (default idle set not needed since the other three are defined, but leaving for testing purposes)
  168. sets.idle.Town = {main="Idris",range="Dunna",
  169. head="Nefer Khat",neck="Wiglen Gorget",ear1="Sanare Earring",ear2="Merman's Earring",
  170. body="Heka's Kalasiris",hands="Bagua Mitaines +1",ring1="Sheltered Ring",ring2="Paguroidea Ring",
  171. back="Umbra Cape",waist="Slipor Sash",legs="Nares Trews",feet="Geo. Sandals +1"}
  172.  
  173. sets.idle.Field = {main="Idris",range="Dunna",
  174. head="Nefer Khat",neck="Wiglen Gorget",ear1="Sanare Earring",ear2="Merman's Earring",
  175. body="Heka's Kalasiris",hands="Bagua Mitaines +1",ring1="Sheltered Ring",ring2="Defending Ring",
  176. back="Umbra Cape",waist="Slipor Sash",legs="Nares Trews",feet="Geo. Sandals +1"}
  177.  
  178. sets.idle.Field.PDT = {range="Dunna",
  179. head="Hagondes Hat",neck="Twilight Torque",ear1="Ethereal Earring",ear2="Loquacious Earring",
  180. body="Heka's Kalasiris",hands="Bagua Mitaines",ring1="Dark Ring",ring2="Dark Ring",
  181. back="Umbra Cape",waist="Witful Belt",legs="Hagondes Pants",feet="Geomancy Sandals"}
  182.  
  183. sets.idle.Weak = {range="Dunna",
  184. head="Hagondes Hat +1",neck="Twilight Torque",ear1="Sanare EArring",ear2="Merman's Earring",
  185. body="Hagondes Coat +1",hands="Geo. Mitaines +1",ring1="Defending Ring",ring2="Paguroidea Ring",
  186. back="Umbra Cape",waist="Slipor Sash",legs="Hagondes Pants +1",feet="Geo. Sandals +1"}
  187.  
  188. -- Defense sets
  189. sets.defense.PDT = {sub="Genbu's Shield",range="Nepote Bell",
  190. head="Hagondes Hat",neck="Twilight Torque",ear1="Ethereal Earring",ear2="Loquacious Earring",
  191. body="Heka's Kalasiris",hands="Bagua Mitaines",ring1="Dark Ring",ring2="Dark Ring",
  192. back="Shadow Mantle",waist="Goading Belt",legs="Hagondes Pants",feet="Geomancy Sandals"}
  193.  
  194. sets.defense.MDT = {sub="Genbu's Shield",range="Nepote Bell",
  195. head="Nahtirah Hat",neck="Twilight Torque",ear1="Ethereal Earring",ear2="Loquacious Earring",
  196. body="Heka's Kalasiris",hands="Bagua Mitaines",ring1="Merman's Ring",ring2="Merman's Ring",
  197. back="Shadow Mantle",waist="Goading Belt",legs="Hagondes Pants",feet="Geomancy Sandals"}
  198.  
  199. sets.Kiting = {feet="Geomancy Sandals"}
  200.  
  201. -- Engaged sets
  202.  
  203. -- Variations for TP weapon and (optional) offense/defense modes. Code will fall back on previous
  204. -- sets if more refined versions aren't defined.
  205. -- If you create a set with both offense and defense modes, the offense mode should be first.
  206. -- EG: sets.engaged.Dagger.Accuracy.Evasion
  207.  
  208. -- Normal melee group
  209. sets.engaged = {ammo="Jukukik Feather",
  210. head="Kaabnax Hat",neck="Iqabi Necklace",ear1="Dudgeon Earring",ear2="Heartseeker Earring",
  211. body="Ischemia Chasu.",hands="Bokwus Gloves",ring1="Enlivened Ring",ring2="Mars's Ring",
  212. back="Kayapa Cape",waist="Cetl Belt",legs="Bokwus Slops",feet="Geo. Sandals +1"}
  213. end
  214.  
  215. -------------------------------------------------------------------------------------------------------------------
  216. -- Job-specific hooks that are called to process player actions at specific points in time.
  217. -------------------------------------------------------------------------------------------------------------------
  218.  
  219. -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
  220. -- Set eventArgs.useMidcastGear to true if we want midcast gear equipped on precast.
  221. function job_precast(spell, action, spellMap, eventArgs)
  222.  
  223. end
  224.  
  225. -- Run after the general precast() is done.
  226. function job_post_precast(spell, action, spellMap, eventArgs)
  227.  
  228. end
  229.  
  230.  
  231. -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
  232. function job_midcast(spell, action, spellMap, eventArgs)
  233. if spell.action_type == 'Magic' then
  234. -- Default base equipment layer of fast recast.
  235. equip(sets.midcast.FastRecast)
  236. end
  237. end
  238.  
  239. -- Run after the general midcast() is done.
  240. function job_post_midcast(spell, action, spellMap, eventArgs)
  241.  
  242. end
  243.  
  244. -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
  245. function job_aftercast(spell, action, spellMap, eventArgs)
  246.  
  247. end
  248.  
  249.  
  250. -------------------------------------------------------------------------------------------------------------------
  251. -- Customization hooks for idle and melee sets, after they've been automatically constructed.
  252. -------------------------------------------------------------------------------------------------------------------
  253.  
  254. function customize_idle_set(idleSet)
  255. return idleSet
  256. end
  257.  
  258. function customize_melee_set(meleeSet)
  259. return meleeSet
  260. end
  261.  
  262. -------------------------------------------------------------------------------------------------------------------
  263. -- General hooks for other events.
  264. -------------------------------------------------------------------------------------------------------------------
  265.  
  266. -- Called when the player's status changes.
  267. function job_status_change(newStatus,oldStatus)
  268.  
  269. end
  270.  
  271. -- Called when a player gains or loses a buff.
  272. -- buff == buff gained or lost
  273. -- gain == true if the buff was gained, false if it was lost.
  274. function job_buff_change(buff, gain)
  275. --handle_equipping_gear(player.status)
  276. end
  277.  
  278.  
  279. -------------------------------------------------------------------------------------------------------------------
  280. -- User code that supplements self-commands.
  281. -------------------------------------------------------------------------------------------------------------------
  282.  
  283. -- Called for custom player commands.
  284. function job_self_command(cmdParams, eventArgs)
  285.  
  286. end
  287.  
  288. -- Called by the 'update' self-command.
  289. function job_update(cmdParams, eventArgs)
  290.  
  291. end
  292.  
  293. -- Function to display the current relevant user state when doing an update.
  294. -- Return true if display was handled, and you don't want the default info shown.
  295. function display_current_job_state()
  296.  
  297. end
  298.  
  299. -------------------------------------------------------------------------------------------------------------------
  300. -- Utility functions specific to this job.
  301. -------------------------------------------------------------------------------------------------------------------
Advertisement
Add Comment
Please, Sign In to add comment