Что нового

Au3Check перестал считать функции объявленными.

SurikenTSD

Новичок
Сообщения
67
Репутация
1
D:\Files\AutoIt3\TSO\GetGameInfo.au3(47,2) : ERROR: syntax error
In
^
D:\Files\AutoIt3\TSO\GetGameInfo.au3(8,36) : ERROR: GetStarMenuTabs(): undefined function.
If Not $STOP Then GetStarMenuTabs()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
D:\Files\AutoIt3\TSO\GetGameInfo.au3(9,37) : ERROR: GetCancelBuffBox(): undefined function.
If Not $STOP Then GetCancelBuffBox()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
D:\Files\AutoIt3\TSO\GetGameInfo.au3(10,38) : ERROR: GetSMArrowDownPos(): undefined function.
If Not $STOP Then GetSMArrowDownPos()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
D:\Files\AutoIt3\TSO\GetGameInfo.au3(11,38) : ERROR: GetDailyAwardsBox(): undefined function.
If Not $STOP Then GetDailyAwardsBox()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
D:\Files\AutoIt3\TSO\GetGameInfo.au3(12,30) : ERROR: GetGemPos(): undefined function.
If Not $STOP Then GetGemPos()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
D:\Files\AutoIt3\TSO\GetGameInfo.au3(25,9) : ERROR: _Stop(): undefined function.
_Stop()
~~~~~~^
D:\Files\AutoIt3\TSO\GetGameInfo.au3(30,80) : ERROR: ImgSearch(): undefined function.
$crd = ImgSearch( 0, 0, $GameWindowSize[2], $GameWindowSize[3], 0xC9C2BC, 1, 1)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
D:\Files\AutoIt3\TSO\TSO-SRBot.au3 - 8 error(s), 0 warning(s)

Поковырялся немного в скрипте, кое-что подправил, кое-что добавил, проверяю на ошибки - и тут на тебе!

GetGameInfo.au3 вызывается из основного скрипта. ImgSearch - тоже.

Код:
#include "GetGameInfo.au3"
#include "ImgSearch.au3"


Вот непосредственно код из самого проблемного GetGameInfo.au3.

Код:
Local $crd
Local $sm

Func GettingInfo()
	If Not $STOP Then GetWinSize()
	If Not $STOP Then GetStarMenuPos()
	If Not $STOP Then GetStarMenuBox()
	If Not $STOP Then GetStarMenuTabs()
	If Not $STOP Then GetCancelBuffBox()
	If Not $STOP Then GetSMArrowDownPos()
	If Not $STOP Then GetDailyAwardsBox()
	If Not $STOP Then GetGemPos()
	MouseClick("Left", $sm[0], $sm[1], 1, $MouseSpeed)
	Sleep(250)
EndFunc

Func GetWinSize()
	WinActivate($GameWindowName)
	If WinActivate ($GameWindowName) Then
		$GameWindowSize = WinGetPos($GameWindowName)
		IniWrite($GameInfoIniPath, "Window Size", "Width", $GameWindowSize[2])
		IniWrite($GameInfoIniPath, "Window Size", "Height", $GameWindowSize[3])
	Else
		MsgBox(0, "Ошибка!", $gwnf)
		_Stop()
	EndIf
EndFunc

Func GetStarMenuPos()
	$crd = ImgSearch( 0, 0, $GameWindowSize[2], $GameWindowSize[3], 0xC9C2BC, 1, 1)
	If Not @error Then
		$sm = $crd
		IniWrite($GameInfoIniPath, "Coordinates of Objects", "Star Menu X", $crd[0])
		IniWrite($GameInfoIniPath, "Coordinates of Objects", "Star Menu Y", $crd[1])
	Else
		If @error = 1 Then
			MsgBox(0, "Ошибка!", "Звездное Меню не найдено!")
			_Stop()
		EndIf
	EndIf
EndFunc

Func GetStarMenuBox()
	MouseClick("left", $crd[0], $crd[1], 1, $MouseSpeed)
	Sleep(250)
	$crd = ImgSearch( 0, 0, $GameWindowSize[2], $GameWindowSize[3], 0xB86E2A, 1, 6)
	In Not @error Then
		IniWrite($GameInfoIniPath, "Coordinates of Objects", "Star Menu Box Left Corner X", $crd[0] - 365)
		IniWrite($GameInfoIniPath, "Coordinates of Objects", "Star Menu Box Left Corner Y", $crd[1] - 10)
		IniWrite($GameInfoIniPath, "Coordinates of Objects", "Star Menu Box Right Corner X", $crd[0] - 30)
		IniWrite($GameInfoIniPath, "Coordinates of Objects", "Star Menu Box Right Corner Y", $crd[1] + 198)
	Else
		If @error = 1 Then
			MsgBox(0, "Ошибка!", "Звездное Меню (окно) не найдено!")
			_Stop()
		EndIf
	EndIf
EndFunc

