сам скрипт для прокачки лечения:
//Раздел инициализации
/Нельза вставлять строки в разделе магии
/Сначала называем магию, потом задаем значение
/ для ее свойств, можно использовать выражения
Магия:
_Лечение
Позиция 1
Камни:
Красные 0
Синие 15
Зеленые 15
/Дальше никаких ограничений по вставке коментариев нет
/Все переменные целые числа
Переменные:
_i 0
/Каждой переменной нужно присваивать значение
_Выбор 0
_Случ 0
_Кр 0
_Син 0
_Зел 0
_Аура 0
//Все события происходят, только если ваш ход
//Ваши камни(жизни) и врага распознаны
Успешное_считывание_камней:
{
/Между ЕСЛИ и условием обязателен пробел
/Условие для ЕСЛИ должно быть записано в одну строку
/Для более компактной записи можно
/использовать переменные посредники
~Трассировка _Красных_Моих
~Трассировка _Синих_Моих
~Трассировка _Зеленых_Моих
~Трассировка _Лечение.Красные
~Трассировка _Лечение.Синие
~Трассировка _Лечение.Зеленые
//используем Лечение
ЕСЛИ ( ((_Красных_Моих > _Лечение.Красные)| (_Красных_Моих = _Лечение.Красные)) & ((_Синих_Моих > _Лечение.Синие)| (_Синих_Моих = _Лечение.Синие)) & ((_Зеленых_Моих > _Лечение.Зеленые)| (_Зеленых_Моих = _Лечение.Зеленые))& ((_Черепов_На_Поле < 5)| (_Черепов_На_Поле = 4)))
{
/в функциях с одним параметром можно
/использовать выражения
~Клик _Лечение.Позиция
/в функциях с несколькими параметрами нельзя
/использовать выражения
/Помните, что в бою бот считывает экран
/раз в 200 миллисекунд(когда его ход)
/в остальных раз в 500 миллисекунд(когда его ход)
~Случайное_Число 500 _Случ
/В переменную можно записывать ее же значение
_Случ _Случ + 500
~Пауза_Боя _Случ
~Выход_Из_Обработки
}
}
//Распознаны камни(жизни)свои и врага, а также поле
Успешное_считывание_поля:
{
/Сортирум по убыванию
/Переменные хода получают новый индекс
~Сортировка 1 6 5 4 Ч
/Цикл со счетчиком
_i -1
:начало
_i _i + 1
/ помните вариаты хода начинаются с 0
/ а значит последний из них
/всегда имеет номер равный ( _Вариантов_Ходов – 1 )
ЕСЛИ _i < _Вариантов_Ходов
{
/Разные операторы (=, +, * , & и т.д) имеют
/разный приоритет, но если вы не уверены
/что посчитает первым
/используйте скобки
ЕСЛИ _Ход[_i].Число_6 > 0 | _Ход[_i].Число_5 > 0 | _Ход[_i].Число_4 > 0
{
/Здесь оператор ИДТИ выходит
/из цикла как только находит
/нужный вариант хода
_Выбор _i
ИДТИ конец
}
ИНАЧЕ
{
ЕСЛИ ( _Ход[_i].Итог = 0)
{
_Выбор _i
ИДТИ конец
}
}
/Если подходящих так и не нашли
/то выбираем самый первый в списке
/Вообще то это условие лишнее
/переменная _Выбор изначально имеет значение 0
ЕСЛИ _i = (_Вариантов_Ходов - 1 )
{
_Выбор 0
ИДТИ конец
}
ИДТИ начало
}
:конец
/Что бы пауза между ходами была разной
/Используем функцию случайного числа
~Случайное_Число 3000 _Случ
_Случ _Случ + 4000
~Пауза_Боя _Случ
/Кликаем по ячейкам что указаны
/в выбранам нами вариатом хода
~Клик _Ход[_Выбор].Ячейка_11 _Ход[_Выбор].Ячейка_12
/Т.к. игра не успевает оброботать два клика сразу,
/Между ними нужно делать паузу
/трети секунды вполне хватает
~Спать 300
~Клик _Ход[_Выбор].Ячейка_21 _Ход[_Выбор].Ячейка_22
}результат трасировки:
1. 110 2. 110 3. 110 4. 0 5. 15 6. 15 1. 115 2. 114 3. 114 4. 0 5. 15 6. 15 1. 115 2. 101 3. 1 4. 0 5. 15 6. 15 1. 115 2. 99 3. 99 4. 0 5. 15 6. 15 1. 115 2. 87 3. 7 4. 0 5. 15 6. 15 1. 120 2. 89 3. 84 4. 0 5. 15 6. 15 1. 120 2. 74 3. 69 4. 0 5. 15 6. 15 1. 120 2. 59 3. 54 4. 0 5. 15 6. 15
видно что после первого и второго применения лечения "_Зеленых_Моих" принимает какието непонятные значения...