Что нового

[Ошибки] Непонятная ошибка в структуре if.

F4nT0m

Новичок
Сообщения
54
Репутация
2
Написал тут маленького бота для игры.Но есть одна ошибка,которая всё портит,дело в том,что тут:
Код:
if $i=6 Then
Sleep(2000)
MouseClick("left", 1038, 832 , 2)
Sleep(2000)
$pos = PixelSearch ( 183, 108, 770, 521, 0x4E92D7 , 70)
MouseClick("left", $pos[0], $pos[1])
Sleep(2000)
Send("{Space}")	
Else
Sleep(1000)
Send("{Space}")
EndIf
Со второго прохода цикла выполняется условие в if,а не должно,как исправить?
Весь код:
Код:
$left='611';Левая координата области для поиска
$top='100';Верхняя
$right='1296';Праввая
$bottom='502';нижняя
$color='0xB30000';Цвет пиксела
$fault=1;допустимая погрешность
Sleep(3000)
While(1)
$pos = PixelSearch ( $left, $top, $right, $bottom, $color, $fault)
if @error=0 Then
MouseClick("left", $pos[0], $pos[1])
Sleep(3000)
_Attack()
 Else 
	 Sleep(1000) 
	 EndIf
WEnd
	
Func _Attack()
Send("{SPACE}")
Sleep(1000)
MouseClick("left", 1038, 832 , 2)
Sleep(3000)
$pos = PixelSearch ( $left, $top, $right, $bottom, 0x2E80B1 , 35)
MouseClick("left", $pos[0], $pos[1])
Sleep(3000)
Send("{Space}")
$i=0
While PixelGetColor(661, 202)=0x54A627
Sleep(1000)
Send("{SPACE}")
$i=$i+1
if $i=6 Then
Sleep(2000)
MouseClick("left", 1038, 832 , 2)
Sleep(2000)
$pos = PixelSearch ( 183, 108, 770, 521, 0x4E92D7 , 70)
MouseClick("left", $pos[0], $pos[1])
Sleep(2000)
Send("{Space}")	
Else
Sleep(1000)
Send("{Space}")
EndIf
WEnd
Sleep(2000)
MouseClick("left", 822, 562 , 2)
EndFunc
 

beve

Осваивающий
Сообщения
104
Репутация
31
Со второго прохода цикла выполняется условие в if,а не должно,как исправить?
Проверяй лучше, ибо условие не может сдесь никак выполняться со второго прохода, а только когда $i будет равна 6, а это уже "6 проход".
P.S. А вместо $i=0 можно переменную $i объявлять как Local в этой функции.
 
Верх