Wolf_Quest |
Отправлено: 13 Декабря, 2015 - 13:17:36
|
Участник
Покинул форум
Сообщений всего: 71
Дата рег-ции: Нояб. 2015
Репутация: 0
|
win w=window ("Adobe Flash Player 11", "ShockwaveFlash", -1);
int Test[25][16];
loadimage (#Test[0][0], "C:\Бот\Лич\Test.bmp"
int PosX, PosY;
if (findimage(1, #Test[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX, PosY, w);
}
Вот пробую, и как ставить метки и т.п. что бы работало одновременно типо 2х скриптов, к примеру один ищет банку и жмет когда найдет, а второй бьет мобов и ходит по карте)
(Добавление)
Пока немного другой пример) ошибочка) просто пробую)
(Добавление)
win w=window ("Adobe Flash Player 11", "ShockwaveFlash", -1);
int Test[25][16];
loadimage (#Test[0][0], "C:\Бот\Лич\Test.bmp"
int PosX, PosY;
1:if (findimage(1, #Test[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX, PosY, w);
}
sleep 1000;
goto 1;
(Добавление)
Вот так сделал) А после этого можно сразу другой бот писать начиная с if или надо первый засунуть в какую нибудь метку или что то типо того?
(Добавление)
А щас попробую)
(Добавление)
Добавлено
win w=window ("Adobe Flash Player 11", "ShockwaveFlash", -1);
int Test[25][16];
int A[9][6];
loadimage (#Test[0][0], "C:\Бот\Лич\Test.bmp"
loadimage (#A[0][0], "C:\Бот\Лич\A.bmp"
int PosX, PosY;
1:if (findimage(1, #Test[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX, PosY, w);
}
sleep 1000;
goto 1;
2:if (findimage(1, #A[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX, PosY, w);
}
sleep 500;
goto 2;
Вот так не работает, работает только первый поиск картинки и жмяк на нее, что тут исправить надо что бы они одновременно работали и искали каждая свое и тыкали
(Добавление)
Добавлено:
Просто мне очень много писать надо картинок и т.п.
Я хочу что бы бот, колба, атвовход при вылете с игры, выход с точки при убийстве работали как бы сказать в разных функциях, с разным таймером ( sleep ).
А то если это написать в одну пока цикл пройдет ужс)))
(Добавление)
Ну как сделать что бы к примеру бой и ходьба по карте работали отдельно?
Вот мой пример Пример (Отобразить)win w=window ("Adobe Flash Player 11", "ShockwaveFlash", -1);
int Test[25][16];
int A[9][6];
loadimage (#Test[0][0], "C:\Бот\Лич\Test.bmp" ;
loadimage (#A[0][0], "C:\Бот\Лич\A.bmp" ;
int PosX, PosY;
if (findimage(1, #Test[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX, PosY, w);
}
sleep 1000;
if (findimage(1, #A[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX, PosY, w);
}
sleep 500;
Пробовал писать function A() и т.п. не получается((Отредактировано автором: 13 Декабря, 2015 - 13:35:43) |
|
|
Wolf_Quest |
Отправлено: 13 Декабря, 2015 - 19:40:39
|
Участник
Покинул форум
Сообщений всего: 71
Дата рег-ции: Нояб. 2015
Репутация: 0
|
Ну что я делаю не так?( Никак не пойму этот таймер да функцию......
Вот скрин кода и сам код..... помогите пожалуйста плин... ну ди... я не понимаю...
Код (Отобразить)win w=window ("Adobe Flash Player 11", "ShockwaveFlash", -1);
int Test[25][16];
int A[9][6];
loadimage (#Test[0][0], "C:\Бот\Лич\Test.bmp" ;
loadimage (#A[0][0], "C:\Бот\Лич\A.bmp" ;
int PosX, PosY;
enabletimer(0);
enabletimer(1);
CREATE_TIMER(0, 250)
{
if (findimage(1, #Test[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX, PosY, w);
}
}
CREATE_TIMER(1, 500)
{
if (findimage(1, #A[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX, PosY, w);
}
} (Отредактировано автором: 13 Декабря, 2015 - 19:45:10) |
|
|
Kibor |
Отправлено: 13 Декабря, 2015 - 19:51:30
|
Эксперт
Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013
Откуда: Одесса
Репутация: 357
|
а в чем проблема?
ну и переменные которые могут перезаписываться в таймерах не должны перезаписываться больше нигде, так как в любой момент код может быть вызван в другом месте где они и перезапишутся..
CODE:win w=window ("Adobe Flash Player 11", "ShockwaveFlash", -1);
int Test[25][16];
int A[9][6];
loadimage (#Test[0][0], "C:\Бот\Лич\Test.bmp");
loadimage (#A[0][0], "C:\Бот\Лич\A.bmp");
int PosX, PosY;
enabletimer(0);
enabletimer(1);
CREATE_TIMER(0, 250)
{
if (findimage(1, #Test[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
//тут в PosX, PosY координаты Test[0][0] и! вдруг управление перешло сюда
sendmousedbl(LEFT, PosX, PosY, w);
}
}
CREATE_TIMER(1, 500)
{
if (findimage(1, #A[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
//сюда!
sendmousedbl(LEFT, PosX, PosY, w);//и тут кликнет не по A[0][0], а по Test[0][0]
}
}
надо так
CODE:win w=window ("Adobe Flash Player 11", "ShockwaveFlash", -1);
int Test[25][16];
int A[9][6];
loadimage (#Test[0][0], "C:\Бот\Лич\Test.bmp");
loadimage (#A[0][0], "C:\Бот\Лич\A.bmp");
int PosX, PosY, PosX1, PosY1;
enabletimer(0);
enabletimer(1);
CREATE_TIMER(0, 250)
{
if (findimage(1, #Test[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX, PosY, w);
}
}
CREATE_TIMER(1, 500)
{
if (findimage(1, #A[0][0], 0, #PosX1, #PosY1, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX1, PosY1, w);
}
} |
|
|
Wolf_Quest |
Отправлено: 13 Декабря, 2015 - 20:01:35
|
Участник
Покинул форум
Сообщений всего: 71
Дата рег-ции: Нояб. 2015
Репутация: 0
|
p.s. вроде изменил все так же.. запускаю он ничего не тыкает и повтор не делает, запскаю через сек отключается сам бот ( ну как ctrl + shift + z , вот так отключается окошко вылазит обратно как будто повтора нету )
(Добавление)
Вот полный код который написан.
Код (Отобразить)win w=window ("Adobe Flash Player 11", "ShockwaveFlash", -1);
int Test[25][16];
int A[9][6];
loadimage (#Test[0][0], "C:\Бот\Лич\Test.bmp" ;
loadimage (#A[0][0], "C:\Бот\Лич\A.bmp" ;
int PosX, PosY, PosX1, PosY1;
enabletimer(0);
enabletimer(1);
CREATE_TIMER(0, 250)
{
if (findimage(1, #Test[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX, PosY, w);
}
}
CREATE_TIMER(1, 500)
{
if (findimage(1, #A[0][0], 0, #PosX1, #PosY1, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX1, PosY1, w);
}
}
Если таймер все тыкает и находит. Добавив таймер он перестал вообще что либо находить и повтора нету.
А функцию пробовал написать вообще не получилось((Отредактировано автором: 13 Декабря, 2015 - 20:04:08) |
|
|
Kibor |
Отправлено: 13 Декабря, 2015 - 20:03:37
|
Эксперт
Покинул форум
Сообщений всего: 8217
Дата рег-ции: Март 2013
Откуда: Одесса
Репутация: 357
|
блин...
ну так конечно..
бот же отработал включение таймеров и все. завершил работу.
петлю сделайте.
a: sleep(20); goto a;
CODE:win w=window ("Adobe Flash Player 11", "ShockwaveFlash", -1);
int Test[25][16];
int A[9][6];
loadimage (#Test[0][0], "C:\Бот\Лич\Test.bmp");
loadimage (#A[0][0], "C:\Бот\Лич\A.bmp");
int PosX, PosY, PosX1, PosY1;
enabletimer(0);
enabletimer(1);
a: sleep(20); goto a;
CREATE_TIMER(0, 250)
{
if (findimage(1, #Test[0][0], 0, #PosX, #PosY, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX, PosY, w);
}
}
CREATE_TIMER(1, 500)
{
if (findimage(1, #A[0][0], 0, #PosX1, #PosY1, 0, 0, w.widthclient, w.heightclient, w)==1)
{
sendmousedbl(LEFT, PosX1, PosY1, w);
}
} |
|
|
|