-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathManhoso_GEO.lua
353 lines (314 loc) · 13.1 KB
/
Manhoso_GEO.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
function get_sets()
mote_include_version = 2
-- Load and initialise include file(s)
include('Mote-Include.lua')
include('common_lists.lua')
include('common_functions.lua')
-- Make sure all gear is unlocked after character swap
equipment_unlock_all()
end
-- ----------------------------------------------------------------------------------------------------
-- Setup vars that are user-independent. state.Buff vars initialized here will automatically be tracked
-- ----------------------------------------------------------------------------------------------------
function job_setup()
end
-- ----------------------------------------------------------------------------------------------------
--
-- ----------------------------------------------------------------------------------------------------
function user_setup()
-- Default states for automatic gear selection, needs to be defined for Mote-Include to run autonomously
-- state.OffenseMode:options('Normal')
-- state.HybridMode:options('Normal')
-- state.CastingMode:options('Normal')
-- state.IdleMode:options('Normal')
-- Which macro book to default to when changing jobs
-- select_default_macro_book(false)
-- Special states to track for White Mage
state.CP = M(false, "CP Mode") -- CP Mode: WHM is mastered, so likely won't need this anymore
state.Dynamis = M(false, "Dynamis Mode") -- Dynamis Mode: To force the dynamis neck piece to stay equipped
state.Debug = M(false, "Debug Mode") -- Debug Mode: Helpful for outputting information in the LUA. Not set up
-- state.OhShi = M(false, "OhShi Mode")
-- state.Weapons = M(false, "Weapons Mode")
-- Where @ is the Windows Key
send_command('bind @c gs c toggle CP') -- Windows Key + C: Toggle CP Mode
send_command('bind @x gs c toggle Dynamis') -- Windows Key + X: Toggle Dynamis Mode
send_command('bind @m input /map') -- Windows Key + M: Show map, because I'm lazy af
send_command('bind @1 gs c rr4') -- Windows Key + 1: Reraise 4
send_command('bind @z gs c toggle Debug') -- Windows Key + z: Togger Debug Mode
-- send_command('bind @v gs c toggle OhShi') -- Windows Key + v: Toggle OhShi Mode. Good for kiting
-- send_command('bind @n gs c toggle Weapons')
end
function user_unload()
send_command('unbind @c')
send_command('unbind @x')
send_command('unbind @m')
send_command('unbind @1')
send_command('unbind @z')
-- send_command('unbind @v')
-- send_command('unbind @n')
end
function init_gear_sets()
sets.latent_refresh = {}
sets.ToAU = {}
sets.Adoulin = {}
-- Gear sets for specific conditions and commands
-- Neck equipment to lock in while in dynamis
sets.JSENeck = {
neck = "",
}
sets.CapacityPoints = {
back = "Mecistopins Mantle",
}
-- -- Equipment that enhances the charge rate of Sublimation
-- sets.Sublimation = {
-- waist = "Embla Sash"
-- }
-- -- Equipment only active during reives
-- sets.Reives = {
-- neck = "Arciela's Grace +1"
-- }
-- Set for summoning Trusts. All iLevel 119
sets.Trust = {
-- main = "Bolelabunga",
-- sub = "Ammurapi Shield",
-- ammo = "Homiliary",
-- head = "Inyanga Tiara +2",
-- body = "Inyanga Jubbah +2",
-- hands = "Inyanga Dastanas +2",
-- legs = "Inyanga Shalwar +2",
-- feet = "Inyanga Crackows +2"
}
sets.idle={
main={ name="Solstice", augments={'Mag. Acc.+20','Pet: Damage taken -4%','"Fast Cast"+5',}},
sub="Culminus",
range={ name="Dunna", augments={'MP+20','Mag. Acc.+10','"Fast Cast"+3',}},
head="Befouled Crown",
body="Azimuth Coat",
hands={ name="Bagua Mitaines", augments={'Enhances "Curative Recantation" effect',}},
legs="Assiduity Pants",
feet="Geomancy Sandals",
neck="Sanctity Necklace",
waist="Eschan Stone",
left_ear="Infused Earring",
right_ear="Loquac. Earring",
left_ring="Renaye Ring",
right_ring="Fortified Ring",
back={ name="Nantosuelta's Cape", augments={'INT+20','Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','"Fast Cast"+10','Pet: "Regen"+5',}},
}
sets.idle.Pet = {
main={ name="Solstice", augments={'Mag. Acc.+20','Pet: Damage taken -4%','"Fast Cast"+5',}},
sub="Culminus",
range={ name="Dunna", augments={'MP+20','Mag. Acc.+10','"Fast Cast"+3',}},
head="Azimuth Hood",
body="Azimuth Coat",
hands="Geomancy Mitaines",
legs="Psycloth Lappas",
feet={ name="Bagua Sandals", augments={'Enhances "Radial Arcana" effect',}},
neck={ name="Bagua Charm", augments={'Path: A',}},
waist="Isa Belt",
left_ear="Infused Earring",
right_ear="Loquac. Earring",
left_ring="Renaye Ring",
right_ring="Stikini Ring",
back={ name="Lifestream Cape", augments={'Geomancy Skill +10','Indi. eff. dur. +15','Pet: Damage taken -1%','Damage taken-3%',}},
}
sets.precast = {}
sets.precast["Full Circle"] = {
head = "Azimuth Hood",
}
sets.precast.FC = {
main={ name="Solstice", augments={'Mag. Acc.+20','Pet: Damage taken -4%','"Fast Cast"+5',}},
sub="Culminus",
range={ name="Dunna", augments={'MP+20','Mag. Acc.+10','"Fast Cast"+3',}},
head="Befouled Crown",
body="Azimuth Coat",
hands={ name="Bagua Mitaines", augments={'Enhances "Curative Recantation" effect',}},
legs="Geomancy Pants",
feet="Regal Pumps",
neck="Loricate Torque",
waist="Eschan Stone",
left_ear="Infused Earring",
right_ear="Loquac. Earring",
left_ring="Kishar Ring",
right_ring="Jhakri Ring",
back={ name="Nantosuelta's Cape", augments={'INT+20','Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','"Fast Cast"+10','Pet: "Regen"+5',}},
}
-- sets.precast['Geomancy'] = set_combine(sets.precast.FC, {
-- main={ name="Solstice", augments={'Mag. Acc.+20','Pet: Damage taken -4%','"Fast Cast"+5',}},
-- sub="Culminus",
-- range={ name="Dunna", augments={'MP+20','Mag. Acc.+10','"Fast Cast"+3',}},
-- head="Azimuth Hood",
-- body={ name="Bagua Tunic", augments={'Enhances "Bolster" effect',}},
-- hands="Geomancy Mitaines",
-- legs={ name="Bagua Pants", augments={'Enhances "Mending Halation" effect',}},
-- feet="Azimuth Gaiters",
-- neck={ name="Bagua Charm", augments={'Path: A',}},
-- waist="Eschan Stone",
-- left_ear="Infused Earring",
-- right_ear="Loquac. Earring",
-- left_ring="Renaye Ring",
-- right_ring="Stikini Ring",
-- back={ name="Lifestream Cape", augments={'Geomancy Skill +10','Indi. eff. dur. +15','Pet: Damage taken -1%','Damage taken-3%',}},
-- })
sets.precast['Enhancing Magic'] = {}
sets.precast['Stoneskin'] = {}
sets.precast['Healing Magic'] = {}
sets.precast['Cure'] = {}
sets.precast['Curaga'] = sets.precast['Cure']
sets.midcast = {}
sets.midcast.Cure = {}
sets.midcast.CureBonus = {}
sets.midcast.FC = {
main="Solstice",
sub="Culminus",
range="Dunna",
head="Jhakri Coronal +1",
neck="Bagua Charm",
left_ear="Lifestorm Earring",
right_ear="Psystorm Earring",
body="Azimuth Coat",
hands="Jhakri Cuffs +1",
left_ring="Stikini Ring",
right_ring="Etana Ring",
back={ name="Nantosuelta's Cape", augments={'INT+20','Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','"Fast Cast"+10','Pet: "Regen"+5',}},
waist="Eschan Stone",
legs="Psycloth Lappas",
feet="Jhakri Pigaches +1",
}
sets.midcast["Enfeebling Magic"] = sets.midcast.FC
-- sets.midcast.FC = {
-- main="",
-- sub="",
-- range="",
-- head="",
-- neck="",
-- left_ear="",
-- right_ear="",
-- body="",
-- hands="",
-- left_ring="",
-- right_ring="",
-- back="",
-- waist="",
-- legs="",
-- feet="",
-- }
sets.midcast['IndiSpell'] = {
main={ name="Solstice", augments={'Mag. Acc.+20','Pet: Damage taken -4%','"Fast Cast"+5',}},
sub="Culminus",
range={ name="Dunna", augments={'MP+20','Mag. Acc.+10','"Fast Cast"+3',}},
head="Azimuth Hood",
body={ name="Bagua Tunic", augments={'Enhances "Bolster" effect',}},
hands="Geomancy Mitaines",
legs={ name="Bagua Pants", augments={'Enhances "Mending Halation" effect',}},
feet="Azimuth Gaiters",
neck={ name="Bagua Charm", augments={'Path: A',}},
waist="Eschan Stone",
left_ear="Infused Earring",
right_ear="Loquac. Earring",
left_ring="Renaye Ring",
right_ring="Stikini Ring",
back={ name="Lifestream Cape", augments={'Geomancy Skill +10','Indi. eff. dur. +15','Pet: Damage taken -1%','Damage taken-3%',}},
}
sets.midcast['GeoSpell'] = {
main={ name="Solstice", augments={'Mag. Acc.+20','Pet: Damage taken -4%','"Fast Cast"+5',}},
sub="Culminus",
range={ name="Dunna", augments={'MP+20','Mag. Acc.+10','"Fast Cast"+3',}},
head="Azimuth Hood",
body={ name="Bagua Tunic", augments={'Enhances "Bolster" effect',}},
hands="Geomancy Mitaines",
legs={ name="Bagua Pants", augments={'Enhances "Mending Halation" effect',}},
feet="Azimuth Gaiters",
neck={ name="Bagua Charm", augments={'Path: A',}},
waist="Eschan Stone",
left_ear="Infused Earring",
right_ear="Loquac. Earring",
left_ring="Renaye Ring",
right_ring="Stikini Ring",
back={ name="Lifestream Cape", augments={'Geomancy Skill +10','Indi. eff. dur. +15','Pet: Damage taken -1%','Damage taken-3%',}},
}
sets.midcast.MagicAccuracy = {
}
sets.midcast['Elemental Magic'] = {
main={ name="Solstice", augments={'Mag. Acc.+20','Pet: Damage taken -4%','"Fast Cast"+5',}},
sub="Culminus",
range={ name="Dunna", augments={'MP+20','Mag. Acc.+10','"Fast Cast"+3',}},
head="Jhakri Coronal +1",
body="Azimuth Coat",
hands="Jhakri Cuffs +1",
legs="Azimuth Tights",
feet="Jhakri Pigaches +1",
neck="Sanctity Necklace",
waist="Eschan Stone",
left_ear="Friomisi Earring",
right_ear="Psystorm Earring",
left_ring="Arvina Ringlet +1",
right_ring="Jhakri Ring",
back={ name="Nantosuelta's Cape", augments={'INT+20','Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','"Fast Cast"+10','Pet: "Regen"+5',}},
}
end
function job_precast(spell, action, spellMap, eventArgs)
check_special_ring_equipped()
-- local equipSet = {}
-- add_to_chat(200, 'precast')
if spell.action_type == 'Magic' and buffactive['Silence'] then
-- If silenced, use what's available to remove it
cancel_spell()
if player.inventory['Catholicon'] ~= nil then
send_command('input /item "Catholicon" <me>')
send_command('input /echo *!! Silenced ~ Using Catholicon @ '..player.inventory['Catholicon'].count..' Left !!*')
elseif player.inventory['Echo Drops'] ~= nil then
send_command('input /item "Echo Drops" <me>')
send_command('input /echo *!! Silenced ~ Using Echo Drops @ '..player.inventory['Echo Drops'].count..' Left !!*')
elseif player.inventory['Remedy'] ~= nil then
send_command('input /item "Remedy" <me>')
send_command('input /echo *!! Silenced ~ Using Remedy @ '..player.inventory['Remedy'].count..' Left !!*')
else
send_command('input /echo *!! Silenced ~ No items to remove it !!*')
end
eventArgs.cancel = true
return
elseif spell.type == "Trust" then
equip(sets.Trust)
end
end
-- function job_post_midcast(spell, action, spellMap, eventArgs)
-- local equipSet = {}
-- if spell.skill == 'Geomancy' then
-- equip(sets.midcast[spellMap])
-- add_to_chat(140, spellMap)
-- end
-- end
function customize_idle_set(idleSet)
check_special_ring_equipped()
if state.CP.current == 'on' then
equip(sets.CapacityPoints)
disable('back')
else
enable('back')
end
if state.Dynamis.current == 'on' then
equip(sets.JSENeck)
disable('neck')
else
enable('neck')
end
-- Checking player stats
-- Checking player stats
-- if player.mpp < 51 then
-- idleSet = set_combine(idleSet, sets.latent_refresh)
-- end
-- If in an assault or salvage zone, equip refresh ring
-- if zones_toau_ring:contains(world.area) then
-- idleSet = set_combine(idleSet, sets.ToAU)
-- end
-- If in an Adoulin zone, equip body piece if available
-- if zones_adoulin_body:contains(world.area) then
-- idleSet = set_combine(idleSet, sets.Adoulin)
-- end
return idleSet
end
function select_default_macro_book(isSubJobChange)
-- Default macro set/book
-- set_macro_page(1, 4)
end