Что нового

не выполняются условия

andreitrane

Новичок
Сообщения
141
Репутация
3
почему у меня не выполняется заданное условие??? что надо исправить?
Код:
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form3 = GUICreate("Чекер корешей", 552, 532, 95, 148)
$Group1 = GUICtrlCreateGroup("Вход", 8, 0, 185, 49)
$IDinput = GUICtrlCreateInput("ID", 16, 16, 81, 21)
$Authinput = GUICtrlCreateInput("Auth", 104, 16, 81, 21)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group2 = GUICtrlCreateGroup("ID друзей", 8, 192, 185, 337)
$checkkorlist = GUICtrlCreateEdit("", 16, 208, 169, 281)
$chfromfilebtn = GUICtrlCreateButton("Из файла", 16, 496, 97, 25)
$chfilebtn = GUICtrlCreateButton("?", 120, 496, 25, 25)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group3 = GUICtrlCreateGroup("Не играют", 200, 0, 169, 265)
$noplaylist = GUICtrlCreateEdit("", 208, 16, 153, 241, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL,$ES_WANTRETURN,$WS_VSCROLL))
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group4 = GUICtrlCreateGroup("Борода", 376, 0, 169, 265)
$chbeard = GUICtrlCreateEdit("", 384, 16, 153, 241, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL,$ES_WANTRETURN,$WS_VSCROLL))
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group5 = GUICtrlCreateGroup("Критерии", 8, 48, 185, 145)
$chaftinfo = GUICtrlCreateInput("Авторитет", 16, 64, 97, 21)
$aftinfbtn = GUICtrlCreateButton("?", 120, 64, 17, 17)
$Label1 = GUICtrlCreateLabel("Борода", 24, 88, 41, 17)
$beardedit = GUICtrlCreateEdit("", 72, 88, 41, 25, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL,$ES_WANTRETURN,$WS_VSCROLL))
GUICtrlSetData(-1, StringFormat("1\r\n2\r\n3\r\n4\r\n5"))
$beardinfbtn = GUICtrlCreateButton("?", 120, 88, 17, 17)
$Label2 = GUICtrlCreateLabel("Боссы", 24, 112, 37, 17)
$bosscombo = GUICtrlCreateCombo("Кирпич", 24, 128, 65, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
GUICtrlSetData(-1, "Сизый|Махно|Лютый|Шайба")
$kolbosskrit = GUICtrlCreateInput("кол-во", 96, 128, 49, 21)
$bossinfbtn = GUICtrlCreateButton("?", 152, 128, 17, 17)
$startcheckbtn = GUICtrlCreateButton("Начать", 16, 152, 57, 25)
$chidnum = GUICtrlCreateInput("", 80, 152, 105, 21, BitOR($GUI_SS_DEFAULT_INPUT,$ES_READONLY))
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group6 = GUICtrlCreateGroup("Авторитет", 200, 264, 169, 265)
$chaft = GUICtrlCreateEdit("", 208, 280, 153, 241, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL,$ES_WANTRETURN,$WS_VSCROLL))
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group7 = GUICtrlCreateGroup("Боссы", 376, 264, 169, 265)
$chboss = GUICtrlCreateEdit("", 384, 280, 153, 241, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL,$ES_WANTRETURN,$WS_VSCROLL))
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		case $aftinfbtn
			MsgBox(0, "Авторитет", "данный критерий позволяет вам вывести из списка корешей тех людей, у которых авторитета меньше, чем вы задали.")
		case $beardinfbtn
			MsgBox(0, "Борода", "выберите из списка состояние бороды: 1 - щетина, 2 - бородка, 3 - борода, 4 - обросший, 5 - чушкарь")
		Case $bossinfbtn
			MsgBox(0, "Боссы", "выберите босса и количество побед над ним. Например, выбрали Сизый и 10, из списка друзей выйдут те, кто убил сизого меньше 10 раз")
		Case $chfilebtn
			MsgBox(0, "ID друзей", "id друзей должы быть записаны через запятую, такой список можно взять в чарльзе в 3-ем запросе при входе в игру. ВНИМАНИЕ!! программа читает id друзей прямиком из файла, а не из списка программы!!!")
		Case $startcheckbtn
			_startcheck()
		Case $chfromfilebtn
			$chtext = FileOpenDialog("Указать файл", @WorkingDir & "", "Любой (*.txt)", 1 + 4 )
        $Readch = FileRead($chtext)
        GUICtrlSetData($checkkorlist,$Readch)
			;_chfromfile()

	EndSwitch
WEnd

