16
Использование / Re: Три в ряд
« on: October 21, 2018, 12:01:48 PM »
7 цветов имелось ввиду с сейфами, они на скрине есть.
Добавлена тема оформления "Clickermann" для кода с подсветкой синтаксиса. Выбирается из выпадающего списка "Код" (рядом с "цвет", "размер" и "шрифт") в режиме редактирования поста. Либо просто BB-тегом "code=clickermann"
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
доделали конечно, даже с многочисленными избыточными возможностями, по сравнению с первоначальным описанием автора темы, к сожалению у меня авторский вариант не сохранился, так-как почти год темой ни кто здесь не интересовался.Эх, жаль. Может в почте или где после пересылок осталось...
Из всего скрипта что я видел выше, там только два вызова ф-ции pxl(), больше связанного с графикой ничего нет... Так что мне нечего сказать по этому поводу .
start:
WAITMS(1000)
LCLICK(952,327) // старт
WAITMS(500)
$time = $_ms + 5000 // проверка готовности к атаке
WHILE($time > $_ms)
GETSCREEN(1206,132,1206,132)
COLORMODE(6,1206,132,1206,132)
IF(PXL(1206,132)=16777215)
WAITMS(200)
LCLICK(1038,286) // экспедиция
WAITMS(100)
$time = 0
ELSE
WAITMS(100)
LCLICK(952,327)
WAITMS(200)
END_IF
END_CYC
// к бою
atk:
WAITMS(500)
LOGWRITE ("В атаку!!!")
WAITMS(100)
LCLICK(899,560)
WAITMS(100)
// проверяем загрузились ли
perviy:
$var1 = 0
$time = $_ms + 10000 // 10 сек ищет цвет
WHILE($time > $_ms)
GETSCREEN(642,97,642,97)
LOGWRITE ("глюк1")
COLORMODE(6,642,97,642,97)
IF(PXL(642,97)=16777215)
WAITMS(2000)
LCLICK(647,163)
LOGWRITE ("глюк2")
WAITMS(500)
GETSCREEN(886,501,886,501)
COLORMODE(6,886,501,886,501)
IF(PXL(886,501)=8355711)
WAITMS(200)
LCLICK(574,617)
LOGWRITE ("глюк3")
WAITMS(2000)
$var1 = 1
$time = 0
ELSE
WAITMS(200)
LCLICK(958,500)
LOGWRITE ("глюк4")
WAITMS(3000)
$var1 = 0
$time = 0
END_IF
ELSE
WAITMS(50)
END_IF
END_CYC
IF($time ! 0)
LCLICK(574,617)
WAITMS(50)
LOGWRITE ("глюк5")
GOTO(perviy)
END_IF
IF($var1 = 1)
GOTO(perviy)
END_IF
vtoroy:
$var2 = 0
$time = $_ms + 10000 // делает второй ход
WHILE($time > $_ms)
GETSCREEN(642,97,642,97)
COLORMODE(6,642,97,642,97)
IF(PXL(642,97)=16777215)
WAITMS(500)
LCLICK(647,277) // кастует
WAITMS(500)
GETSCREEN(883,502,883,502)
COLORMODE(6,883,502,883,502)
IF(PXL(883,502)=8355711)
WAITMS(200)
LCLICK(574,617)
WAITMS(2000)
$var2 = 1
$time = 0
ELSE
WAITMS(200)
LCLICK(958,500)
WAITMS(3000)
$var2 = 0
$time = 0
END_IF
ELSE
WAITMS(50)
END_IF
END_CYC
IF($time ! 0)
GOTO(end)
END_IF
IF($var2 = 1)
GOTO(vtoroy)
END_IF
tretiy:
$var3 = 0
$time = $_ms + 10000 // делает третий ход
WHILE($time > $_ms)
GETSCREEN(642,97,642,97)
COLORMODE(6,642,97,642,97)
IF(PXL(642,97)=16777215)
$var3 = 1
$time = 0
ELSE
WAITMS(50)
END_IF
END_CYC
IF($time ! 0)
GOTO(end)
END_IF
IF($var3 = 1)
GOTO(boll)
END_IF
boll: // 3 ход!
$var4 = 0
$time = $_ms + 2000 // проверка заряда феникса
WHILE($time > $_ms)
GETSCREEN(643,524,643,524)
COLORMODE(6,643,524,643,524)
IF(PXL(643,524)=8388607)
WAITMS(100)
LOGWRITE ("Заряжен")
WAITMS(500)
LCLICK(645,540) // кастует феникс
WAITMS(500)
GETSCREEN(883,502,883,502)
COLORMODE(6,883,502,883,502)
IF(PXL(883,502)=8355711)
WAITMS(200)
LCLICK(574,617)
LOGWRITE ("хз 1")
WAITMS(2000)
$var4 = 1
$time = 0
ELSE
WAITMS(200)
LCLICK(958,500)
LOGWRITE ("хз 2")
WAITMS(200)
$var4 = 2
$time = 0
END_IF
ELSE
WAITMS(50)
END_IF
END_CYC
IF($time ! 0)
LOGWRITE ("Не видит заряд1")
WAITMS(200)
LCLICK(654,418) // кастует шар
WAITMS(500)
GETSCREEN(883,502,883,502)
COLORMODE(6,883,502,883,502)
IF(PXL(883,502)=8355711)
WAITMS(200)
LCLICK(574,617)
LOGWRITE ("хз 3")
WAITMS(2000)
GOTO(boll)
ELSE
WAITMS(200)
LCLICK(958,500)
LOGWRITE ("хз 4")
WAITMS(3000)
GOTO(phenix)
END_IF
END_IF
IF($var4 = 1)
LOGWRITE ("вар4 1")
GOTO(boll)
END_IF
IF($var4 = 2)
LOGWRITE ("вар4 2")
GOTO(end)
END_IF
phenix: // ход феникса
LOGWRITE ("феникс")
$time = $_ms + 10000 // проверяет ход феникса
WHILE($time > $_ms)
GETSCREEN(642,97,642,97)
COLORMODE(6,642,97,642,97)
IF(PXL(642,97)=16777215)
LOGWRITE ("ход феня")
$time = 0
ELSE
WAITMS(50)
END_IF
END_CYC
IF($time ! 0)
GOTO(end)
END_IF
$var5 = 0
$time = $_ms + 2000 // проверка заряда феникса
WHILE($time > $_ms)
GETSCREEN(643,524,643,524)
COLORMODE(6,643,524,643,524)
IF(PXL(643,524)=8388607)
WAITMS(100)
LOGWRITE ("Заряжен")
WAITMS(500)
LCLICK(645,540) // кастует феникс
WAITMS(500)
GETSCREEN(883,502,883,502)
COLORMODE(6,883,502,883,502)
IF(PXL(883,502)=8355711)
WAITMS(200)
LCLICK(574,617)
LOGWRITE ("ххз5")
WAITMS(2000)
$var5 = 1
$time = 0
ELSE
WAITMS(200)
LCLICK(958,500)
LOGWRITE ("ххз6")
WAITMS(1000)
$var5 = 2
$time = 0
END_IF
ELSE
WAITMS(50)
END_IF
END_CYC
IF($time ! 0)
WAITMS(100)
LOGWRITE ("Не видит заряд2")
WAITMS(100)
LCLICK(1330,57) // выходим
WAITMS(1000)
LCLICK(956,457)
WAITMS(1000)
LCLICK(1041,397)
WAITMS(1000)
GOTO(start)
END_IF
IF($var5 = 1)
LOGWRITE ("вар5-1")
GOTO(phenix)
END_IF
IF($var5 = 2)
LOGWRITE ("вар5-2")
GOTO(end)
END_IF
end:
$var6 = 0
$time = $_ms + 5000 // выходим
LOGWRITE ("енд")
WHILE($time > $_ms)
GETSCREEN(1038,546,1038,546)
COLORMODE(6,1038,546,1038,546)
IF(PXL(1038,546)=4177791)
WAITMS(100)
LOGWRITE ("Зашел в энд")
WAITMS(200)
LCLICK(1038,546)
WAITMS(1000)
GETSCREEN(974,398,974,398) // нет ли петомца
COLORMODE(6,974,398,974,398)
IF(PXL(974,398)=4177791)
WAITMS(500)
LOGWRITE ("ПЕТ")
LCLICK(974,398)
WAITMS(1000)
$var6 = 1
$time = 0
ELSE
WAITMS(100)
LOGWRITE ("не пет")
$var6 = 1
$time = 0
END_IF
WAITMS(100)
LCLICK(1038,546)
WAITMS(500)
GETSCREEN(1013,436,1013,436)
COLORMODE(6,1013,436,1013,436)
IF(PXL(1013,436)=16777215) // или 1009,279
WAITMS(1000)
LCLICK(1062,544)
WAITMS(1000)
LCLICK(888,443) // прав 888,443, лев 1024,453
WAITMS(2000)
LOGWRITE ("лвл")
$var6 = 1
$time = 0
ELSE
LOGWRITE ("не лвл")
$var6 = 1
$time = 0
END_IF
ELSE
WAITMS(100)
LCLICK(1053,503)
WAITMS(100)
END_IF
END_CYC
IF($time ! 0)
LCLICK(1330,57) // не нашел ход выходит
WAITMS(1000)
LCLICK(956,457)
WAITMS(1000)
LOGWRITE ("не вышел")
LCLICK(1041,397)
WAITMS(1000)
GOTO(start)
END_IF
IF($var6 = 1)
LOGWRITE ("вар6")
GOTO(atk)
END_IF
halt
Вот это вот условие IF(PXL(886,501)=6118493) никогда не выполнится. Так как перед ним стоит COLORMODE(6), а в шестом колормоде такой цвет отсутствует.А как так получилось? Я вроде все через лупу и алт+Q делал? Как мне тогда цвет в 6 колор перевести?
Варианта два, либо убирать колормод, либо ставить верный цвет. Твой цвет 6118493 - в колормоде №6 он равен 8355711
perviy:
$time = $_ms + 10000 // 10 сек ищет цвет
WHILE($time > $_ms)
GETSCREEN(642,97,642,97)
LOGWRITE ("глюк1")
COLORMODE(6,642,97,642,97)
IF(PXL(642,97)=16777215)
WAITMS(500)
LCLICK(647,163)
LOGWRITE ("глюк2")
GETSCREEN(886,501,886,501)
COLORMODE(6,886,501,886,501)
IF(PXL(886,501)=6118493)
WAITMS(1000)
LCLICK(574,617)
LOGWRITE ("глюк3")
WAITMS(2000)
GOTO(perviy)
ELSE
WAITMS(500)
LCLICK(958,500)
LOGWRITE ("глюк4")
WAITMS(3000)
$time = 0
END_IF
$time = 0
ELSE
WAITMS(50)
END_IF
END_CYC
IF($time ! 0)
LCLICK(574,617)
LOGWRITE ("глюк5")
GOTO(perviy)
WAIT(5)
LCLICK(899,560) // 2331970
WAIT(1)
$time = $_ms + 10000 // 10 сек ищет цвет
GETSCREEN
WHILE((PXL(642,97)=16777215)&($time > $_ms))
WAITMS(50)
GETSCREEN
COLORMODE(6,642,97,642,97)
END_CYC
WAITMS(1000)
LCLICK(647,163) // делает клик если находит цвет
WAITMS(50)
IF($time < $_ms)
LCLICK(1330,57) // делает клик если не находит
WAITMS(50)
END_IF
halt