Может конечно что то я в скрипте напортачил. Он работает, но время от времени случаются ошибки выполнения.
Скрипт для чистки почты в игре Гнев Богов:
[spoiler]
// почта
// Автор: Полуночник
// Версия: 15.3 (30.07.2014)
A:
HINTPOPUP("Чищу почту")
LCLICK(95,85)       
$r1 = 467
$r2 = 344
$r3 = $r1+10
$r4 = $r2+10
GOSUB(Per)
$b1=0
WHILE($b1=0)
   $r1 = 467
   WAIT(1)
   GOSUB(Per)
   GETSCREEN
   if_pixel_in(870, 300, 900, 550, 1339325)
      LCLICK($_return1+10, $_return2+2)
      WAIT(1)
      GETSCREEN
      if_pixel_in(1045, 555, 1065, 575, 2286590)
      else
         LCLICK(1070, 540)
         $b2=0
         WHILE($b2=0)
            WAITMC(500)
            GETSCREEN
            IF_PIXEL_IN(815,340, 830, 360, 8901117)
               $b2 = 1
            END_IF
         END_CYC
         KEYPRESS(#ENTER)
         WAIT(1)
         GOSUB (Per)
         goto(D)
      end_if
      WHILE($r1<705)
         IF_PIXEL_IN($r1,$r2, $r3,$r4, 3158058)
            $j = $_return1
            $j2 = $_return2
            WAITMS(500)
            LCLICK(925,560)
            LDOWN(920,564)
            WAITMS(RND(700,900))
            MOVE($j,$j2)
            WAITMS(500)
            LUP($j,$j2)
            LCLICK(800,10)
            KEYPRESS(#ENTER)
            GOSUB (Per)
            $r1 = 706
         else
            INC($r1,53)
            INC($r3,53)
            WAITMS(100)
            IF($r1 = 732)
               INC($r2,53)
               INC($r4,53)
               $r1 = 467
               $r3 = $r1+10
               WAITMS(100)
               IF($r2>556)
                  $r1 = 706
                  $b1=1
               END_IF
            END_IF
         END_IF
      END_CYC
   else
      LCLICK(35,85) 
      HINTPOPUP("нет писем")
      halt
   end_if
   D:
END_CYC
lClick(1399,58)
waitms(300)
lClick(131,550)
waitms(300)
$b = 0
WHILE($b = 0)
   WAIT(1)
   GETSCREEN
   if_pixel_in(170, 550, 171, 551, 16053492)
   else
      $b = 1
   END_IF
END_CYC
lClick(212,116)
goto(A)
SUB(Per)
   $b = 0
   WHILE($b = 0)
      WAIT(1)
      GETSCREEN
      if_pixel_in(820, 387, 821, 388, 9935251)
         $b = 1
      END_IF
   END_CYC
END_SUB
[/spoiler]
Ошибки бывают разные. Чаще всего встречается не выполнение участка кода
[spoiler]
else
            INC($r1,53)
            INC($r3,53)
            WHILE($r1 = 732)
               INC($r2,53)
               INC($r4,53)
               $r1 = 467
               $r3 = $r1+10
               IF($r2>556)
                  $r1 = 706
                  $b1=1
               END_IF
            END_CYC
         END_IF
[/spoiler]
но бывает что скрипт работает норм, а потом с 25 или 46, да неважно с какой строки просто перескакивает на 69 строку, на участок кода
[spoiler]      LCLICK(35,85)  ---- 69 строка
      HINTPOPUP("нет писем")
      halt
   end_if
[/spoiler]
Обьясните плииз в чём может быть заковырка?