Author Topic: Ошибка при интерпретации строки  (Read 4776 times)

0 Members and 1 Guest are viewing this topic.

haerb

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
Ошибка при интерпретации строки
« on: February 29, 2020, 09:59:07 PM »
Code: [Select]
$campX = 1170
$campY = 595

$firstButtonX[0] = 1500
$firstButtonY[0] = 435
$firstButtonY[1] = 635
$firstButtonY[2] = 835

$secondButtonX[1] = 1820
$secondButtonY[0] = 135
$secondButtonY[1] = 325
$secondButtonY[2] = 515

$thirdButtonX[2] = 1510
$thirdButtonY[0] = 240
$thirdButtonY[1] = 435
$thirdButtonY[2] = 630

$isScoutAvailable[0] = 0
$isScoutAvailable[1] = 0
$isScoutAvailable[2] = 0

SUB(checkScout, $i, $x, $y)
   GETSCREEN
   IF(PXL($x,$y) = 48895)
      $isScoutAvailable[$i] = 1
   ELSE
      $isScoutAvailable[$i] = 0
   END_IF
END_SUB

SUB(clickButton, $x, $y)
   LCLICK($x,$y)
   WAIT(2)
END_SUB

clickButton($campX, $campY)
clickButton($campX+200, $campY+160)

WHILE($isScoutAvailable[0] = 0 & $isScoutAvailable[1] = 0 & $isScoutAvailable[2] = 0)
   checkScout(0, $firstButtonX[0], $firstButtonY[0])
checkScout(1, $firstButtonX[0], $firstButtonY[1])
checkScout(2, $firstButtonX[0], $firstButtonY[2]) 
END_CYC

$selectedScout = 0

FOR($i, $i < ARRSIZE($isScoutAvailable))
   IF($isScoutAvailable[$i] = 1)       
      $selectedScout = $i
   END_IF
END_CYC

clickButton($firstButtonX[$selectedScout], $firstButtonY[$selectedScout])

Errorlog: Thread _MAIN(0) raise exception
« Last Edit: February 29, 2020, 11:26:19 PM by haerb »

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Re: Ошибка при интерпретации строки
« Reply #1 on: February 29, 2020, 10:58:00 PM »
А ты эту строку вообще в скрипте видишь...? - "LCLICK($firstButtonX[$selectedScout],$firstButtonY[$s..."
Или ты решил попробовать людям моцк взорвать...?
Я не ду... Потому и не бу...

haerb

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
Re: Ошибка при интерпретации строки
« Reply #2 on: February 29, 2020, 11:00:52 PM »
А ты эту строку вообще в скрипте видишь...? - "LCLICK($firstButtonX[$selectedScout],$firstButtonY[$s..."
Или ты решил попробовать людям моцк взорвать...?

Скрин с полной программы, просто другие имена переменных, суть та же.
« Last Edit: February 29, 2020, 11:02:24 PM by haerb »

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Re: Ошибка при интерпретации строки
« Reply #3 on: February 29, 2020, 11:07:00 PM »
А ты эту строку вообще в скрипте видишь...? - "LCLICK($firstButtonX[$selectedScout],$firstButtonY[$s..."
Или ты решил попробовать людям моцк взорвать...?

Скрин с полной программы, просто другие имена переменных, суть та же.
Тут людям проблем хватает, чтобы еще твои ребусы разгадывать... Тебе нужна помощь? Предоставь людям достоверную информацию. А тот код, что ты дал, лично у меня работает без ошибок.
Я не ду... Потому и не бу...

haerb

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
Re: Ошибка при интерпретации строки
« Reply #4 on: February 29, 2020, 11:24:58 PM »
А ты эту строку вообще в скрипте видишь...? - "LCLICK($firstButtonX[$selectedScout],$firstButtonY[$s..."
Или ты решил попробовать людям моцк взорвать...?

Скрин с полной программы, просто другие имена переменных, суть та же.
Тут людям проблем хватает, чтобы еще твои ребусы разгадывать... Тебе нужна помощь? Предоставь людям достоверную информацию. А тот код, что ты дал, лично у меня работает без ошибок.

Отредактировал пост

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Re: Ошибка при интерпретации строки
« Reply #5 on: February 29, 2020, 11:39:31 PM »
А ты эту строку вообще в скрипте видишь...? - "LCLICK($firstButtonX[$selectedScout],$firstButtonY[$s..."
Или ты решил попробовать людям моцк взорвать...?

Скрин с полной программы, просто другие имена переменных, суть та же.
Тут людям проблем хватает, чтобы еще твои ребусы разгадывать... Тебе нужна помощь? Предоставь людям достоверную информацию. А тот код, что ты дал, лично у меня работает без ошибок.

Отредактировал пост

Ты издеваешься что ль...? Ты в своем отредактированном посте, в скрипте видишь строку - "PUSH($FIRSTBUTTONX[$SELECTEDSCOUNT])"...?
Я не ду... Потому и не бу...

haerb

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
Re: Ошибка при интерпретации строки
« Reply #6 on: February 29, 2020, 11:41:50 PM »
А ты эту строку вообще в скрипте видишь...? - "LCLICK($firstButtonX[$selectedScout],$firstButtonY[$s..."
Или ты решил попробовать людям моцк взорвать...?

Скрин с полной программы, просто другие имена переменных, суть та же.
Тут людям проблем хватает, чтобы еще твои ребусы разгадывать... Тебе нужна помощь? Предоставь людям достоверную информацию. А тот код, что ты дал, лично у меня работает без ошибок.

Отредактировал пост

