View difference between Paste ID: tYwkbLMb and ut52mdW6
SHOW: | | - or go back to the newest paste.
1
Sub set_declares_custom()
2
    /declare memCurrentGem int outer 1
3
    
4
    /declare hookOnEnterCombat bool outer TRUE
5
    /declare hookOnExitCombat bool outer TRUE
6
    
7
    /if (${Bool[${Plugin[mq2rez]}]}) /plugin mq2rez unload
8
/return
9
10
| Hooks
11
Sub hook_OnEnterCombat
12
    OUT OnEnterCombat
13
/return
14
15
Sub hook_OnExitCombat
16
    OUT OnExitCombat
17
/return
18
19
| Custom setup
20
|   /cc        = /call Bind_setCombatControl
21
|   /edit      = /call Bind_sql_edit
22
|   /tc        = /call Bind_setTieControl
23
|   /setassist = /call Bind_setAssist
24
|   /core      = /call Bind_Core
25
|   /buffs     = /call Bind_buff
26
|   /movement  = /call Bind_setMovementControls
27
#bind setup /setup
28
Sub Bind_setup()
29
    | Follow the MA using nav
30
    /call Bind_setTieControl name ${Group.MainAssist.Name}
31
    /call Bind_setTieControl mode nav
32
    /call Bind_setTieControl distance 5
33
    
34
    | Assist group's MA at 100%, why wait. Don't know the difference b/w engage & smartengage
35
    /call Bind_setAssist g on
36
    /call Bind_setCombatControl engage 100
37
    /call Bind_setCombatControl smartengage 100
38
    
39
    | Everyone melees
40
    /call Bind_setCombatControl melee on
41
    
42
    | Everyone buffs
43
    /call Bind_buff self on
44
    /call Bind_buff bc on
45
    
46
    | Always use last gem for buffs
47
    /call Bind_sql_edit buffGem ${Me.NumGems}
48
    
49
    | Set up mount
50
    |/call Bind_sql_edit setMount "Mount Item Name"
51
    
52
    | Use fast face
53
    /call Bind_setMovementControls fast on
54
    
55
    | Custom setup for each class
56
    /call setup_${Me.Class.ShortName}
57
    
58
    | Memorize spells
59
    /call Bind_memall
60
    
61
    | Finally, turn auto on
62
    /call Bind_Core auto on
63
/return
64
65
Sub setup_CLR
66
    | AA unity buff
67
    /call Bind_sql_edit BuffAAUnity1 "Armor of the Merciful"
68
    
69
    | Auras
70
    /call Bind_sql_edit Aura1Spell "Aura of the Reverent"
71
    /call Bind_sql_edit Aura1Buff "Reverent Aura"
72
    /call Bind_sql_edit Aura2Spell "Circle of Divinity"
73
    /call Bind_sql_edit Aura2Buff "Circle of Divinity"
74
    
75
    | Group buffs
76
    /call Bind_sql_edit Buff1 "Unified Hand of Assurance"
77
    /call Bind_sql_edit Buff1self TRUE
78
    
79
    | Tank buffs
80
    /call Bind_sql_edit Buff2 "Rallied Greater Guard of Vie"
81
    /call Bind_sql_edit Buff2self FALSE
82
    /call Bind_sql_edit BCBuff2Class |WAR|PAL|SHD
83
    
84
    /call Bind_sql_edit Buff3 "Shining Fortress"
85
    /call Bind_sql_edit Buff3self FALSE
86
    /call Bind_sql_edit BCBuff3Class |WAR|PAL|SHD
87
    
88
    /call Bind_sql_edit Buff4 "Anticipated Intercession"
89
    /call Bind_sql_edit Buff4self FALSE
90
    /call Bind_sql_edit BCBuff4Class |WAR|PAL|SHD
91
    
92
    /call Bind_sql_edit Buff5 "Divine Imposition"
93
    /call Bind_sql_edit Buff5self FALSE
94
    /call Bind_sql_edit BCBuff5Class |WAR|PAL|SHD
95
    
96
    | Self buff
97
    /call Bind_sql_edit Buff6 "Divine Response"