;Func _chfromfile()
;	$chtext = FileOpenDialog("Указать файл", @WorkingDir & "", "Любой (*.txt)", 1 + 4 )
;        $Readch = FileRead($chtext)
;        GUICtrlSetData($checkkorlist,$Readch)
;	EndFunc
	Func _startcheck()
		$IDch = GUICtrlRead($IDinput)
		$Authch = GUICtrlRead($Authinput)
		$iaft = GUICtrlRead($chaftinfo)
		$ibeard = GUICtrlRead($beardedit)
		$ikolboss = GUICtrlRead($kolbosskrit)
		$ibossnum = GUICtrlRead($bosscombo)
		if $ibossnum = "Кирпич" Then $ibossnum = 1
		if $ibossnum = "Сизый" then $ibossnum = 2
		if $ibossnum = "Махно" then $ibossnum = 3
		if $ibossnum = "Лютый" then $ibossnum = 4
		if $ibossnum = "Шайба" then $ibossnum = 5
		$korids = $Readch
		$korid = StringSplit($korids, ",")
		$icheck = 1
		for $icheck = 1 to $korid[0]
			GUICtrlSetData($chidnum, $icheck&" - "&$korid[$icheck])
			$URL = "http://109.234.155.196/prison/universal.php?getFriendModels"
            $PostData = "key="& $Authch &"&sig=6cd7bccb33b18e3127306c76947db04c&friend%5Fuid="& $korid[$icheck] &"&user="& $IDch &"&method=getFriendModels"
            $oHTTP = ObjCreate("WinHttp.WinHttpRequest.5.1")
            $oHTTP.Open("POST", $URL)
			$oHTTP.setTimeouts(5000, 5000, 10000, 10000, 50000, 50000)
            $oHTTP.SetRequestHeader("Content-Type","application/x-www-form-urlencoded")
            Execute("$oHTTP.Send($PostData)")
            $oHTTP.WaitForResponse
            $Response = $oHTTP.ResponseText
			$sMsgreit = StringRegExpReplace($Response, '(?s).*?<rating>(\d+)</rating>?.*', '\1')
			$sMsgplay = StringRegExpReplace($Response, '(?s).*?<code>(\d+)</code>?.*', '\1')
			$sMsgbeard = StringRegExpReplace($Response, '(?s).*?<beard>(\d+)</beard>?.*', '\1')
			$sMsgboss = StringRegExpReplace($Response, '(?s).*?<boss id="'& $ibossnum &'"</boss>?.*', '\1')
			if $sMsgreit < GUICtrlRead($chaftinfo) then GUICtrlSetData($chaft, $korid[$icheck]&@CRLF, @CRLF)
			if $sMsgplay = 4 then GUICtrlSetData($noplaylist, $korid[$icheck]&@CRLF,@CRLF)
			if $sMsgbeard = GUICtrlRead($beardedit) then GUICtrlSetData($chbeard, $korid[$icheck]&@CRLF,@CRLF)
			if $sMsgboss < GUICtrlRead($kolbosskrit) then GUICtrlSetData($chboss, $korid[$icheck]&@CRLF,@CRLF)
			Sleep(1000)
		Next
		GUICtrlSetData($chidnum, "готово")
		EndFunc
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,671
Репутация
2,481
Re: [Автоматизация] выполнение условий

Предупреждение За нарушение правил форума (пункт Б.5):
Имя темы должно нести смысловую нагрузку (отражать суть вопроса/проблемы)
Правильно сформулированное название темы привлекает больше внимания, и шансы получить конкретный ответ увеличиваются.


Как правильно называть темы

"[Автоматизация] выполнение условий" - это неприемлемое название темы, переименуйте тему иначе она будет закрыта, а вам возможно будет выдан бан на несколько дней.

С уважением, Администратор форума.
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
andreitrane
какое именно условие?
 
Автор
A

andreitrane

Новичок
Сообщения
141
Репутация
3
Kaster, включи бота, увидишь там в группе критерии "боссы", этот критерий не выполняет
ошибка в том что он полностью все id записывает в поле боссы ($kolbosskrit)
это или я неправильно написал здесь
Код:
$sMsgboss = StringRegExpReplace($Response, '(?s).*?<boss id="'& GUICtrlRead($bosscombo) &'">(\d+)</boss>?.*', '\1')

или здесь
Код:
if $sMsgboss < GUICtrlRead($kolbosskrit) then GUICtrlSetData($chboss, $korid[$icheck]&@CRLF,@CRLF)

скажите кто может что тут неправильно

и еще если в пакете с ответом нет строчек <rating>**</rating> и <boss id="1">**</boss> то всеравно программа записывает айди в столбики "авторитет" и "боссы"
 
Автор
A

andreitrane

Новичок
Сообщения
141
Репутация
3
ошибка была в строчке
Код:
$sMsgboss = StringRegExpReplace($Response, '(?s).*?<boss id="'& GUICtrlRead($bosscombo) &'">(\d+)</boss>?.*', '\1')

надо было написать
Код:
$sMsgboss = StringRegExpReplace($Response, '(?s).*?<boss id="'& $ibossnum &'">(\d+)</boss>?.*', '\1')

но всеравно если в пакете с ответом нет строчек <rating>**</rating> и <boss id="1">**</boss> то программа тоже записывает айди в столбики "авторитет" и "боссы"
как это исправить?
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,671
Репутация
2,481
andreitrane
Название темы по прежнему не соответствует правилам.
 
Автор
A

andreitrane

Новичок
Сообщения
141
Репутация
3
ну я не знаю тогда как, программа у меня некорректно выполняет условия, и тема называется что невыполняются условия...
 
Автор
A

andreitrane

Новичок
Сообщения
141
Репутация
3
так мне ктонибудь может ответить на мой вопрос?
 
Верх