Автокликер Clickermann :: Форум
Основной раздел => Общие вопросы => Topic started by: Hito on June 17, 2018, 10:00:35 PM
-
Ребят, доброго времени суток! Вопрос такой... Я в нескольких окнах качаю целую гильдию персов в одной игре. Окна меж собой "общаются" с помощью ini. В принципе это не столь важно. Дело в том, что для всех окон и персов скрипт один, но чтобы этот скрипт "понимал" - "кто" он и как ему действовать, ему нужно "знать" имя перса, за которого он "отвечает", и потому, при запуске скрипта, кликер спрашивает посредством радиобокса - за какого перса собственно запускается этот скрипт. Так вот как бы мне еще сделать так, чтобы имя выбранного перса еще и автоматом добавлялось в строку - #name "Ник"? Пока работаю с hsettext($h, $pers), заменяя строку в названии кликера, но так ник перса не отображается в названии окна, когда кликер свернут и чтобы найти нужный кликер, приходится разворачивать все... Можно что-то сделать?
-
правильно понял, нужно, чтобы при наведении на иконку кликера в трее всплывало изменяемое из кода скрипта название?
это меня тоже интересует (хоть бы и костылём, сам напишу, но некогда копать, если кто знает - помогите)
-
правильно понял, нужно, чтобы при наведении на иконку кликера в трее всплывало изменяемое из кода скрипта название?
Да - именно. hsettext($h, $pers) так не получается, а вот - #name "Ник", очень хорошо справляется с этим. Но как программно вместо "Ник" подставить $pers, и так, чтобы работало - я хз...
-
очевидно, что из кликермана - только когда Джонни сделает. пока только извне костылём
-
Пробовал даже так:
$res = RADIOBOX("Выберите перса:", "Ник1", "Ник2", "Ник3")
SWITCH($res)
CASE(1)
#name "Nick1"
CASE(2)
#name "Nick2"
CASE(3)
#name "Nick3"
END_SWITCH
Но так даже просто при вставке скрипта в кликер, имя скрипта получается просто последнее - Nick3. Хоть что выбирай...
-
разумеется. директивы обрабатываются при запуске первыми и безусловно одна за другой
-
разумеется. директивы обрабатываются при запуске первыми и безусловно одна за другой
Ну, я просто думал, что может быть им нужно быть активными, чтобы они обработались...)
Видимо придется какой-то костыль опять на delphi мутить...
-
На счет костылей...
Создай для каждого ника свой скрипт по типу
#name "Nick1"
$res = "Nick1" // параметр настройки основного скрипта
#include "Основной_скрипт.cms"
-
На счет костылей...
Создай для каждого ника свой скрипт по типу
#name "Nick1"
$res = "Nick1" // параметр настройки основного скрипта
#include "Основной_скрипт.cms"
Идея
-
вот что я придумал
$res = RADIOBOX("Выберите перса:", "Ник1", "Ник2", "Ник3")
TFWRITE("Основной_скрипт.cms", STRCONCAT ("#name ", char(34),"ник", $res, char(34)), TFCOUNT("Основной_скрипт.cms")+1 )
EXECUTE ("Основной_скрипт.cms")
halt(1)
-
вот что я придумал
$res = RADIOBOX("Выберите перса:", "Ник1", "Ник2", "Ник3")
TFWRITE("Основной_скрипт.cms", STRCONCAT ("#name ", char(34),"ник", $res, char(34)), TFCOUNT("Основной_скрипт.cms")+1 )
EXECUTE ("Основной_скрипт.cms")
halt(1)
Практически решена проблема ;D
-
Ура!
Первый скрипт:
$res = RADIOBOX("Выберите перса:", "Бла", "Туруту", "Перс")
SWITCH($res)
CASE(1)
$pers="Бла"
CASE(2)
$pers="Туруту"
CASE(3)
$pers="Перс"
END_SWITCH
TFDELETE ("1.cms", 2)
TFWRITE("1.cms", STRCONCAT ("#name ",char(34),$pers,char(34),), 2 )
TFDELETE ("1.cms", 3)
TFWRITE("1.cms", STRCONCAT ("$pers=",char(34),$pers,char(34),), 3 )
EXECUTE ("1.cms")
halt(1)
Основной скрипт:
#autorun
#name "Перс"
$pers="Перс"
// Далее нужный скрипт
-
В общем если надо будет кому...
Устанавливаем песочницу Sandboxie. Устанавливаем браузер Safari (Safari не прячется от привязки кликера. Может еще какие не прячутся - я выбрал этот.) В Sandboxie настраиваем песочницы для каждого перса так, чтобы в именах, запущенных в них браузеров, были ники персов. Далее запускаем браузеры с персами.
Скрипт запуска трех кликеров:
TFDELETE ($skript, 2) // Удаляем вторую строку в скрипте
TFWRITE($skript, STRCONCAT ("#name ",char(34),"Nick1",char(34),), 2) // Записываем во вторую строку скрипта имя скрипта
TFDELETE ($skript, 4) // Удаляем четвертую строку в скрипте
TFWRITE($skript, STRCONCAT ("$pers=",char(34),"Nick1",char(34),), 4) // Записываем в четвертую строку скрипта переменную с ником перса
INIWRITE("variables.ini", "zanyato", 1, "ekran") // Отмечаем в ini, что монитор занят
EXECUTE ($skript) // Запускаем кликер со скриптом для персого перса
WHILE (INIREAD("variables.ini", "zanyato", "ekran") > 0) // Ждем, пока запущенный кликер освободит экран
WAITMS(50)
END_CYC
TFDELETE ($skript, 2)
TFWRITE($skript, STRCONCAT ("#name ",char(34),"Nick2",char(34),), 2)
TFDELETE ($skript, 4)
TFWRITE($skript, STRCONCAT ("$pers=",char(34),"Nick2",char(34),), 4)
INIWRITE("variables.ini", "zanyato", 1, "ekran")
EXECUTE ($skript)
WHILE (INIREAD("variables.ini", "zanyato", "ekran") > 0)
WAITMS(50)
END_CYC
TFDELETE ($skript, 2)
TFWRITE($skript, STRCONCAT ("#name ",char(34),"Nick3",char(34),), 2)
TFDELETE ($skript, 4)
TFWRITE($skript, STRCONCAT ("$pers=",char(34),"Nick3",char(34),), 4)
INIWRITE("variables.ini", "zanyato", 1, "ekran")
EXECUTE ($skript)
WHILE (INIREAD("variables.ini", "zanyato", "ekran") > 0)
WAITMS(50)
END_CYC
halt(1)
Можно было бы цикл намутить, но у персов же не будут действительно ники типа - Nik1... Но, можно запихнуть ники в текстовик и в цикле считать строки с никами - вариант. И еще кстати... Очень неплохо, если бы в кликере был некий чек, типа радиобокса. Только в радиобоксе можно один пункт выбрать, а в этом чеке можно было бы выбирать несколько пунктов. Это чтобы запустить, например, каких-нибудь трех персов из десяти.
Ну и скрипт запускаемый:
#autorun
#name "Ник, который вставит скрипт"
$pers="Ник, который вставит скрипт"
IF($kjgkjkj = 0)
$check_okno = 0
WHILE($check_okno = 0) // Запускаем цикл вывода нужного нам окна на передний план
IF($time < $_time_t) // На случай сбоя (если браузер не выйдет на передний план)
$h1=wndfind(STRCONCAT("[",$pers,"]")) // Ищем браузер нужного перса и считываем его id
IF($h1 = 0) // Если такой браузер не запущен
StrWriteln("log.txt", StrConcat($_date_d,": ",$_time_h,":",$_time_m,":",$_time_s," | Не нахожу ",$pers,"..."))
EXECUTE("TASKKILL","/F /IM Clickermann.exe") // Убиваем процессы всех запущенных кликеров
END_IF
WNDBUMP ($h1) // Выводим браузер с нужным персом на передний план
$time = $_time_t + 3
END_IF
$h2=hget(10,10) // Считываем id текущего окна, находящегося в координатах 10,10
IF($h1 = $h2) // Сравниваем id нужного нам окна с тем, что находится в координатах 10,10
$check_okno = 1 // Если id совпали, выходим из цикла
END_IF
END_CYC
MOVE(720,450) // Передвигаем мышь на окно флеш-плеера с игрой
WAITMS(50)
$h = hget($_xmouse, $_ymouse) // Считываем id флеш-плеера
hset($h, 1) // Привязываем кликер к флеш-плееру
INIWRITE("variables.ini", "zanyato", 0, "ekran") // Отмечаем в ini, что монитор свободен
$kjgkjkj = 1
END_IF
// Далее код