Author Topic: очередная помощь)  (Read 9502 times)

0 Members and 1 Guest are viewing this topic.

lanser285

  • Освоившийся
  • **
  • Posts: 60
    • View Profile
очередная помощь)
« on: December 03, 2013, 11:01:35 PM »
Code: (clickermann) [Select]
// New Script
// Author: Anonymous
// Version: 1.0 (25.11.2013)
IF($var = 0)
   #name "arena"
   LOGSHOW (1)
   //ïðîâåðêà ìîíèêà===============================================================
   $energy_arena=0
   WHILE($energy_arena=0)
      GETSCREEN
      IF_PICTURE_IN (0,0, $_xmax,$_ymax, "energy_arena.bmp")
         $energy_arena=1
         print("íàøåë èêîíêó ýíåðãèÿ")
      else
         #include "pomehi.cms"
      END_IF
   END_CYC
   //ïðîâåðêà íàëè÷èÿ ýíåðãèè------------------------------------------------------
   $energy_arena_true=0
   WHILE($energy_arena_true=0)
      GETSCREEN
      IF_PICTURE_IN (0,0, $_xmax,$_ymax, "energy_arena_true.bmp")
         INC($kol_vo_aren,1)
         $energy_arena_true=1
         print("åñòü ýíåðãèÿ, äóåì íà àðåíó")
         IF_PICTURE_IN (0,0, $_xmax,$_ymax, "arena.bmp")
            print("æìåì êíîïêó íà àðåíó")
            LCLICK($_return1+10, $_return2+10)
         END_IF
      else
         print("áîëò ýíåðãèè, ãî íà ôàðì")
         goto(end_pvp)
      END_IF
   END_CYC
   //------------------------------------------------------------------------------
   //æìåì êíîïêó ïîèñêà ñîïåðíèêîâ
   $zayava=0
   WHILE($zayava=0)
      GETSCREEN
      IF_PICTURE_IN (0,0, $_xmax,$_ymax, "zayava.bmp")
         $zayava=1
         print("ïîäàåì çàÿâó")
         LCLICK($_return1+100, $_return2+35)
      else
         print("íå âèäíî êíîïêè çàÿâû")
      END_IF
   END_CYC
   //ïðîâåðêà õîäà
   $time=0
   WHILE($time=0)
      GETSCREEN
      IF_PICTURE_IN (0,0, $_xmax,$_ymax, "me_time.bmp")
         $time=1
         print("ìîé õîä")
      else
         IF_PICTURE_IN (0,0, $_xmax,$_ymax, "him_time.bmp")
            $time=2
            print("õîä âðàãà")
         END_IF
      END_IF
   END_CYC
   wait(2)
   //ðàçìåòêà
   GETSCREEN
   scanpicture($me_xp, 0,0, $_xmax,$_ymax, "me_xp.bmp")
   $X1=$me_xp[0]
   $Y1=$me_xp[1]
   $X2=$me_xp[2]
   $Y2=$me_xp[3]
   scanpicture($him_xp, 0,0, $_xmax,$_ymax, "him_xp.bmp")
   $X3=$him_xp[0]
   $Y3=$him_xp[1]
   $X4=$him_xp[2]
   $Y4=$him_xp[3]
   print("X1=",$X1,"Y1=",$Y1,"X2=",$X2,"Y2=",$Y2)
   print("X3=",$X3,"Y3=",$Y3,"X4=",$X4,"Y4=",$Y4)
   wait(2)
end_pvp:
END_IF
суть проблемы в следующем: не выполняет блок разметки начиная с 64 строки, если общий иф убираем (т.е. без 4-й строки и 79-й) то все пашет. ничо не понимаю(

ЦИТРИН

  • Супермодератор
  • Оплот сообщества
  • *
  • Posts: 484
  • Марафон опавших листьев, коктейль из дыма и мыслей
    • View Profile
Re: очередная помощь)
« Reply #1 on: December 03, 2013, 11:40:08 PM »
   #name "arena"
 по идее это выражение  должно стоять на первой строчке.
Может как-то влияет.
Попробуй поменять
Бабочки полёт будит тихую поляну в солнечном свету...

