Второй день как столкнулся с софтинкой, облазил форум, перечитал все посты с IF_PICTURE_IN,
и никак не догоню как правильно писать в таких случаях
if
else
indif
С учетом анализа двух координат (картинок)
если монстр Вася, а предмет не совпадает, то закрываем и ищем дальше, если монстр Вася, а предмет совпадает, то останавливаем. Просто монстры появляются разные, и координаты кнопки "прогнать" меняются, поэтому пришлось делать картинки монстров и разные координаты для их кнопок "прогнать". 4 утра, уснуть не могу (сломал меня скрипт), вроде в голове все понимаю, а расставить условия не могу.
go:
LCLICK(503,541) // обыскать пещеру
WAITMS(1500)
getscreen
IF_PICTURE_IN (686,336, 903,430, "klad.bmp") //находим нужную вещь
move($_return1, $_return2)
HINTPOPUP("клад", "найден")
HALT
ELSE
IF_PICTURE_IN (686,336, 903,430, "earch.bmp") //находим нужную вещь
move($_return1, $_return2)
HINTPOPUP("яйцо", "найдено")
HALT
ELSE
IF_PICTURE_IN (473,279, 608,474, "vasya.bmp") //монстр
LCLICK(819,453) //xy координаты кнопки закрытия
ELSE
LCLICK(503,541) //обыскать пещеру
WAITMS(1500)
IF_PICTURE_IN (686,336, 903,430, "klad.bmp") //находим нужную вещь
move($_return1, $_return2)
HINTPOPUP("клад", "найден")
HALT
ELSE
IF_PICTURE_IN (686,336, 903,430, "earch.bmp") //находим нужную вещь
move($_return1, $_return2)
HINTPOPUP("яйцо", "найдено")
HALT
ELSE
IF_PICTURE_IN (473,279, 608,474, "cherv.bmp") //монстр
LCLICK(821,467) //xy кнопки закрытия (уже в другом месте из-за разного окна с монстром)
ELSE
END_IF
LCLICK(503,541) //обыскать пещеру
IF_PICTURE_IN (430,367, 581,521, "starik.bmp") //закончилась энергия
HINTPOPUP("Нет энергии", "Конец")
SOUND("2967.wav")
HALT
ELSE
END_IF
goto(go)
С вариантом ниже (без скана монстров) пришлось несколько координат сделать для закрытия, что бы по кнопке попадал с разными монстрами. Знаю, что тоже кривой. (хотя и работает)
go:
WAITMS(RND(500,1500))
LCLICK(492,543) //начать раскопки
getscreen
IF_PICTURE_IN (686,336, 903,430, "klad.bmp") //находим нужную вещь
move($_return1, $_return2)
HINTPOPUP("клад", "найден")
SOUND("2967.wav")
HALT
ELSE
END_IF
WAITMS(RND(1000,1500))
LCLICK(834,452) //xy кнопки закрытия (уже в другом месте из-за разного окна с монстром)
LCLICK(833,469) //xy кнопки закрытия (уже в другом месте из-за разного окна с монстром)
LCLICK(835,436) //xy кнопки закрытия (уже в другом месте из-за разного окна с монстром)
ELSE
END_IF
IF_PICTURE_IN (686,336, 903,430, "earch.bmp") //находим нужную вещь
move($_return1, $_return2)
HINTPOPUP("яйцо", "найдено")
SOUND("2967.wav")
HALT
ELSE
END_IF
WAITMS(RND(1000,1500))
LCLICK(834,452) //xy кнопки закрытия (уже в другом месте из-за разного окна с монстром)
LCLICK(833,469) //xy кнопки закрытия (уже в другом месте из-за разного окна с монстром)
LCLICK(835,436) //xy кнопки закрытия (уже в другом месте из-за разного окна с монстром)
ELSE
END_IF
LCLICK(492,543) //начать раскопки
WAITMS(RND(1000,1500))
IF_PICTURE_IN (430,367, 581,521, "starik.bmp") //закончилась энергия
HINTPOPUP("Нет энергии", "Конец")
SOUND("2967.wav")
HALT
ELSE
END_IF
goto(go)
Я знаю, что куча неправильностей, но сам что то тугой.
Буду благодарен за помощь.
Ниже скрин для общего понимания. Или игра "Небеса"
Вроде доковырял.... Укажите на ошибки или как лучше сделать (скрипт вроде работает как надо).
go:
WAITMS(RND(500,1500))
getscreen
IF_PICTURE_IN (686,336, 903,430, "klad.bmp") //находим нужную вещь
move($_return1, $_return2)
HINTPOPUP("Клад", "Найден")
HALT
ELSE
END_IF
IF_PICTURE_IN (686,336, 903,430, "earch.bmp") //находим нужную вещь
move($_return1, $_return2)
HINTPOPUP("Яйцо", "Найдено")
HALT
ELSE
END_IF
IF_PICTURE_IN (473,279, 608,474, "cherv.bmp")
LCLICK(821,467) //кнопка прогнать
ELSE
LCLICK(492,543) // кнопка обыскать
END_IF
IF_PICTURE_IN (473,279, 608,474, "vasya.bmp")
LCLICK(819,453) //кнопка прогнать
ELSE
LCLICK(492,543) // кнопка обыскать
END_IF
IF_PICTURE_IN (473,279, 608,474, "spawn.bmp")
LCLICK(820,442) //кнопка прогнать
ELSE
LCLICK(492,543) // кнопка обыскать
END_IF
IF_PICTURE_IN (473,279, 608,474, "spawnr.bmp")
LCLICK(820,442) //кнопка прогнать
ELSE
LCLICK(492,543) // кнопка обыскать
END_IF
IF_PICTURE_IN (430,367, 581,521, "starik.bmp")
HINTPOPUP("Закончилась энергия", "Стоп")
SOUND("2967.wav")
HALT
ELSE
END_IF
goto(go)