Func GetStarMenuTabs()
	IniWrite($GameInfoIniPath, "Coordinates of Objects", "Star Menu Spec Tab X", $crd[0] - 261)
	IniWrite($GameInfoIniPath, "Coordinates of Objects", "Star Menu Spec Tab Y", $crd[1] + 217)
	IniWrite($GameInfoIniPath, "Coordinates of Objects", "Star Menu Buffs Tab X", $crd[0] - 184)
	IniWrite($GameInfoIniPath, "Coordinates of Objects", "Star Menu Buffs Tab Y", $crd[1] + 217)
	IniWrite($GameInfoIniPath, "Coordinates of Objects", "Star Menu Res Tab X", $crd[0] - 109)
	IniWrite($GameInfoIniPath, "Coordinates of Objects", "Star Menu Res Tab Y", $crd[1] + 217)
	IniWrite($GameInfoIniPath, "Coordinates of Objects", "Star Menu Misc Tab X", $crd[0] - 33)
	IniWrite($GameInfoIniPath, "Coordinates of Objects", "Star Menu Misc Tab Y", $crd[1] + 217)
EndFunc

Func GetCancelBuffBox()
	IniWrite($GameInfoIniPath, "Coordinates of Objects", "Cancel Buff Box Left Corner X", $GameWindowSize[2]/2 - 75)
	IniWrite($GameInfoIniPath, "Coordinates of Objects", "Cancel Buff Box Left Corner Y", 0)
	IniWrite($GameInfoIniPath, "Coordinates of Objects", "Cancel Buff Box Right Corner X", $GameWindowSize[2]/2 + 75)
	IniWrite($GameInfoIniPath, "Coordinates of Objects", "Cancel Buff Box Right Corner Y", 200)
EndFunc

Func GetSMArrowDownPos()
	IniWrite($GameInfoIniPath, "Coordinates of Objects", "Star Menu Arrow Down X", $crd[0] - 18)
	IniWrite($GameInfoIniPath, "Coordinates of Objects", "Star Menu Arrow Down Y", $crd[1] + 192)
EndFunc

Func GetDailyAwardsBox()
	IniWrite($GameInfoIniPath, "Coordinates of Objects", "Daily Awards Box Left Corner X", $GameWindowSize[2]/2 - 300)
	IniWrite($GameInfoIniPath, "Coordinates of Objects", "Daily Awards Box Left Corner Y", $GameWindowSize[3]/2 - 150)
	IniWrite($GameInfoIniPath, "Coordinates of Objects", "Daily Awards Box Right Corner X", $GameWindowSize[2]/2 + 300)
	IniWrite($GameInfoIniPath, "Coordinates of Objects", "Daily Awards Box Right Corner Y", $GameWindowSize[3]/2)
EndFunc

Func GetGemPos()
	$crd = ImgSearch( 0, 0, $GameWindowSize[2], $GameWindowSize[3], 0x0032E7, 1, 7)
	If Not @error Then
		IniWrite($GameInfoIniPath, "Coordinates of Objects", "Gem X", $crd[0])
		IniWrite($GameInfoIniPath, "Coordinates of Objects", "Gem Y", $crd[1] + 28)
	Else
		If @error = 1 Then
			MsgBox(0, "Ошибка!", "Иконка покупки самоцветов не найдена!")
			_Stop()
		EndIf
	EndIf
EndFunc


Не могу понять, в чем проблема? С чего вдруг вышеперечисленные функции не являются объявленными? Почему ImgSearch не объявленной считается, когда как в предыдущей версии моего скрипта все работало, как в шоколаде!
 

joiner

Модератор
Локальный модератор
Сообщения
3,570
Репутация
632
Re: SciTE перестал считать функции объявленными.

откуда ты взял функцию
Код:
_stop()
?
так же и с остальными ошибками. не объявлены переменные. возможно в #include были еще включенные библиотеки, а ты удалил. так что причина ошибки твои действия

SurikenTSD [?]
Поковырялся немного в скрипте, кое-что подправил, кое-что добавил
 

asdf8

Скриптер
Сообщения
564
Репутация
152
Re: SciTE перестал считать функции объявленными.

SurikenTSD [?]
SciTE перестал считать функции объявленными

Во-первых - не SciTE, а Au3Check.exe.
Во-вторых - 100% проблема не в SciTE и не Au3Check.exe, а в вас.
В-третьих - подсказка : Au3Check.exe не совсем корректно указывает на очевидные и грубые ошибки.
 
Автор
S

SurikenTSD

Новичок
Сообщения
67
Репутация
1
Re: SciTE перестал считать функции объявленными.

Функция _Stop() объявлена в основном скрипте и до этого, ладно, пусть не SciTE, Au3Chek не жаловался на ее присутствие в GetGameInfo.au3

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


Добавлено:
Сообщение автоматически объединено:

Омг, капец! стоко шухера поднято совершенно бессмысленного из-за очепятки, в одной из функций вместо условия If not случайно написал In not... >_< :shok:
 
Верх