lanser285

  • Освоившийся
  • **
  • Posts: 60
    • View Profile
Re: очередная помощь)
« Reply #2 on: December 04, 2013, 12:24:17 AM »
   #name "arena"
 по идее это выражение  должно стоять на первой строчке.
Может как-то влияет.
Попробуй поменять
поменял, не помогло.
в аналогичных ситуациях других файлов то все нормально, дело в том что код стоящий под общим ифом идет как инклуд по этому и #name "arena"  попадает под иф, но проблема не в нем. 

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: очередная помощь)
« Reply #3 on: December 04, 2013, 08:26:24 AM »
Он совсем не выводит в лог 75,76 строку, или выводит не то?
Точно не прыгает на end_pvp ?

Старайся не применять метки вида end_ На код может и не влияет, но разметку после себя будет портить.


aden

  • Оплот сообщества
  • ****
  • Posts: 363
    • View Profile
Re: очередная помощь)
« Reply #4 on: December 04, 2013, 08:54:42 AM »
перед выполнением этого кода сделай проверку значения переменной, походу в ней проблема.

Code: [Select]
//debag
logwrite($var)
« Last Edit: December 04, 2013, 08:58:53 AM by aden »

lanser285

  • Освоившийся
  • **
  • Posts: 60
    • View Profile
Re: очередная помощь)
« Reply #5 on: December 04, 2013, 12:12:08 PM »
Он совсем не выводит в лог 75,76 строку, или выводит не то?
Точно не прыгает на end_pvp ? - вроде нет 

Старайся не применять метки вида end_ На код может и не влияет, но разметку после себя будет портить. - спасибо, а я думал почему разметка малость портится, есть еще пара  метки вида end_

вот лог
11:07:55 вход в бой
13:07:34 нашел иконку энергия
13:07:35 есть энергия, дуем на арену
13:07:35 жмем кнопку на арену
13:07:36 не видно кнопки заявы
13:07:37 подаем заяву
13:07:54 мой ход
=========вот тут должна быть разметка строки 64-76
13:07:57 проверяем помехи
13:08:08 проверяем помехи

lanser285

  • Освоившийся
  • **
  • Posts: 60
    • View Profile
Re: очередная помощь)
« Reply #6 on: December 04, 2013, 12:25:59 PM »
перед выполнением этого кода сделай проверку значения переменной, походу в ней проблема.

Code: [Select]
//debag
logwrite($var)

каким образом она может повлиять? блок простой, если переменная равно нулю, то выполняется если нет, то не выполняется, к тому же в основном коде она задается.

aden

  • Оплот сообщества
  • ****
  • Posts: 363
    • View Profile
Re: очередная помощь)
« Reply #7 on: December 04, 2013, 12:33:24 PM »
lanser285, да сори невнимательно прочитал суть проблемы

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: очередная помощь)
« Reply #8 on: December 04, 2013, 01:12:32 PM »
Всё. Я понял. Это косяк.

Вылезла проблема, которую я нашёл тут: http://crapware.aidf.org/forum/index.php?topic=359.msg2934#msg2934

Джони ответил тут: http://crapware.aidf.org/forum/index.php?topic=362.msg2954#msg2954

Только одна вещь... под этот шаблон попадает и SCANPICTURE вместе с SCANPXL


Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: очередная помощь)
« Reply #9 on: December 04, 2013, 01:31:07 PM »
Пока можно обойти, вынеся проблемный участок из под IF, например в подпрограмму.

Code: (clickermann) [Select]
...
   //разметка
   GOSUB(razmetka)
   wait(2)
end_pvp:
END_IF


SUB (razmetka)
   GETSCREEN
   scanpicture($me_xp, 0,0, $_xmax,$_ymax, "me_xp.bmp")
   $X1=$me_xp[0]
   $Y1=$me_xp[1]
   $X2=$me_xp[2]
   $Y2=$me_xp[3]
   scanpicture($him_xp, 0,0, $_xmax,$_ymax, "him_xp.bmp")
   $X3=$him_xp[0]
   $Y3=$him_xp[1]
   $X4=$him_xp[2]
   $Y4=$him_xp[3]
   print("X1=",$X1,"Y1=",$Y1,"X2=",$X2,"Y2=",$Y2)
   print("X3=",$X3,"Y3=",$Y3,"X4=",$X4,"Y4=",$Y4)
