Автокликер Clickermann :: Форум

Основной раздел => Общие вопросы => Topic started by: lanser285 on November 10, 2013, 06:36:58 PM

Title: не подключается скрипт
Post by: lanser285 on November 10, 2013, 06:36:58 PM
вот такой вопросик...отдельно скрипт пашет, если подключаю его через #include в другом скрипте то он не пашет, в чем проблема?

#name "in_com_dar"
LOGSHOW(1)
wait(1)
//ïðèíèìàåì ïîäàðêè===================================================
print("ïðèåì ïîäàðêîâ")
GETSCREEN
$dari = 1
WHILE($dari < 6)  // 5 ïîäàðêîâ ïîêà
   //ïðîâåðêà ïîäàðêîâ
   $chek_dar=0
   while($chek_dar=0)
      GETSCREEN
      IF_PICTURE_IN (0,0,$_xmax,$_ymax, STRCONCAT("dar", $dari, ".bmp"))
         print("ïðèíèìàåì ïîäàðîê dar",$dari)
         LCLICK($_return1+100, $_return2+10)
         wait(4)
         GETSCREEN
         IF_PICTURE_IN (0,0,$_xmax,$_ymax, "send_vk.bmp")
            print("îòïðàâëÿåì ïîäàðîê dar",$dari)
            LCLICK($_return1+100, $_return2+10)
            wait(4)
         end_if              
      END_IF
   else      
      $chek_dar=1
      waitms(50)
   END_CYC
else
    print("íåò ïîäàðêà dar",$dari)
   INC($dari)
   waitms(50)
END_CYC
//--------------------------------
wait(1)
print("ïðèåì ïîäàðêîâ îêîí÷åí")
Title: Re: не подключается скрипт
Post by: Vint on November 10, 2013, 07:02:56 PM
Наверное не находит ресурсы (картинки для поиска). Как там всё по папкам раскидано?
Title: Re: не подключается скрипт
Post by: lanser285 on November 10, 2013, 07:13:30 PM
Наверное не находит ресурсы (картинки для поиска). Как там всё по папкам раскидано?
нет, все скрипты и картинки в одной папке..
Title: Re: не подключается скрипт
Post by: Johnny on November 10, 2013, 07:23:24 PM
а сам другой скрипт в той же папке? инклуд, как и все ресурсы, работает относительно текущей папки проекта
Title: Re: не подключается скрипт
Post by: lanser285 on November 10, 2013, 07:39:38 PM
а сам другой скрипт в той же папке? инклуд, как и все ресурсы, работает относительно текущей папки проекта

да, скрипт в котором я подключаю скрипт описанный выше в той же папке(все скрипты и картинки в одной папке)
он его подключает, в логе пишется первый принт, но ни цикл не выполняет, ни последний принт он не пишет, и шпилит дальше по основному скрипту
Title: Re: не подключается скрипт
Post by: Vint on November 10, 2013, 08:06:45 PM
Переменные не пересекаются?
Последний Else не лишний? Да и предпоследний тоже Что он делает в цикле WHILE? А говоришь работает.
Title: Re: не подключается скрипт
Post by: lanser285 on November 10, 2013, 08:14:02 PM
Переменные не пересекаются?
Последний Else не лишний? Да и предпоследний тоже Что он делает в цикле WHILE? А говоришь работает.
:o вот я нупень...но реально работает отдельно :-X спс, буду исправлять))))
Title: Re: не подключается скрипт
Post by: lanser285 on November 10, 2013, 08:21:50 PM
Переменные не пересекаются?
Последний Else не лишний? Да и предпоследний тоже Что он делает в цикле WHILE? А говоришь работает.
:o вот я нупень...но реально работает отдельно :-X спс, буду исправлять))))
 
:'(всеравно не робит
Title: Re: не подключается скрипт
Post by: Vint on November 10, 2013, 08:43:19 PM
Покажи. Может не допилил.
Title: Re: не подключается скрипт
Post by: lanser285 on November 10, 2013, 08:44:37 PM
Покажи. Может не допилил.
вот
Code: (clickermann) [Select]
// New Script
// Author: Anonymous
// Version: 1.0 (03.11.2013)

