Скрипт боя. Мне нужно чтобы заходя в бой пилот нажимал кнопки ударов в нужном мне порядке. Например удар Ногой в середину, Ногой в середину, Ногой вниз, Ногой в середину. После каждого удара проверял наличие окна о завершении боя и наличие самого удара. Так как есть мобы по которым удар Ногой вниз не работает (летающие мобы) и на него нажать нельзя.
Я прибегнул к команде while чтобы зациклить выполнение удара, пока не появится нужный цвет в окошке (скрин внизу). Но при завершении комбо на последнем окошке этот цвет (зеленый) не отображается, т.е. комбо сбрасывает цвета к изначальному. Мудрил мудрил и написал это:
// Запад :W left 660, 13 // Жму кнопку охота wait 5s left 1094, 350 // Жму кнопку Запад wait 500 set #a findcolor (303, 105 1046, 431 1 1 (3218822 3619943 8543389 10781183 8630648 3968383 8942523 5886340) %arr) // Ищу цвет моба (несколько оттенков соответствующий ему, т.к. он перемещается) if #a > 0 double_left %arr [1 1], %arr [1 2] // Когда нашел его по цветам, атакую goto Battle // Бой end_if drag 1054, 145 1056, 335 wait 500 set #a findcolor (303, 105 1046, 431 1 1 (3218822 3619943 8543389 10781183 8630648 3968383 8942523 5886340) %arr) // Ищу цвет моба (несколько оттенков соответствующий ему, т.к. он перемещается) if #a > 0 double_left %arr [1 1], %arr [1 2] // Когда нашел его по цветам, атакую goto Battle // Бой end_if goto N // Следующий значек на компасе // Север :N left 1112, 332 // Жму кнопку Север wait 500 set #a findcolor (303, 105 1046, 431 1 1 (3218822 3619943 8543389 10781183 8630648 3968383 8942523 5886340) %arr) // Ищу цвет моба (несколько оттенков соответствующий ему, т.к. он перемещается) if #a > 0 double_left %arr [1 1], %arr [1 2] // Когда нашел его по цветам, атакую goto Battle // Бой end_if drag 1053, 410 1055, 230 wait 1s set #a findcolor (303, 105 1046, 431 1 1 (3218822 3619943 8543389 10781183 8630648 3968383 8942523 5886340) %arr) // Ищу цвет моба (несколько оттенков соответствующий ему, т.к. он перемещается) if #a > 0 double_left %arr [1 1], %arr [1 2] // Когда нашел его по цветам, атакую goto Battle // Бой end_if goto E // Следующий значек на компасе // Восток :E left 1135, 354 // Жму кнопку Восток wait 500 set #a findcolor (303, 105 1046, 431 1 1 (3218822 3619943 8543389 10781183 8630648 3968383 8942523 5886340) %arr) // Ищу цвет моба (несколько оттенков соответствующий ему, т.к. он перемещается) if #a > 0 double_left %arr [1 1], %arr [1 2] // Когда нашел его по цветам, атакую goto Battle // Бой end_if drag 1053, 410 1055, 230 wait 500 set #a findcolor (303, 105 1046, 431 1 1 (3218822 3619943 8543389 10781183 8630648 3968383 8942523 5886340) %arr) // Ищу цвет моба (несколько оттенков соответствующий ему, т.к. он перемещается) if #a > 0 double_left %arr [1 1], %arr [1 2] // Когда нашел его по цветам, атакую goto Battle // Бой end_if goto S // Следующий значек на компасе // Юг :S left 1111, 370 // Жму кнопку Юг wait 500 set #a findcolor (303, 105 1046, 431 1 1 (3218822 3619943 8543389 10781183 8630648 3968383 8942523 5886340) %arr) // Ищу цвет моба (несколько оттенков соответствующий ему, т.к. он перемещается) if #a > 0 double_left %arr [1 1], %arr [1 2] // Когда нашел его по цветам, атакую goto Battle // Бой end_if drag 1054, 145 1056, 335 wait 500 set #a findcolor (303, 105 1046, 431 1 1 (3218822 3619943 8543389 10781183 8630648 3968383 8942523 5886340) %arr) // Ищу цвет моба (несколько оттенков соответствующий ему, т.к. он перемещается) if #a > 0 double_left %arr [1 1], %arr [1 2] // Когда нашел его по цветам, атакую goto Battle // Бой end_if goto W // Возврат на начало скрипта // Бой :Battle if 107, 235 3740699 left 115, 349 // Ногой в середину wait 1s end_if while_not 107, 352 15001511 left 115, 349 // Ногой в середину wait 1s else if 378, 366 16645113 goto W end_if end_while if 107, 235 3740699 left 115, 349 // Ногой в середину wait 1s end_if while_not 310, 427 6414376 left 115, 349 // Ногой в середину wait 1s end_while if 378, 366 16645113 goto W end_if if 107, 235 3740699 left 115, 349 // Ногой в середину wait 1s end_if while_not 348, 429 6414376 left 109, 391 // Ногой в низ wait 1s end_while if 378, 366 16645113 goto W end_if if 107, 235 3740699 left 115, 349 // Ногой в середину wait 1s end_if if 385, 429 10542847 left 115, 349 // Ногой в середину wait 1s end_if if 378, 366 16645113 goto W else goto Battle end_if
Но часто скрипт зацикливается на каком нибудь ударе и не выходит из боя и не продолжает свою работу. Может есть более простой способ все это изобразить?
Эскизы прикрепленных изображений
|