Антимакрос
Posted: 2014-02-13 22:14:25
Вот пример гампа

Вот антимакрос для него
Обьясните принцип работы, я не могу понять от как он узнает какие кнопки требуется нажать. ZeroDX переделал этот антимакрос всего в несколько строчек. Хочу понять основы, не могу написать его сам, каждый раз приходится искать готовый

Code: Select all
_____infogump_______
serial 0x00079931
gumpid 0x000000b3
X 0
Y 0
781 packet size
0 reply packet size
Buttons: ________
Checks&Radios: __
Entryes: ________
All commands: ____
1] AGE
2] umppic 260 361 222
3] umppic 293 351 222
4] umppic 261 348 222
5] umppic 293 355 223
6] utton 220 295 2230 2230 1 1
7] utton 400 295 2231 2231 1 1
8] esizepic 200 290 5170 240 24
9] ext 255 292 152
10] ext 230 315 0
11] utton 377 444 2228 2228 1 1
12] utton 251 420 2225 2225 1 1 1
13] utton 301 434 2226 2226 1 1
14] utton 345 424 2227 2227 1 1
15] utton 285 480 2230 2230 1 1
16] utton 376 479 2232 2232 1 1
17] utton 245 477 2229 2229 1 1
18] utton 340 463 2231 2231 1 1
19] umppic 264 348 223
20] umppic 302 341 223
21] ext 230 373 0
22] ext 230 385 0
23] ext 340 385 0
Text: ____________
0] Antimacros System
1] Choose this protection code
2] ----------------------
3] Entering code:
4] 0
Вот антимакрос для него
Code: Select all
sub AntiMacros()
dim reindex[8]
reindex[0] = 11
reindex[1] = 12
reindex[2] = 13
reindex[3] = 10
reindex[4] = 16
reindex[5] = 14
reindex[6] = 17
reindex[7] = 15
var GumpID = 0
var ButtonID = 0
var ButtonText
var i = 18
if uo.LastGump('text', 4) <> "0" then
i = 19
end if
GumpID = val(Mid(uo.LastGump('command', i), 16, 4))
ButtonID = reindex[GumpID-2225]
ButtonText = uo.LastGump('command', ButtonID)
uo.LClick(Val(Mid(ButtonText, 7, 3)), Val(Mid(ButtonText, 11, 3)))
while not uo.LastGump('replyed')
wait(100)
wend
end sub
Обьясните принцип работы, я не могу понять от как он узнает какие кнопки требуется нажать. ZeroDX переделал этот антимакрос всего в несколько строчек. Хочу понять основы, не могу написать его сам, каждый раз приходится искать готовый