#name "in_com_dar"
LOGSHOW(1)
wait(1)
//ïðèíèìàåì ïîäàðêè===================================================
print("ïðèåì ïîäàðêîâ")
GETSCREEN
$dari = 1
WHILE($dari < 6)  // 5 ïîäàðêîâ ïîêà
//ïðîâåðêà ïîäàðêîâ
$chek_dar=0
while($chek_dar=0)
GETSCREEN
IF_PICTURE_IN (0,0,$_xmax,$_ymax, STRCONCAT("dar", $dari, ".bmp"))
print("ïðèíèìàåì ïîäàðîê dar",$dari)
LCLICK($_return1+100, $_return2+10)
wait(4)
GETSCREEN
IF_PICTURE_IN (0,0,$_xmax,$_ymax, "send_vk.bmp")
print("îòïðàâëÿåì ïîäàðîê dar",$dari)
LCLICK($_return1+100, $_return2+10)
wait(4)
end_if      
END_IF
$chek_dar=1
waitms(50)
END_CYC
 print("íåò ïîäàðêà dar",$dari)
 INC($dari)
 waitms(50)
END_CYC
//--------------------------------
wait(1)
print("ïðèåì ïîäàðêîâ îêîí÷åí")
Title: Re: не подключается скрипт
Post by: lanser285 on November 10, 2013, 08:58:07 PM
сделал то же самое через цикл for и все заработало....но всетаки интересно почему через while не пашет..
Code: (clickermann) [Select]
// New Script
// Author: Anonymous
// Version: 1.0 (03.11.2013)

#name "in_com_dar"
LOGSHOW(1)
wait(1)
//ïðèíèìàåì ïîäàðêè===================================================
print("ïðèåì ïîäàðêîâ")
GETSCREEN
for($dari,$dari < 6)  // 5 ïîäàðêîâ ïîêà
//ïðîâåðêà ïîäàðêîâ
$chek_dar=0
while($chek_dar=0)
GETSCREEN
IF_PICTURE_IN (0,0,$_xmax,$_ymax, STRCONCAT("dar", $dari, ".bmp"))
print("ïðèíèìàåì ïîäàðîê dar",$dari)
LCLICK($_return1+100, $_return2+10)
wait(4)
GETSCREEN
IF_PICTURE_IN (0,0,$_xmax,$_ymax, "send_vk.bmp")
print("îòïðàâëÿåì ïîäàðîê dar",$dari)
LCLICK($_return1+100, $_return2+10)
wait(4)
end_if      
END_IF
$chek_dar=1
waitms(50)
END_CYC
 print("íåò ïîäàðêà dar",$dari)
 INC($dari)
 waitms(50)
END_CYC
//--------------------------------
wait(1)
print("ïðèåì ïîäàðêîâ îêîí÷åí")
Title: Re: не подключается скрипт
Post by: Vint on November 10, 2013, 09:01:55 PM
Потому, что неправильно.  Второй while у тебя не работает. В независимости от поиска ты сразу выскакиваешь. 6 раз проскочит очень быстро.
Title: Re: не подключается скрипт
Post by: lanser285 on November 10, 2013, 09:14:28 PM
Потому, что неправильно.  Второй while у тебя не работает. В независимости от поиска ты сразу выскакиваешь. 6 раз проскочит очень быстро.
почему не работает второй wile? как будет правильно?)даже если он не работает почему последний принт не печатает в логе? оО
Title: Re: не подключается скрипт
Post by: Vint on November 10, 2013, 09:28:14 PM
Не совсем так. Скрипт работает, но не работает внутренний цикл. Его тело работает 1 раз, как будто цикла нет вовсе.
В версии с For тоже.
Title: Re: не подключается скрипт
Post by: lanser285 on November 10, 2013, 09:40:33 PM
Не совсем так. Скрипт работает, но не работает внутренний цикл. Его тело работает 1 раз, как будто цикла нет вовсе.
В версии с For тоже.
вот лог, 5-й подарок принял и второй раз проверил)
Title: Re: не подключается скрипт
Post by: Vint on November 10, 2013, 10:44:43 PM
Ты не понял. Цикл со счетчиком выполняется. И всё что внутри. Но внутренний while зачем? Можешь его стереть ничего не изменится.
Title: Re: не подключается скрипт
Post by: lanser285 on November 10, 2013, 10:52:43 PM
Ты не понял. Цикл со счетчиком выполняется. И всё что внутри. Но внутренний while зачем? Можешь его стереть ничего не изменится.
смотри внешний цикл это перебор массива картинок, а внутренний вайл это если он принял подарок то должен повторить действие ибо таких действий несколько может быть(заранее не известно). или есть какой то еще способ зациклить внутреннее действие?) у меня возник еще один вопрос...можно ли в конструкции IF_PICTURE_IN использовать логическое или? и как это описать если возможно?
Title: Re: не подключается скрипт
Post by: Vint on November 11, 2013, 07:17:49 AM
смотри внешний цикл это перебор массива картинок, а внутренний вайл это если он принял подарок то должен повторить действие ибо таких действий несколько может быть(заранее не известно). или есть какой то еще способ зациклить внутреннее действие?)
Это всё и так видно, как ты хотел. Но у тебя не так.
Вот твой код сокращённо, видишь?
Code: (clickermann) [Select]
while($chek_dar=0)
   GETSCREEN
   IF_PICTURE_IN (0,0,$_xmax,$_ymax, STRCONCAT("dar", $dari, ".bmp"))
      //...
   END_IF
   $chek_dar=1
   waitms(50)
