Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: panelka2 on August 21, 2018, 11:59:02 AM
-
Ребят, подскажите пожалуйста,искал,нигде не нашел.
У меня есть условие 1 , 2 и проверки 3 , 4 . Если проверка 3 верна , то возвращается к 1 , если не верна , то выполняет действие 5 после которого должно вернуть к 1.Для проверки 4 аналогичное условие, если верна отправляет на 2 , если нет , отправляет на 6 , после чего снова на 1. Все это должно идти без остановки.Подскажите пожалуйста какими функциями,строками это можно организовать ? буду очень вам благодарен! ;)
// 1
LCLICK(410,464)
LCLICK(751,534)
LCLICK(751,534)
RCLICK(751,534)
WAITMS(50)
LCLICK(830,596)
RCLICK(1838,639)
WAITMS(50)
LCLICK(1765,689)
LCLICK(1873,956)
LCLICK(1721,1007)
LCLICK(1800,1008)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1642,960) //1
LCLICK(1872,1005)
RCLICK(1838,639)
WAITMS(300)
LCLICK(1763,663)
WAITMS(500)
LCLICK(751,534)
LCLICK(751,534)
WAITMS(500)
RCLICK(751,534)
WAITMS(500)
LCLICK(850,629)
WAITMS(500)
LCLICK(912,609)
waitms(200)
LCLICK(819,704)
wait(3)
// 2
LCLICK(424,372)
LCLICK(1013,535)
LCLICK(1013,535)
RCLICK(1013,535)
WAITMS(200)
LCLICK(1077,603)
RCLICK(1816,642)
WAITMS(200)
LCLICK(1747,696)
LCLICK(1878,904)
LCLICK(1720,1005)
LCLICK(1799,1008)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1645,961)
LCLICK(1870,1010)
RCLICK(1824,645)
WAITMS(200)
LCLICK(1737,677)
LCLICK(1013,535)
LCLICK(1013,535)
keydown(#ctrl)
waitms(200)
keypress(#v)
LCLICK(1177,605)
LCLICK(1085,703)
// 3 - если оно верно направляет на 1 , если нет , то на 5
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
END_IF
// 4 - если оно верно направляет на 2 , если нет , то на 6
$_N1=1350
$_N2=86
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100)
END_IF
// 5 - после выполнения отправляет на 1
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,7255099)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
//скорость
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
//6 - после выполнения отправляет на 2
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,4411888)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
-
Что-то тут не так:
выполняем №1
выполняем №2
условие №3 -> если вено, возврат к №1, потом №2 и опять условие №3 и тд...
-> если нет, то идем к №5, а после №5 снова возврат к №1, потом №2 и опять условие №3 и тд...
получается, что №4 и №6 никогда не будут учитываться.
Не верно составлен алгоритм.
-
Что-то тут не так:
выполняем №1
выполняем №2
условие №3 -> если вено, возврат к №1, потом №2 и опять условие №3 и тд...
-> если нет, то идем к №5, а после №5 снова возврат к №1, потом №2 и опять условие №3 и тд...
получается, что №4 и №6 никогда не будут учитываться.
Не верно составлен алгоритм.
Чутка подправил. Суть в том , что после любого действия 3,4,5,6 должно возвращаться на 1,2.Просто проверка 3 относится 1 , и если оно не верно отменяет условием 5, соответственно 4 относится к 2 и отменяется условием 6.Надеюсь понятно объяснил.
-
Суть в том , что после любого действия 3,4,5,6 должно возвращаться на 1,2.Просто проверка 3 относится 1 , и если оно не верно отменяет условием 5, соответственно 4 относится к 2 и отменяется условием 6.Надеюсь понятно объяснил.
Я ничего не понял :D .
Да и ладно. Если это все что тебе требуется и это весь код, то вот тебе чудо оператор - GOTO . Экспериментируй...
Но в начале желательно ознакомиться с этим чудом в этой теме http://crapware.aidf.org/forum/index.php?topic=49.0
Как он работает - читаем в справке:
GOTO
Переводит интерпретацию на строку с меткой.
Синтаксис:
GOTO (label)
Параметры:
label - имя метки
Пример:
goto(skip)
logwrite("nope") // пропускается
skip:
logwrite("yea") // выполнится
Примечания:
Переход на метку допускается в рамках блоков одного уровня вложенности. Текстовая метка задается без кавычек, в тексте скрипта после текстовой метки обязательно должно идти двоеточие ":", как в примере. Метка занимает всю строку
-
Суть в том , что после любого действия 3,4,5,6 должно возвращаться на 1,2.Просто проверка 3 относится 1 , и если оно не верно отменяет условием 5, соответственно 4 относится к 2 и отменяется условием 6.Надеюсь понятно объяснил.
Я ничего не понял :D .
Да и ладно. Если это все что тебе требуется и это весь код, то вот тебе чудо оператор - GOTO . Экспериментируй...
Но в начале желательно ознакомиться с этим чудом в этой теме http://crapware.aidf.org/forum/index.php?topic=49.0
Как он работает - читаем в справке:
GOTO
Переводит интерпретацию на строку с меткой.
Синтаксис:
GOTO (label)
Параметры:
label - имя метки
Пример:
goto(skip)
logwrite("nope") // пропускается
skip:
logwrite("yea") // выполнится
Примечания:
Переход на метку допускается в рамках блоков одного уровня вложенности. Текстовая метка задается без кавычек, в тексте скрипта после текстовой метки обязательно должно идти двоеточие ":", как в примере. Метка занимает всю строку
Спасибо , сейчас попробую!
-
Попробовал , и это немного не то , да и по отзывам не очень меня заинтересовал, учитывая как мне дорога цена ошибки)
-
Здесь по ходу пошагово мутить нужно ;D
учитывая как мне дорога цена ошибки)
Ну... Если у тебя проект коммерческий, дай ребятам чуток... Для стимула ;)
-
Всего то нужно правильно составить алгоритм. Пока что в описании ничего не понятно.
После чего должна быть проверка №4? Судя по описанию задачи, до №4 не дойдет никогда.
Попробуй нарисовать чтоли если словами сложно обьяснить. Или напиши как и что после чего происходит в реале.
Просто вот это:
У меня есть условие 1 , 2 и проверки 3 , 4 . Если проверка 3 верна , то возвращается к 1 , если не верна , то выполняет действие 5 после которого должно вернуть к 1.Для проверки 4 аналогичное условие, если верна отправляет на 2 , если нет , отправляет на 6 , после чего снова на 1.
Будет крутить только 1, 2, 3 и 5 . До 4 и 6 не дойдет.
Суть в том , что после любого действия 3,4,5,6 должно возвращаться на 1,2.Просто проверка 3 относится 1 , и если оно не верно отменяет условием 5, соответственно 4 относится к 2 и отменяется условием 6.Надеюсь понятно объяснил.
Это вообще не понять :-\.
-
Всего то нужно правильно составить алгоритм. Пока что в описании ничего не понятно.
После чего должна быть проверка №4? Судя по описанию задачи, до №4 не дойдет никогда.
Попробуй нарисовать чтоли если словами сложно обьяснить. Или напиши как и что после чего происходит в реале.
Просто вот это:
У меня есть условие 1 , 2 и проверки 3 , 4 . Если проверка 3 верна , то возвращается к 1 , если не верна , то выполняет действие 5 после которого должно вернуть к 1.Для проверки 4 аналогичное условие, если верна отправляет на 2 , если нет , отправляет на 6 , после чего снова на 1.
Будет крутить только 1, 2, 3 и 5 . До 4 и 6 не дойдет.
Суть в том , что после любого действия 3,4,5,6 должно возвращаться на 1,2.Просто проверка 3 относится 1 , и если оно не верно отменяет условием 5, соответственно 4 относится к 2 и отменяется условием 6.Надеюсь понятно объяснил.
Это вообще не понять :-\.
Значит смотри, постараюсь объяснить на примере колбасы. Есть продуктовый магазин в котором много работников.Все хотят продать колбасу дороже , а купить дешевле. С помощью 1 я выступаю в роли покупателя .Блок 1 позволяет мне купить колбасу , выставляя цену дороже предыдущего покупателя.С помощью 3 я прохожу около подноса с деньгами и проверяю продали ли мне колбасу.Если ее мне продали , я кладу свои деньги (купить) ((1)) еще раз. Если кто-то из покупателей хочет купить дороже меня , я с помощью 5 поднимаю деньги и кладу больше денег за кусок колбасы и возвращаю деньги на поднос (1). Благодаря 2 я становлюсь продавцом и кладу колбасу ближе к покупателю. С помощью 4 я прохожу около подноса с колбасками и проверяю не купил ли кто ее у меня . Если у меня ее покупают я еще раз кладу колбасу 2 . Если какой-то продавец продает колбасу выгодней я с помощью 6 поднимаю колбасу и ЕДИНИЦЕЙ (1) кладу ее ближе к покупателю. Надеюсь сейчас объяснил понятней, пожалуйста ребят помогите продать пару колбасок :'(
-
Так более менее понятно :D .
Я представил себе, что у тебя два окна, в одном ты покупатель, а во втором ты продавец.
//тут две подпрограммы, они выше основного кода
SUB(buy)
// 1 ставим цену выше других и пытаемся купить колбасу
LCLICK(410,464)
LCLICK(751,534)
LCLICK(751,534)
RCLICK(751,534)
WAITMS(50)
LCLICK(830,596)
RCLICK(1838,639)
WAITMS(50)
LCLICK(1765,689)
LCLICK(1873,956)
LCLICK(1721,1007)
LCLICK(1800,1008)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1642,960)
LCLICK(1872,1005)
RCLICK(1838,639)
WAITMS(300)
LCLICK(1763,663)
WAITMS(500)
LCLICK(751,534)
LCLICK(751,534)
WAITMS(500)
RCLICK(751,534)
WAITMS(500)
LCLICK(850,629)
WAITMS(500)
LCLICK(912,609)
waitms(200)
LCLICK(819,704)
wait(3)
END_SUB
SUB(sell)
// 2 выставляю колбаску на продажу
LCLICK(424,372)
LCLICK(1013,535)
LCLICK(1013,535)
RCLICK(1013,535)
WAITMS(200)
LCLICK(1077,603)
RCLICK(1816,642)
WAITMS(200)
LCLICK(1747,696)
LCLICK(1878,904)
LCLICK(1720,1005)
LCLICK(1799,1008)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1645,961)
LCLICK(1870,1010)
RCLICK(1824,645)
WAITMS(200)
LCLICK(1737,677)
LCLICK(1013,535)
LCLICK(1013,535)
keydown(#ctrl)
waitms(200)
keypress(#v)
LCLICK(1177,605)
LCLICK(1085,703)
END_SUB
//далее наш выполняемый код.
// для начала, пробуем купить и продать
buy() //выполнение подпрограмм, которые описаны выше
sell()
//далее, бесконечный цикл, где будем проверять - купили или нет, продали или нет
WHILE(1)
// 3 - проверяем, продали мне ее или нет
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
//если продали
print("колбаса моя!")
buy() //снова пытаемся купить
else
//если не продали
// 5 - забираем деньги
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,7255099)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
//скорость
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
buy() // и снова пытаемся купить
END_IF
//-----------------------------------------------
// 4 проверяем, купил у меня кто колбасу или нет
$_N1=1350
$_N2=86
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100)
//если купили
print("колбаса продана!")
sell() //пытаемся продать еще
else
//если не купили
//6 - поднимаю колбасу
//
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,4411888)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
//ЕДИНИЦЕЙ (1) кладу ее ближе к покупателю ??? а не двойкой случайно?
buy() // (1)
// или
// sell() // и пытаемся продать еще раз (2)
END_IF
END_CYC
Немного непонятно вот это
Если какой-то продавец продает колбасу выгодней я с помощью 6 поднимаю колбасу и ЕДИНИЦЕЙ (1) кладу ее ближе к покупателю
Скорее всего, после поднятия колбасы, нужно ее выставить снова на продажу ДВОЙКОЙ. В коде сам поправишь как должно быть правильно.
-
Так более менее понятно :D .
Я представил себе, что у тебя два окна, в одном ты покупатель, а во втором ты продавец.
//тут две подпрограммы, они выше основного кода
SUB(buy)
// 1 ставим цену выше других и пытаемся купить колбасу
LCLICK(410,464)
LCLICK(751,534)
LCLICK(751,534)
RCLICK(751,534)
WAITMS(50)
LCLICK(830,596)
RCLICK(1838,639)
WAITMS(50)
LCLICK(1765,689)
LCLICK(1873,956)
LCLICK(1721,1007)
LCLICK(1800,1008)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1642,960)
LCLICK(1872,1005)
RCLICK(1838,639)
WAITMS(300)
LCLICK(1763,663)
WAITMS(500)
LCLICK(751,534)
LCLICK(751,534)
WAITMS(500)
RCLICK(751,534)
WAITMS(500)
LCLICK(850,629)
WAITMS(500)
LCLICK(912,609)
waitms(200)
LCLICK(819,704)
wait(3)
END_SUB
SUB(sell)
// 2 выставляю колбаску на продажу
LCLICK(424,372)
LCLICK(1013,535)
LCLICK(1013,535)
RCLICK(1013,535)
WAITMS(200)
LCLICK(1077,603)
RCLICK(1816,642)
WAITMS(200)
LCLICK(1747,696)
LCLICK(1878,904)
LCLICK(1720,1005)
LCLICK(1799,1008)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1645,961)
LCLICK(1870,1010)
RCLICK(1824,645)
WAITMS(200)
LCLICK(1737,677)
LCLICK(1013,535)
LCLICK(1013,535)
keydown(#ctrl)
waitms(200)
keypress(#v)
LCLICK(1177,605)
LCLICK(1085,703)
END_SUB
//далее наш выполняемый код.
// для начала, пробуем купить и продать
buy() //выполнение подпрограмм, которые описаны выше
sell()
//далее, бесконечный цикл, где будем проверять - купили или нет, продали или нет
WHILE(1)
// 3 - проверяем, продали мне ее или нет
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
//если продали
print("колбаса моя!")
buy() //снова пытаемся купить
else
//если не продали
// 5 - забираем деньги
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,7255099)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
//скорость
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
buy() // и снова пытаемся купить
END_IF
//-----------------------------------------------
// 4 проверяем, купил у меня кто колбасу или нет
$_N1=1350
$_N2=86
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100)
//если купили
print("колбаса продана!")
sell() //пытаемся продать еще
else
//если не купили
//6 - поднимаю колбасу
//
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,4411888)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
//ЕДИНИЦЕЙ (1) кладу ее ближе к покупателю ??? а не двойкой случайно?
buy() // (1)
// или
// sell() // и пытаемся продать еще раз (2)
END_IF
END_CYC
Немного непонятно вот это
Если какой-то продавец продает колбасу выгодней я с помощью 6 поднимаю колбасу и ЕДИНИЦЕЙ (1) кладу ее ближе к покупателю
Скорее всего, после поднятия колбасы, нужно ее выставить снова на продажу ДВОЙКОЙ. В коде сам поправишь как должно быть правильно.
А какие должны быть "подпрограммы" ? Я просто с деревни :-[
-
А какие должны быть "подпрограммы" ? Я просто с деревни :-[
Подпрограммы можно вызывать в любом месте скрипта. По сути подпрограммы - что-то вроде заранее заготовленного кода.
SUB(buy) // Вход в подпрограмму ("buy" - имя подпрограммы)
// Тело подпрограммы
END_SUB // Выход из подпрограммы
buy() // Вызов подпрограммы
-
А какие должны быть "подпрограммы" ? Я просто с деревни :-[
Подпрограммы можно вызывать в любом месте скрипта. По сути подпрограммы - что-то вроде заранее заготовленного кода.
SUB(buy) // Вход в подпрограмму ("buy" - имя подпрограммы)
// Тело подпрограммы
END_SUB // Выход из подпрограммы
buy() // Вызов подпрограммы
//тут две подпрограммы, они выше основного кода
SUB(buy)
// 1 ставим цену выше других и пытаемся купить колбасу
LCLICK(410,464)
LCLICK(746,535)
LCLICK(746,535)
keydown(#ctrl)
waitms(200)
keypress(#c)
LCLICK(1824,641)
keydown(#ctrl)
waitms(200)
keypress(#v)
LCLICK(1873,956) //+
WAITMS(200)
LCLICK(1721,1007) //0
WAITMS(200)
LCLICK(1800,1008) //,
WAITMS(200)
LCLICK(1721,1007) //0
WAITMS(200)
LCLICK(1721,1007) //0
WAITMS(200)
LCLICK(1721,1007) //0
WAITMS(200)
LCLICK(1721,1007) //0
WAITMS(200)
LCLICK(1642,960) //1
WAITMS(200)
LCLICK(1872,1005) //=
WAITMS(200)
LCLICK(1838,639)
keydown(#ctrl)
keypress(#c)
LCLICK(742,538)
LCLICK(742,538)
WAITMS(200)
keydown(#ctrl)
keypress(#v)
WAITMS(200)
LCLICK(904,614)
WAITMS(200)
LCLICK(820,707)
wait(4)
END_SUB
SUB(sell)
// 2 выставляю колбаску на продажу
WAITMS(200)
LCLICK(402,373)
WAITMS(200)
LCLICK(1002,535)
LCLICK(1002,535)
keydown(#ctrl)
keypress(#c)
LCLICK(1811,632)
keydown(#ctrl)
keypress(#v)
LCLICK(1878,904)
WAITMS(200)
LCLICK(1720,1005)
WAITMS(200)
LCLICK(1799,1008)
WAITMS(200)
LCLICK(1720,1005)
WAITMS(200)
LCLICK(1720,1005)
WAITMS(200)
LCLICK(1720,1005)
WAITMS(200)
LCLICK(1720,1005)
WAITMS(200)
LCLICK(1645,961)
WAITMS(200)
LCLICK(1870,1010)
WAITMS(200)
RCLICK(1824,645)
WAITMS(200)
LCLICK(1737,677)
WAITMS(200)
LCLICK(1002,535)
WAITMS(200)
LCLICK(1002,535)
keydown(#ctrl)
WAITMS(200)
keypress(#v)
LCLICK(1178,616)
WAITMS(200)
LCLICK(1085,703)
wait(4)
END_SUB
//далее наш выполняемый код.
// для начала, пробуем купить и продать
//выполнение подпрограмм, которые описаны выше
//далее, бесконечный цикл, где будем проверять - купили или нет, продали или нет
start:
buy()
sell()
goto(start)
// 3 - проверяем, продали мне ее или нет
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
//если продали
print("колбаса моя!")
//снова пытаемся купить
else
//если не продали
// 5 - забираем деньги
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,7255099)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
buy()
END_IF
// и снова пытаемся купить
END_IF
//-----------------------------------------------
// 4 проверяем, купил у меня кто колбасу или нет
$_N1=1350
$_N2=86
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100)
//если купили
print("колбаса продана!")
//пытаемся продать еще
else
//если не купили
//6 - поднимаю колбасу
//
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,4411888)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
sell()
END_IF
END_IF
С этим кодов все норм, но я сам себя перебиваю.И после 1,2 я поставил пару строчек , может их заменить как более продуктивно?
-
//......
start: //метка start:
buy() //код будет крутитьтся в этом месте
sell()
goto(start) //возврат к метке start:
//далее код не будет рабтать
//......
Чем тебе не понравился код который я тебе написал выше? Может подскажу что поправить.
-
Если что вот этим кодом я хотел разок запустить покупку ,чтобы потом проходили проверки.
start:
buy()
goto(start)
-
//......
start: //метка start:
buy() //код будет крутитьтся в этом месте
sell()
goto(start) //возврат к метке start:
//далее код не будет рабтать
//......
Чем тебе не понравился код который я тебе написал выше? Может подскажу что поправить.
все равно перебиваю
-
Если что вот этим кодом я хотел разок запустить покупку ,чтобы потом проходили проверки.
start:
buy()
goto(start)
бред какойто :o.
вот код, он должен работать верно
//тут две подпрограммы, они выше основного кода
SUB(buy)
// 1 ставим цену выше других и пытаемся купить колбасу
LCLICK(410,464)
LCLICK(751,534)
LCLICK(751,534)
RCLICK(751,534)
WAITMS(50)
LCLICK(830,596)
RCLICK(1838,639)
WAITMS(50)
LCLICK(1765,689)
LCLICK(1873,956)
LCLICK(1721,1007)
LCLICK(1800,1008)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1642,960)
LCLICK(1872,1005)
RCLICK(1838,639)
WAITMS(300)
LCLICK(1763,663)
WAITMS(500)
LCLICK(751,534)
LCLICK(751,534)
WAITMS(500)
RCLICK(751,534)
WAITMS(500)
LCLICK(850,629)
WAITMS(500)
LCLICK(912,609)
waitms(200)
LCLICK(819,704)
wait(3)
END_SUB
SUB(sell)
// 2 выставляю колбаску на продажу
LCLICK(424,372)
LCLICK(1013,535)
LCLICK(1013,535)
RCLICK(1013,535)
WAITMS(200)
LCLICK(1077,603)
RCLICK(1816,642)
WAITMS(200)
LCLICK(1747,696)
LCLICK(1878,904)
LCLICK(1720,1005)
LCLICK(1799,1008)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1645,961)
LCLICK(1870,1010)
RCLICK(1824,645)
WAITMS(200)
LCLICK(1737,677)
LCLICK(1013,535)
LCLICK(1013,535)
keydown(#ctrl)
waitms(200)
keypress(#v)
LCLICK(1177,605)
LCLICK(1085,703)
END_SUB
//далее наш выполняемый код.
// для начала, пробуем купить и продать
buy() //выполнение подпрограмм, которые описаны выше
sell()
//далее, бесконечный цикл, где будем проверять - купили или нет, продали или нет
WHILE(1)
// 3 - проверяем, продали мне ее или нет
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
//если продали
print("колбаса моя!")
buy() //снова пытаемся купить
else
//если не продали
// 5 - забираем деньги
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,7255099)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
//скорость
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
buy() // и снова пытаемся купить
END_IF
//-----------------------------------------------
// 4 проверяем, купил у меня кто колбасу или нет
$_N1=1350
$_N2=86
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100)
//если купили
print("колбаса продана!")
sell() //пытаемся продать еще
else
//если не купили
//6 - поднимаю колбасу
//
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,4411888)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
sell() // и пытаемся продать еще раз (2)
END_IF
END_CYC
Что не так? Чтото работает не правильно? Твои эксперименты с гото бессмысленны...
-
Если что вот этим кодом я хотел разок запустить покупку ,чтобы потом проходили проверки.
start:
buy()
goto(start)
бред какойто :o.
вот код, он должен работать верно
//тут две подпрограммы, они выше основного кода
SUB(buy)
// 1 ставим цену выше других и пытаемся купить колбасу
LCLICK(410,464)
LCLICK(751,534)
LCLICK(751,534)
RCLICK(751,534)
WAITMS(50)
LCLICK(830,596)
RCLICK(1838,639)
WAITMS(50)
LCLICK(1765,689)
LCLICK(1873,956)
LCLICK(1721,1007)
LCLICK(1800,1008)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1642,960)
LCLICK(1872,1005)
RCLICK(1838,639)
WAITMS(300)
LCLICK(1763,663)
WAITMS(500)
LCLICK(751,534)
LCLICK(751,534)
WAITMS(500)
RCLICK(751,534)
WAITMS(500)
LCLICK(850,629)
WAITMS(500)
LCLICK(912,609)
waitms(200)
LCLICK(819,704)
wait(3)
END_SUB
SUB(sell)
// 2 выставляю колбаску на продажу
LCLICK(424,372)
LCLICK(1013,535)
LCLICK(1013,535)
RCLICK(1013,535)
WAITMS(200)
LCLICK(1077,603)
RCLICK(1816,642)
WAITMS(200)
LCLICK(1747,696)
LCLICK(1878,904)
LCLICK(1720,1005)
LCLICK(1799,1008)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1645,961)
LCLICK(1870,1010)
RCLICK(1824,645)
WAITMS(200)
LCLICK(1737,677)
LCLICK(1013,535)
LCLICK(1013,535)
keydown(#ctrl)
waitms(200)
keypress(#v)
LCLICK(1177,605)
LCLICK(1085,703)
END_SUB
//далее наш выполняемый код.
// для начала, пробуем купить и продать
buy() //выполнение подпрограмм, которые описаны выше
sell()
//далее, бесконечный цикл, где будем проверять - купили или нет, продали или нет
WHILE(1)
// 3 - проверяем, продали мне ее или нет
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
//если продали
print("колбаса моя!")
buy() //снова пытаемся купить
else
//если не продали
// 5 - забираем деньги
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,7255099)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
//скорость
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
buy() // и снова пытаемся купить
END_IF
//-----------------------------------------------
// 4 проверяем, купил у меня кто колбасу или нет
$_N1=1350
$_N2=86
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100)
//если купили
print("колбаса продана!")
sell() //пытаемся продать еще
else
//если не купили
//6 - поднимаю колбасу
//
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,4411888)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
sell() // и пытаемся продать еще раз (2)
END_IF
END_CYC
Что не так? Чтото работает не правильно? Твои эксперименты с гото бессмысленны...
Он видит что моя колбаса лежит , но все равно перебивает
-
Он видит что моя колбаса лежит , но все равно перебивает
А сейчас поподробнее, что значит лежит? При продаже или при покупке?
-
Я наверное понял.
Вот это блак скорее всего должен работать так:
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100) //смотрим, есть наша колбаса или нет
//если не купили, колбаса на прилавке
//6 - поднимаю колбасу
//
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,4411888)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
sell() // и пытаемся продать еще раз (2)
else
//если купили
print("колбаса продана!")
sell() //пытаемся продать еще
END_IF
Так как ты скорее всего ищешь картинку колбасы на прилавке. И если она там есть, то забираем и кладем снова. Если же ее нет, то кладем еще.
Весь код:
//тут две подпрограммы, они выше основного кода
SUB(buy)
// 1 ставим цену выше других и пытаемся купить колбасу
LCLICK(410,464)
LCLICK(751,534)
LCLICK(751,534)
RCLICK(751,534)
WAITMS(50)
LCLICK(830,596)
RCLICK(1838,639)
WAITMS(50)
LCLICK(1765,689)
LCLICK(1873,956)
LCLICK(1721,1007)
LCLICK(1800,1008)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1642,960)
LCLICK(1872,1005)
RCLICK(1838,639)
WAITMS(300)
LCLICK(1763,663)
WAITMS(500)
LCLICK(751,534)
LCLICK(751,534)
WAITMS(500)
RCLICK(751,534)
WAITMS(500)
LCLICK(850,629)
WAITMS(500)
LCLICK(912,609)
waitms(200)
LCLICK(819,704)
wait(3)
END_SUB
SUB(sell)
// 2 выставляю колбаску на продажу
LCLICK(424,372)
LCLICK(1013,535)
LCLICK(1013,535)
RCLICK(1013,535)
WAITMS(200)
LCLICK(1077,603)
RCLICK(1816,642)
WAITMS(200)
LCLICK(1747,696)
LCLICK(1878,904)
LCLICK(1720,1005)
LCLICK(1799,1008)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1645,961)
LCLICK(1870,1010)
RCLICK(1824,645)
WAITMS(200)
LCLICK(1737,677)
LCLICK(1013,535)
LCLICK(1013,535)
keydown(#ctrl)
waitms(200)
keypress(#v)
LCLICK(1177,605)
LCLICK(1085,703)
END_SUB
//далее наш выполняемый код.
// для начала, пробуем купить и продать
buy() //выполнение подпрограмм, которые описаны выше
sell()
//далее, бесконечный цикл, где будем проверять - купили или нет, продали или нет
WHILE(1)
// 3 - проверяем, продали мне ее или нет
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
//если продали
print("колбаса моя!")
buy() //снова пытаемся купить
else
//если не продали
// 5 - забираем деньги
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,7255099)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
//скорость
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
buy() // и снова пытаемся купить
END_IF
//-----------------------------------------------
// 4 проверяем, купил у меня кто колбасу или нет
$_N1=1350
$_N2=86
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100) //смотрим, есть наша колбаса или нет
//если не купили, колбаса на прилавке
//6 - поднимаю колбасу
//
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,4411888)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
sell() // и пытаемся продать еще раз (2)
else
//если купили
print("колбаса продана!")
sell() //пытаемся продать еще
END_IF
END_CYC
-
Он видит что моя колбаса лежит , но все равно перебивает
А сейчас поподробнее, что значит лежит? При продаже или при покупке?
Ну при покупке на подносе лежит колбаса.При продаже колбаса на подносе
-
Я наверное понял.
Вот это блак скорее всего должен работать так:
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100) //смотрим, есть наша колбаса или нет
//если не купили, колбаса на прилавке
//6 - поднимаю колбасу
//
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,4411888)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
sell() // и пытаемся продать еще раз (2)
else
//если купили
print("колбаса продана!")
sell() //пытаемся продать еще
END_IF
Так как ты скорее всего ищешь картинку колбасы на прилавке. И если она там есть, то забираем и кладем снова. Если же ее нет, то кладем еще.
Весь код:
//тут две подпрограммы, они выше основного кода
SUB(buy)
// 1 ставим цену выше других и пытаемся купить колбасу
LCLICK(410,464)
LCLICK(751,534)
LCLICK(751,534)
RCLICK(751,534)
WAITMS(50)
LCLICK(830,596)
RCLICK(1838,639)
WAITMS(50)
LCLICK(1765,689)
LCLICK(1873,956)
LCLICK(1721,1007)
LCLICK(1800,1008)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1642,960)
LCLICK(1872,1005)
RCLICK(1838,639)
WAITMS(300)
LCLICK(1763,663)
WAITMS(500)
LCLICK(751,534)
LCLICK(751,534)
WAITMS(500)
RCLICK(751,534)
WAITMS(500)
LCLICK(850,629)
WAITMS(500)
LCLICK(912,609)
waitms(200)
LCLICK(819,704)
wait(3)
END_SUB
SUB(sell)
// 2 выставляю колбаску на продажу
LCLICK(424,372)
LCLICK(1013,535)
LCLICK(1013,535)
RCLICK(1013,535)
WAITMS(200)
LCLICK(1077,603)
RCLICK(1816,642)
WAITMS(200)
LCLICK(1747,696)
LCLICK(1878,904)
LCLICK(1720,1005)
LCLICK(1799,1008)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1645,961)
LCLICK(1870,1010)
RCLICK(1824,645)
WAITMS(200)
LCLICK(1737,677)
LCLICK(1013,535)
LCLICK(1013,535)
keydown(#ctrl)
waitms(200)
keypress(#v)
LCLICK(1177,605)
LCLICK(1085,703)
END_SUB
//далее наш выполняемый код.
// для начала, пробуем купить и продать
buy() //выполнение подпрограмм, которые описаны выше
sell()
//далее, бесконечный цикл, где будем проверять - купили или нет, продали или нет
WHILE(1)
// 3 - проверяем, продали мне ее или нет
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
//если продали
print("колбаса моя!")
buy() //снова пытаемся купить
else
//если не продали
// 5 - забираем деньги
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,7255099)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
//скорость
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
buy() // и снова пытаемся купить
END_IF
//-----------------------------------------------
// 4 проверяем, купил у меня кто колбасу или нет
$_N1=1350
$_N2=86
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100) //смотрим, есть наша колбаса или нет
//если не купили, колбаса на прилавке
//6 - поднимаю колбасу
//
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,4411888)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
sell() // и пытаемся продать еще раз (2)
else
//если купили
print("колбаса продана!")
sell() //пытаемся продать еще
END_IF
END_CYC
Нет, если не купили , но лежит ближе всех к продавцу, то не делаем ничего . Если не купили и меня кто-то перебивает на подносе то я 6 поднимаю и ставлю на продажу 2. Такая же система с покупкой колбасы. Суть в том что я постоянно должен сидеть с выгодной для покупателя/продавцы ценой.Вот надеюсь сейчас понятно)
-
Нет, если не купили , но лежит ближе всех к продавцу, то не делаем ничего . Если не купили и меня кто-то перебивает на подносе то я 6 поднимаю и ставлю на продажу 2. Такая же система с покупкой колбасы. Суть в том что я постоянно должен сидеть с выгодной для покупателя/продавцы ценой.Вот надеюсь сейчас понятно)
//тут две подпрограммы, они выше основного кода
SUB(buy)
// 1 ставим цену выше других и пытаемся купить колбасу
LCLICK(410,464)
LCLICK(751,534)
LCLICK(751,534)
RCLICK(751,534)
WAITMS(50)
LCLICK(830,596)
RCLICK(1838,639)
WAITMS(50)
LCLICK(1765,689)
LCLICK(1873,956)
LCLICK(1721,1007)
LCLICK(1800,1008)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1642,960)
LCLICK(1872,1005)
RCLICK(1838,639)
WAITMS(300)
LCLICK(1763,663)
WAITMS(500)
LCLICK(751,534)
LCLICK(751,534)
WAITMS(500)
RCLICK(751,534)
WAITMS(500)
LCLICK(850,629)
WAITMS(500)
LCLICK(912,609)
waitms(200)
LCLICK(819,704)
wait(3)
END_SUB
SUB(sell)
// 2 выставляю колбаску на продажу
LCLICK(424,372)
LCLICK(1013,535)
LCLICK(1013,535)
RCLICK(1013,535)
WAITMS(200)
LCLICK(1077,603)
RCLICK(1816,642)
WAITMS(200)
LCLICK(1747,696)
LCLICK(1878,904)
LCLICK(1720,1005)
LCLICK(1799,1008)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1645,961)
LCLICK(1870,1010)
RCLICK(1824,645)
WAITMS(200)
LCLICK(1737,677)
LCLICK(1013,535)
LCLICK(1013,535)
keydown(#ctrl)
waitms(200)
keypress(#v)
LCLICK(1177,605)
LCLICK(1085,703)
END_SUB
//далее наш выполняемый код.
// для начала, пробуем купить и продать
buy() //выполнение подпрограмм, которые описаны выше
sell()
//далее, бесконечный цикл, где будем проверять - купили или нет, продали или нет
WHILE(1)
// 3 - проверяем, продали мне ее или нет
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
//если продали
print("колбаса моя!")
buy() //снова пытаемся купить
else
//если не продали
// 5 - забираем деньги
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,7255099)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
//скорость
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
buy() // и снова пытаемся купить
END_IF
//-----------------------------------------------
// 4 проверяем, купил у меня кто колбасу или нет
$_N1=1350
$_N2=86
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100)
//если купили
print("колбаса продана!")
sell() //пытаемся продать еще
else
//если не купили
//6 - поднимаю колбасу
//
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,4411888)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
sell() // и пытаемся продать еще раз (2)
END_IF
END_CYC
Именно так все и должно работать. Проверяй, правильно ли находит (не находит) искомые картинки. Правильно ли идет поиск пикселя.
Может тебе стоит начать с малого? В начале написать скрипт в роли покупателя к примеру. Пошагово самому разобраться в принципе работы условий и поисках картинок. Для отладки используй print("текст"), чтобы видеть в каком месте в данный момент выполняется скрипт.
-
Нет, если не купили , но лежит ближе всех к продавцу, то не делаем ничего . Если не купили и меня кто-то перебивает на подносе то я 6 поднимаю и ставлю на продажу 2. Такая же система с покупкой колбасы. Суть в том что я постоянно должен сидеть с выгодной для покупателя/продавцы ценой.Вот надеюсь сейчас понятно)
//тут две подпрограммы, они выше основного кода
SUB(buy)
// 1 ставим цену выше других и пытаемся купить колбасу
LCLICK(410,464)
LCLICK(751,534)
LCLICK(751,534)
RCLICK(751,534)
WAITMS(50)
LCLICK(830,596)
RCLICK(1838,639)
WAITMS(50)
LCLICK(1765,689)
LCLICK(1873,956)
LCLICK(1721,1007)
LCLICK(1800,1008)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1721,1007)
LCLICK(1642,960)
LCLICK(1872,1005)
RCLICK(1838,639)
WAITMS(300)
LCLICK(1763,663)
WAITMS(500)
LCLICK(751,534)
LCLICK(751,534)
WAITMS(500)
RCLICK(751,534)
WAITMS(500)
LCLICK(850,629)
WAITMS(500)
LCLICK(912,609)
waitms(200)
LCLICK(819,704)
wait(3)
END_SUB
SUB(sell)
// 2 выставляю колбаску на продажу
LCLICK(424,372)
LCLICK(1013,535)
LCLICK(1013,535)
RCLICK(1013,535)
WAITMS(200)
LCLICK(1077,603)
RCLICK(1816,642)
WAITMS(200)
LCLICK(1747,696)
LCLICK(1878,904)
LCLICK(1720,1005)
LCLICK(1799,1008)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1720,1005)
LCLICK(1645,961)
LCLICK(1870,1010)
RCLICK(1824,645)
WAITMS(200)
LCLICK(1737,677)
LCLICK(1013,535)
LCLICK(1013,535)
keydown(#ctrl)
waitms(200)
keypress(#v)
LCLICK(1177,605)
LCLICK(1085,703)
END_SUB
//далее наш выполняемый код.
// для начала, пробуем купить и продать
buy() //выполнение подпрограмм, которые описаны выше
sell()
//далее, бесконечный цикл, где будем проверять - купили или нет, продали или нет
WHILE(1)
// 3 - проверяем, продали мне ее или нет
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
//если продали
print("колбаса моя!")
buy() //снова пытаемся купить
else
//если не продали
// 5 - забираем деньги
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,7255099)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
//скорость
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
buy() // и снова пытаемся купить
END_IF
//-----------------------------------------------
// 4 проверяем, купил у меня кто колбасу или нет
$_N1=1350
$_N2=86
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100)
//если купили
print("колбаса продана!")
sell() //пытаемся продать еще
else
//если не купили
//6 - поднимаю колбасу
//
$_N1=1350
$_N2=86
GETSCREEN (720,857,769,987)
IF_PIXEL_IN(720,857,769,987,4411888)
MOVE($_return1, $_return2)
WAITMS(500)
FOR($a=0,$a<$_N1)
MOVER(1,0)
END_CYC
WAITMS(500)
LCLICK($_xmouse, $_ymouse)
FOR($a=0,$a<$_N2)
MOVER(0,-1)
END_CYC
WAIT(1)
LCLICK($_xmouse, $_ymouse)
WAIT(1)
END_IF
sell() // и пытаемся продать еще раз (2)
END_IF
END_CYC
Именно так все и должно работать. Проверяй, правильно ли находит (не находит) искомые картинки. Правильно ли идет поиск пикселя.
Может тебе стоит начать с малого? В начале написать скрипт в роли покупателя к примеру. Пошагово самому разобраться в принципе работы условий и поисках картинок. Для отладки используй print("текст"), чтобы видеть в каком месте в данный момент выполняется скрипт.
Все поэтапно проверил , работает каждый блок как часы . Но как ни крути но поднятия колбасы он так и не доходит, застревает на постоянной покупке и продаже выполняя только их ???
-
Ребят, нет ни у кого предложений больше?
-
Желательно чтобы после каждого действия типо клик и нажатие клавиши была задержка. Потому что игра может пропускать очень частые и быстрые клики.
К тому же почему у тебя вот здесь зажимается Ctrl а потом нигде не отпускается?
LCLICK(1737,677)
LCLICK(1013,535)
LCLICK(1013,535)
keydown(#ctrl)
waitms(200)
keypress(#v)
LCLICK(1177,605)
LCLICK(1085,703)
Хочешь вставить Ctrl+V пиши так
KEYDOWN (#CTRL)
WAITMS (50)
KEYPRESS (#V)
KEYUP (#CTRL)
-
Все поэтапно проверил , работает каждый блок как часы . Но как ни крути но поднятия колбасы он так и не доходит, застревает на постоянной покупке и продаже выполняя только их ???
С номерами 1, 2, 5 и 6 еще можно поверить, что работает как нужно. Но вот мне интересно, с чего такая уверенность в правильной работе №3 и №4?
// 3 - если оно верно направляет на 1 , если нет , то на 5
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
END_IF
// 4 - если оно верно направляет на 2 , если нет , то на 6
$_N1=1350
$_N2=86
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100)
END_IF
Это как бы самые главные условия работы всего скрипта. Именно от нахождения нужной картинки зависит то что будет делать кликерман.
-
Просьба к автору темы.
Дайте теме вразумительное название. Вот как в таких темах ориентироваться?
-
Все поэтапно проверил , работает каждый блок как часы . Но как ни крути но поднятия колбасы он так и не доходит, застревает на постоянной покупке и продаже выполняя только их ???
С номерами 1, 2, 5 и 6 еще можно поверить, что работает как нужно. Но вот мне интересно, с чего такая уверенность в правильной работе №3 и №4?
// 3 - если оно верно направляет на 1 , если нет , то на 5
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
END_IF
// 4 - если оно верно направляет на 2 , если нет , то на 6
$_N1=1350
$_N2=86
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100)
END_IF
Это как бы самые главные условия работы всего скрипта. Именно от нахождения нужной картинки зависит то что будет делать кликерман.
10 раз их проверил , все работает)
-
Просьба к автору темы.
Дайте теме вразумительное название. Вот как в таких темах ориентироваться?
Я бы с радостью, но как поменять , найти не могу
-
Изменить первый пост?
Я не в курсе у меня при редактировании любого поста можно изменить.
-
Все поэтапно проверил , работает каждый блок как часы . Но как ни крути но поднятия колбасы он так и не доходит, застревает на постоянной покупке и продаже выполняя только их ???
С номерами 1, 2, 5 и 6 еще можно поверить, что работает как нужно. Но вот мне интересно, с чего такая уверенность в правильной работе №3 и №4?
// 3 - если оно верно направляет на 1 , если нет , то на 5
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "buy.bmp", -1, 100)
END_IF
// 4 - если оно верно направляет на 2 , если нет , то на 6
$_N1=1350
$_N2=86
GETSCREEN
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "sell.bmp", -1, 100)
END_IF
Это как бы самые главные условия работы всего скрипта. Именно от нахождения нужной картинки зависит то что будет делать кликерман.
10 раз их проверил , все работает)
Мне вот интересно, в чем такая уверенность? Как ты этим кодом узнал есть там картинка или нет? И что именно в этом коде работает? Имеется ввиду №3 и №4