Ты издеваешься что ль...? Ты в своем отредактированном посте, в скрипте видишь строку - "PUSH($FIRSTBUTTONX[$SELECTEDSCOUNT])"...?

Нет не издеваюсь, выскакивает именно это

haerb

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
Re: Ошибка при интерпретации строки
« Reply #7 on: February 29, 2020, 11:45:55 PM »
А ты эту строку вообще в скрипте видишь...? - "LCLICK($firstButtonX[$selectedScout],$firstButtonY[$s..."
Или ты решил попробовать людям моцк взорвать...?

Скрин с полной программы, просто другие имена переменных, суть та же.
Тут людям проблем хватает, чтобы еще твои ребусы разгадывать... Тебе нужна помощь? Предоставь людям достоверную информацию. А тот код, что ты дал, лично у меня работает без ошибок.

Отредактировал пост

Ты издеваешься что ль...? Ты в своем отредактированном посте, в скрипте видишь строку - "PUSH($FIRSTBUTTONX[$SELECTEDSCOUNT])"...?

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Re: Ошибка при интерпретации строки
« Reply #8 on: February 29, 2020, 11:55:35 PM »
А если скрипт запустить без 54 строки - не выдает ошибку? Если нет, то вставь это вместо 54 строки и посмотри в логе, какое значение пишет.
Code: (clickermann) [Select]
LOGWRITE ("selectedScout = ",$selectedScout)
Я не ду... Потому и не бу...

haerb

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
Re: Ошибка при интерпретации строки
« Reply #9 on: March 01, 2020, 12:01:43 AM »
А если скрипт запустить без 54 строки - не выдает ошибку? Если нет, то вставь это вместо 54 строки и посмотри в логе, какое значение пишет.
Code: (clickermann) [Select]
LOGWRITE ("selectedScout = ",$selectedScout)

Без 54 запускает, из лога selectedScout = 2. Еще если убрать последний FOR и индексы вручную подставить, то тоже все работает. Дело в цикле.

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Re: Ошибка при интерпретации строки
« Reply #10 on: March 01, 2020, 12:04:56 AM »
А если скрипт запустить без 54 строки - не выдает ошибку? Если нет, то вставь это вместо 54 строки и посмотри в логе, какое значение пишет.
Code: (clickermann) [Select]
LOGWRITE ("selectedScout = ",$selectedScout)

Без 54 запускает, из лога selectedScout = 2. Еще если убрать последний FOR и индексы вручную подставить, то тоже все работает. Дело в цикле.
У тебя
Code: (clickermann) [Select]
FOR($i, $i < ARRSIZE($isScoutAvailable))
   IF($isScoutAvailable[$i] = 1)       
      $selectedScout = $i
   END_IF
END_CYC
Ничего не смущает...?
В редакторе кликера - шаблоны -> Циклы, условия -> FOR, и сравни...
« Last Edit: March 01, 2020, 12:08:37 AM by Hito »
Я не ду... Потому и не бу...

haerb

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
Re: Ошибка при интерпретации строки
« Reply #11 on: March 01, 2020, 12:10:59 AM »
А если скрипт запустить без 54 строки - не выдает ошибку? Если нет, то вставь это вместо 54 строки и посмотри в логе, какое значение пишет.
Code: (clickermann) [Select]
LOGWRITE ("selectedScout = ",$selectedScout)

Без 54 запускает, из лога selectedScout = 2. Еще если убрать последний FOR и индексы вручную подставить, то тоже все работает. Дело в цикле.
У тебя
Code: (clickermann) [Select]
FOR($i, $i < ARRSIZE($isScoutAvailable))
   IF($isScoutAvailable[$i] = 1)       
      $selectedScout = $i
   END_IF
END_CYC
Ничего не смущает...?
В редакторе кликера - шаблоны -> Циклы, условия -> FOR, и сравни...

Ну если вы про инициализацию счетчика, то в документации написано, что он 0 если его не инициализировать.

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Re: Ошибка при интерпретации строки
« Reply #12 on: March 01, 2020, 12:13:45 AM »
Ну если вы про инициализацию счетчика, то в документации написано, что он 0 если его не инициализировать.
Он = 0 на ПЕРВОМ кругу скрипта. А на выходе из цикла FOR эта переменная у тебя уже имеет значение, и возвращаясь по кругу к циклу у тебя уже получается пердоманохль.
« Last Edit: March 01, 2020, 12:16:33 AM by Hito »
Я не ду... Потому и не бу...

haerb

  • Зашел в гости
  • *
  • Posts: 11
    • View Profile
Re: Ошибка при интерпретации строки
« Reply #13 on: March 01, 2020, 12:16:59 AM »
Ну если вы про инициализацию счетчика, то в документации написано, что он 0 если его не инициализировать.
Он = 0 на ПЕРВОМ кругу скрипта.

Инициализировал, не помогло

Hito

  • Герой форума
  • *****
  • Posts: 1212
    • View Profile
Re: Ошибка при интерпретации строки
« Reply #14 on: March 01, 2020, 12:29:57 AM »
Прикольно. Мы наткнулись на штуку, на которую я не раз натыкался, но не заводил об этом тут темы. В массивах есть такая шляпа, что они вроде написаны абсолютно одинаково, но скрипт выдает ошибку. А потом скопируешь в ошибочный массив буквы из того же массива, но оттуда, где он инициализируется, и вуаля - все работает...
Скопируй эту строку
Code: (clickermann) [Select]
clickButton($firstButtonX[$selectedScout], $firstButtonY[$selectedScout])И вставь вместо своей.
« Last Edit: March 01, 2020, 12:31:28 AM by Hito »
Я не ду... Потому и не бу...