END_CYC
можно ли в конструкции IF_PICTURE_IN использовать логическое или? и как это описать если возможно?
"Или" нет. Можно использовать вложенность в ELSE
Code: (clickermann) [Select]
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "somefile1.bmp")
   // нашли 1
ELSE
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "somefile2.bmp")
      // нашли 2
   ELSE
// и т.д. если нужно
   END_IF
END_IF
Title: Re: не подключается скрипт
Post by: lanser285 on November 11, 2013, 10:42:27 AM
смотри внешний цикл это перебор массива картинок, а внутренний вайл это если он принял подарок то должен повторить действие ибо таких действий несколько может быть(заранее не известно). или есть какой то еще способ зациклить внутреннее действие?)
Это всё и так видно, как ты хотел. Но у тебя не так.
Вот твой код сокращённо, видишь?
да, уже понял о чем ты) $chek_dar=1 перенес под елсе в конструкцию поиска катинки во вложенном цикле)
Вложенность елсе я уже использовал, просто в одном и том же месте месте может быть 2 варианта картинки, а действие одно и то же, думал можно как нибудь код сократить) спасибо за ответы)
Title: Re: не подключается скрипт
Post by: lanser285 on November 11, 2013, 12:35:37 PM
"Или" нет. Можно использовать вложенность в ELSE
Code: (clickermann) [Select]
IF_PICTURE_IN (0,0, $_xmax,$_ymax, "somefile1.bmp")
   // нашли 1
ELSE
   IF_PICTURE_IN (0,0, $_xmax,$_ymax, "somefile2.bmp")
      // нашли 2
   ELSE
// и т.д. если нужно
   END_IF
END_IF

решил вот так сделать, будут переноситься координаты при нахождении первой картинки?
Code: (clickermann) [Select]
IF_PICTURE_IN (0,0,$_xmax,$_ymax,"xpatak.bmp")
goto(dublexpatak)
else
IF_PICTURE_IN (0,0,$_xmax,$_ymax,"xpatak1.bmp")
dublexpatak:
print("óäàð")
LCLICK($_return1+10, $_return2+10)
END_IF
END_IF
Title: Re: не подключается скрипт
Post by: Oraven on November 11, 2013, 04:16:34 PM
Вот как правильно

Code: (clickermann) [Select]
GETSCREEN
IF_PICTURE_IN (0,0,$_xmax,$_ymax,"xpatak.bmp")
      print("удар")
      LCLICK($_return1+10, $_return2+10)
else
   IF_PICTURE_IN (0,0,$_xmax,$_ymax,"xpatak1.bmp")
      print("удар")
      LCLICK($_return1+10, $_return2+10)
   END_IF
END_IF
Title: Re: не подключается скрипт
Post by: Vint on November 11, 2013, 09:59:55 PM
lanser285, было бы там что сокращать. А ты ввел 2 строчки чтобы сократить 2 строчки. При этом поломал стройность и линейность скрипта.