END_SUB


lanser285

  • Освоившийся
  • **
  • Posts: 60
    • View Profile
Re: очередная помощь)
« Reply #10 on: December 04, 2013, 02:11:41 PM »
Пока можно обойти, вынеся проблемный участок из под IF, например в подпрограмму.
благодарю) буду пробывать)

lanser285

  • Освоившийся
  • **
  • Posts: 60
    • View Profile
Re: очередная помощь)
« Reply #11 on: December 04, 2013, 02:33:06 PM »
Пока можно обойти, вынеся проблемный участок из под IF, например в подпрограмму.

нэ помогло(
15:29:00 нашел иконку энергия
15:29:00 есть энергия, дуем на арену
15:29:00 жмем кнопку на арену
15:29:02 не видно кнопки заявы
15:29:03 подаем заяву
15:29:18 ход врага
15:29:24 проверяем помехи

Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: очередная помощь)
« Reply #12 on: December 04, 2013, 04:28:10 PM »
С LOGWRITE проканало, а вот с scanpicture действительно, нет.

... Нет, не так. LOGWRITE проходит только 1 раз, если 2+ проблемных строк, срабатывает только первая.
Короче, труба.


Vint

  • Супермодератор
  • Герой форума
  • *
  • Posts: 3935
  • Лечу куда хочу. cman 4.13.014x32, 4.14.003 W10
    • View Profile
Re: очередная помощь)
« Reply #13 on: December 04, 2013, 04:32:46 PM »
О, у меня вот так заработало... В саб нужно выделять по одному проблемному месту
Code: (clickermann) [Select]
...
   GETSCREEN
   GOSUB(razmetka1)
   GOSUB(razmetka2)
   print("X1=",$X1,"Y1=",$Y1,"X2=",$X2,"Y2=",$Y2)
   print("X3=",$X3,"Y3=",$Y3,"X4=",$X4,"Y4=",$Y4)
   wait(2)
end_pvp:
END_IF


HALT

SUB (razmetka1)
scanpicture($me_xp, 0,0, $_xmax,$_ymax, "1.bmp")
$X1=$me_xp[0]
$Y1=$me_xp[1]
$X2=$me_xp[2]
$Y2=$me_xp[3]
END_SUB

SUB (razmetka2)
scanpicture($him_xp, 0,0, $_xmax,$_ymax, "2.bmp")
$X3=$him_xp[0]
$Y3=$him_xp[1]
$X4=$him_xp[2]
$Y4=$him_xp[3]
END_SUB


lanser285

  • Освоившийся
  • **
  • Posts: 60
    • View Profile
Re: очередная помощь)
« Reply #14 on: December 04, 2013, 05:12:44 PM »
О, у меня вот так заработало... В саб нужно выделять по одному проблемному месту


сработать сработало, но картинки не нашло

18:01:52 нашел иконку энергия
18:01:52 есть энергия, дуем на арену
18:01:52 жмем кнопку на арену
18:01:54 не видно кнопки заявы
18:01:55 подаем заяву
18:02:17 ход врага
18:02:20 X1=0Y1=0X2=0Y2=0
18:02:20 X3=0Y3=0X4=0Y4=0

перенес гетскрин в каждый саб, всеравно не помогло(
18:09:19 нашел иконку энергия
18:09:19 есть энергия, дуем на арену
18:09:19 жмем кнопку на арену
18:09:21 не видно кнопки заявы
18:09:21 подаем заяву
18:09:38 ход врага
18:09:41 X1=0Y1=0X2=0Y2=0
18:09:41 X3=0Y3=0X4=0Y4=0

перенес принты в саб, очевидно, что не сработало вапще(

18:21:33 нашел иконку энергия
18:21:33 есть энергия, дуем на арену
18:21:33 жмем кнопку на арену
18:21:35 не видно кнопки заявы
18:21:35 подаем заяву
18:21:57 ход врага
18:22:03 проверяем помехи
« Last Edit: December 04, 2013, 05:26:26 PM by lanser285 »