98
    /call Bind_sql_edit Buff6self TRUE
99
    /call Bind_sql_edit BCBuff6Class FALSE
100
    
101
    /call Bind_sql_edit Buff7 FALSE
102
    /call Bind_sql_edit Buff8 FALSE
103
    /call Bind_sql_edit Buff9 FALSE
104
    /call Bind_sql_edit Buff10 FALSE
105
    
106
    | Heal self, group & xtarget
107
    /call Bind_heal self on
108
    /call Bind_heal group on
109
    /call Bind_heal xtarget on
110
    
111
/return
112
113
Sub setup_WIZ()
114
    | AA unity buff
115
    /call Bind_sql_edit BuffAAUnity1 "Shield of Scales"
116
    
117
    | Nuke lines
118
    /call Bind_sql_edit lineIce "|Quiescent Gambit|Shocking Vortex|Claw of Travenro|Ethereal Icefloe|Icefloe Cascade|Cloudburst Thunderbolt"
119
    /call Bind_sql_edit lineFire "|Quiescent Gambit|Shocking Vortex|Claw of Qunard|Ethereal Braid|Ethereal Skyfire|Cloudburst Thunderbolt"
120
    /call Bind_sql_edit lineCurrent Fire
121
    
122
    | Enable nuking
123
    /call Bind_setCombatControl nuke on
124
    
125
    | Enable alliance
126
    /call Bind_setCombatControl alliance on
127
    
128
    | Rest to full, through combat
129
    /call Bind_Core_environment restfull on
130
    /call Bind_Core_environment restcombat on
131
    /call Bind_setCombatControl rest 20
132
/return
133
134
Sub setup_ENC()
135
    | AA unity buff
136
    /call Bind_sql_edit BuffAAUnity1 "Ward of the Transfixer"
137
    /call Bind_sql_edit BuffAAUnity2 "Shield of Scales"
138
139
    | Auras
140
    /call Bind_sql_edit Aura1Spell "Mana Repetition Aura"
141
    /call Bind_sql_edit Aura1Buff "Mana Repetition Aura"
142
    /call Bind_sql_edit Aura2Spell "Twincast Aura"
143
    /call Bind_sql_edit Aura2Buff "Twincast Aura"
144
    
145
    | Group buffs
146
    /call Bind_sql_edit Buff1 "Voice of Perspicacity"
147
    /call Bind_sql_edit Buff1self TRUE
148
    /call Bind_sql_edit BCBuff1Class |WAR|PAL|SHD|BRD|RNG|BST|BER|MNK|ROG|WIZ|MAG|ENC|NEC|CLR|DRU|SHM
149
    
150
    /call Bind_sql_edit Buff2 "Hastening of Milyex"
151
    /call Bind_sql_edit Buff2self TRUE
152
    /call Bind_sql_edit BCBuff2Class |WAR|PAL|SHD|BRD|RNG|BST|BER|MNK|ROG|WIZ|MAG|ENC|NEC|CLR|DRU|SHM
153
    
154
    | Spell/DoT shield runes on all but tanks, no point refreshing on them
155
    /call Bind_sql_edit Buff3 "Legion of Skrizix"
156
    /call Bind_sql_edit Buff3self TRUE
157
    /call Bind_sql_edit BCBuff3Class |BRD|RNG|BST|BER|MNK|ROG|WIZ|MAG|ENC|NEC|CLR|DRU|SHM
158
    
159
    /call Bind_sql_edit Buff4 "Legion of Milyex"
160
    /call Bind_sql_edit Buff4self TRUE
161
    /call Bind_sql_edit BCBuff4Class |BRD|RNG|BST|BER|MNK|ROG|WIZ|MAG|ENC|NEC|CLR|DRU|SHM
162
    
163
    | Polyfluorescent instead of Polyrefractive
164
    /call Bind_sql_edit runePoly "Polyfluorescent Rune"
165
    
166
/return
167
168
Sub setup_SHD()
169
    | AA unity buff
170
    |/call Bind_sql_edit BuffAAUnity1 "Mental Fright"
