Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: Hito on July 10, 2014, 03:19:44 PM
-
Привет всем, ребят! Почему вот это не работает, а...?
IF($time < $_time_t)
KEYPRESS(51) //
WAITMS(500)
$time = $_time_t + 31
END_IF
IF($time < $_time_t)
KEYPRESS(53) //
WAITMS(4000)
$time = $_time_t + 6
END_IF
IF($time < $_time_t)
KEYPRESS(55) //
WAITMS(4500)
$time = $_time_t + 6
END_IF
-
Привет! Это просто потому, что тут требуется обнулять переменную $time, после использования в условии. Иначе она содержит ненужное в этом скрипте значение, и следующее условие не выполняется.
UNDEFINE($time)
-
Большое спасибо!
-
Обнуление переменной также не правильно как и назвать их одним именем, одна перетирает другую.
Чтобы это работало переменные в которые записывается отметка времени должны иметь разные имена!
IF($time1 < $_time_t)
KEYPRESS(51) //
WAITMS(500)
$time1 = $_time_t + 31
END_IF
IF($time2 < $_time_t)
KEYPRESS(53) //
WAITMS(4000)
$time2 = $_time_t + 6
END_IF
IF($time3 < $_time_t)
KEYPRESS(55) //
WAITMS(4500)
$time3 = $_time_t + 6
END_IF
WAITMS(50)
-
Тоже спасибо! В принципе всё заработало по предыдущему варианту, но думаю, что так будет правильней. Спс!
-
Ну вот, решения найдены и скрипт, казалось бы, заработал! :) Только задачу надо ставить чуть конкретнее.
Если скрипт выполняется один раз, то зачем строки вида $time1 = $_time_t + 31?
Если же скрипт будет выполняться в цикле, то удалять переменные или дать им разные имена, уже скажется на результатах.
Скрипт в цикле, при удалении переменных инструкцией UNDEFINE() будет нажимать клавиши в таком порядке:
357 357 357 357 357 357 (пробелы для наглядности). Тут время между нажатиями легко регулировать.
Скрипт в цикле, с разноименными переменными, уже выдаст нажатия:
357 575 735 757 573 575 причем, через какие промежутки времени будет нажимать, понять очень сложно. Смахивает на рандомные нажатия. Но для рандома логичнее наверно использовать функции RND() или RNDFROM().
Информации для решения задачи маловато...
-
Задача часто встречаемая, нажимать кнопки через определенный промежуток времени но не останавливая скрипт. Одно действие работает постоянно, другие время от времени.
-
Задача такая... Есть дофига скилов с разным временем отката. Вот и все. Нужно, чтобы перс юзал эти скилы все по откатам. Скрипт работает по кругу.
-
Я сделал вот так :)
IF($time1 < $_time_t)
KEYPRESS(51) //
WAITMS(500)
$time1 = $_time_t + 31
END_IF
UNDEFINE($time)
IF($time2 < $_time_t)
KEYPRESS(53) //
WAITMS(4000)
$time2 = $_time_t + 6
END_IF
UNDEFINE($time)
IF($time3 < $_time_t)
KEYPRESS(55) //
WAITMS(4500)
$time3 = $_time_t + 6
END_IF
UNDEFINE($time)
Всё работает изюмительно :)
-
UNDEFINE($time) в скрипте не играет вообще никакой роли так как ты используешь переменные с совершенно другими именами, да и не нужно ничего обнулять! Добавил в конце задержку в 50 мс, это чтобы пока скрипт крутится в холостую кликер не нагружал проц.
IF($time1 < $_time_t)
KEYPRESS(51) //
WAITMS(500)
$time1 = $_time_t + 31
END_IF
IF($time2 < $_time_t)
KEYPRESS(53) //
WAITMS(4000)
$time2 = $_time_t + 6
END_IF
IF($time3 < $_time_t)
KEYPRESS(55) //
WAITMS(4500)
$time3 = $_time_t + 6
END_IF
WAITMS(50)
Разжую тебе подробнее. Системная переменная $_time_t выдает текущее вемя Unix - это количество секунд, прошедших с полуночи (00:00:00 UTC) 1 января 1970 года (четверг); время с этого момента называют «эрой UNIX» (англ. Unix Epoch).
У нас есть условие
Если(Переменнаяtime1 меньше Вемя Unix)
то выполняем внутренность
Присваиваем переменнойtime1 текущее время Unix + 31 секунду
Конец условия
Далее условие не будет срабатывать пока всремяUnix не нагонит значение в переменной $time1
Чувствуешь разницу между $time1и $time? Это разные переменные! И обнулять тут ничего не нужно.
-
Oraven, я очень благодарен, что ты мне уделил внимание, но я нихрена не понял из "разжованного подробно" тобой. Пойми только меня правильно - это не огрызание в твою сторону с моей стороны. Это признание своего нубства в таких вещах. Я давно вижу, что вот ты (черный котик) и еще один чел (космонавт) тут самые продвинутые и больше всех помогаете другим разобраться. За это вам ОГРОМНОЕ спасибо! Но разжевать мне что-то навряд ли получится... Я по мере возможности задаю тут вопросы и по чуть-чуть познаю програмку. Вы мне примерами ответили и мне этого было достаточно. Если ты считаешь, что эта строка не нужна, то скажи просто - "Эта строка не нужна". Мне этого будет достаточно :) Ты и (космонавт) для меня тут авторитеты :) Всем остальным конечно тоже спасибо за помощь... ))