171
    /call Bind_sql_edit BuffAAUnity1 "Tylix's Horror"
172
    /call Bind_sql_edit BuffAAUnity2 "Helot Skin"
173
    /call Bind_sql_edit BuffAAUnity3 "Call of Nightfall"
174
    /call Bind_sql_edit BuffAAUnity4 "Drape of the Magmaforged"
175
    /call Bind_sql_edit BuffAAUnity5 "Shroud of the Krellnakor"
176
    /call Bind_sql_edit BuffAAUnity6 "Remorseless Demeanor"
177
    
178
    | Bash & taunt
179
    /call Bind_setCombatControl meleedisc bash on
180
    /call Bind_setCombatControl meleedisc taunt on
181
    | Taunt on SHD options too?!
182
    /call Bind_setSHD taunt on
183
    
184
    | Use AE hates
185
    /call Bind_setSHD ae on
186
    
187
    | Use lifetap discs (including vicious bite)
188
    /call Bind_heal self on
189
    
190
    | Use breather instead of hiatus. Lowercase matters here
191
    /call Bind_sql_edit DiscRest breather
192
    
193
    | Use nuke function to cast taps
194
    /call Bind_sql_edit Nuke1 "Dire Testimony"
195
    /call Bind_sql_edit Nuke2 "Touch of Hemofax"
196
    /call Bind_sql_edit Nuke3 "Touch of T`Vem"
197
    
198
    | Enable nuking
199
    /call Bind_setCombatControl nuke on
200
201
    | Pull with a 200 radius
202
    /call Bind_setCombatControl pull on
203
    /call Bind_setCombatControl agro 200
204
    
205
    | Pull with terror instead of hate's attraction
206
    /call Bind_sql_edit strRangeSpell "Terror of Kra`Du"
207
    /call Bind_setSHD attraction off
208
    
209
    | Hold aggro
210
    /call Bind_setCombatControl agro on
211
    
212
    | Turn on stance, skin & harmonious disruption
213
    /call Bind_setSHD stance on
214
    /call Bind_setSHD skin on
215
    /call Bind_setSHD harmonious on
216
    
217
    | Rest at 20%
218
    /call Bind_setCombatControl rest 20
219
/return
220
221
| Spell memorization
222
Sub mem_reset()
223
    /varset memCurrentGem 1
224
/return
225
226
Sub try_mem(string spellName)
227
    /if (${Me.Gem[${spellName}]} && ${Me.Gem[${spellName}]} < ${memCurrentGem}) /return
228
    /if (${memCurrentGem} > ${Me.NumGems}) {
229
        VSPELL Not enough gems to memorize ${spellName}
230
        /return
231
    }
232
    /call mem_spell FALSE TRUE "${spellName}" ${memCurrentGem} FALSE TRUE
233
    /varcalc memCurrentGem ${memCurrentGem}+1
234
/return
235
236
#bind memall /memall
237
Sub Bind_memall()
238
    /call memall_${Me.Class.ShortName}
239
/return
240
241
Sub memall_WIZ()
242
    /declare _index 				int 		local 0
243
	/declare _list		 			string 	local ${line${lineCurrent}}
244
    /call mem_reset
245
    /if (${Bool[${TwincastSpell}]}) /call try_mem "${TwincastSpell}"
246
    /if (${Bool[${GatherSpell}]}) /call try_mem "${GatherSpell}"
247
    /if (${Bool[${GoMNuke}]}) /call try_mem "${GoMNuke}"
248
    /if (${Bool[${GoMNuke2}]}) /call try_mem "${GoMNuke2}"
249
    /if (${swAlliance} && ${Bool[${WIZAlliance}]}) /call try_mem "${WIZAlliance}"
250
    /call try_mem "${NukeTwincast${lineCurrent}}"
251
	/for _index 1 to ${_list.Count[|]}
252
		/call try_mem "${_list.Arg[${_index},|]}"
253
	/next _index	
254
/return
255
256
Sub memall_ENC()
257
258
/return
259
260
Sub memall_CLR()
261
262
/return
263
264
Sub memall_SHD()
265
266
/return