Global $hwnd
Global $quark[46]
Global $waitime = 0
Global $VarCheckPix
Global $popitki = 0
Global $neudachi = 0
Global $vremaraboti = 0
Global $Active_Charge_quark = 2608990427
Global $Kubit_Decrase = 0
Global $Kubit_Max = 0
Global $quark_need = 0
Global $quark_have = 0
Global $VIP_have = 0
Global $hash_Ugol_knopli_Lepton = 775604326
Global $hash_knopka_sobrat = 186153415
Global $hash_Ugol_knopli_Sobrat = 350136515
Global $quark_see
Global $min_sbor_qvark1 = 12
Global $min_sbor_qvark2 = 25
Global $min_sbor_qvark3 = 37
Global $etap_chek_kvark = 0
Global $bag_skripta_hash = 3900199012
Global $vrema_zapuska
Func _start_script($size_ecran)
For $mm=1 to 46 Step 1
$quark[$mm-1] = IniRead($size_ecran,"quark",$mm-1,"")
Next
$vrema_zapuska = @HOUR & "." & @MIN & "." & @SEC & " - " & @MDAY & "." & @MON & "." & @YEAR
$waitime = 0
IF WinExists("BlueStacks App Player")=1 THEN
$hwnd = WinGetHandle("BlueStacks App Player")
WinMove($hwnd,"",0,0)
Opt("PixelCoordMode", 2)
Else
_Exit()
EndIf
_Resource_quark_need()
_Resource_kubit_max()
_Switch_Vip()
_inicializacia_hasha()
While 1
If ($quark_need > $quark_have) And ($Kubit_Decrase < $Kubit_Max) Then
_Start_script_farm_quark()
Else
_Write_file("Предел достигнут")
ExitLoop
EndIf
WEnd
EndFunc
Func _Start_script_farm_quark()
ControlClick ($hwnd, "", "", "left", 1, 244, 58)
Sleep(200)
$vremaraboti += 200
$waitime = 0
While _Proverka_hasha(212,54,280,67,$Active_Charge_quark,"активация вкладки тел. энергия") = 0
_pause()
WEnd
$waitime = 0
While _Proverka_hasha(308,484,344,512,$hash_Ugol_knopli_Lepton,"кнопка лептон") = 0
_pause()
WEnd
$waitime = 0
ControlClick ($hwnd, "", "", "left", 1, 403, 521)
$Kubit_Decrase = $Kubit_Decrase + 20000 - (2000 * $VIP_have)
Sleep(1100)
$vremaraboti += 1100
WinActivate($hwnd)
Sleep(100)
$vremaraboti += 100
$VarCheckPix = PixelChecksum(485,512,529,535,1,$hwnd,0)
_chek_kvark1()
$sobrat_kvark = 0
if $quark_see = 0 Then
_sbor_kvarka()
$sobrat_kvark = 1
EndIf
While $sobrat_kvark = 0
If $etap_chek_kvark = 0 Then
If $min_sbor_qvark1 > $quark_see Then
_zaradka_vorot()
$sobrat_kvark = 0
Else
_sbor_kvarka()
$sobrat_kvark = 1
EndIf
EndIf
If $etap_chek_kvark = 1 Then
If $min_sbor_qvark2 > $quark_see Then
_zaradka_vorot()
$sobrat_kvark = 0
Else
_sbor_kvarka()
$sobrat_kvark = 1
EndIf
EndIf
If $etap_chek_kvark = 2 Then
If $min_sbor_qvark3 > $quark_see Then
_zaradka_vorot()
$sobrat_kvark = 0
Else
_sbor_kvarka()
$sobrat_kvark = 1
EndIf
EndIf
if $etap_chek_kvark = -1 Then
_sbor_kvarka()
EndIf
WEnd
EndFunc
Func _Write_file($nada_zapisat)
$hFile = FileOpen(@ScriptDir & "\logs\" & $vrema_zapuska & ".txt", 1)
If $hFile = -1 Then
MsgBox(4096, "Ошибка", "Невозможно открыть файл.")
Exit
EndIf
FileWriteLine($hFile, $nada_zapisat)
FileClose($hFile)
EndFunc
Func _Exit()
_Write_file("Завершение работы скрипта: " & @HOUR & ":" & @MIN & ":" & @SEC & " " & @MDAY & ":" & @MON & ":" & @YEAR)
_Write_file("Потрачено кубита: " & $Kubit_Decrase & " из: " & $Kubit_Max)
_Write_file("Нужно было кварка: " & $quark_need & " получили: " & $quark_have)
_Write_file("Всего попыток: " & $popitki & " из них успешных: " & $popitki - $neudachi)
_Write_file($vremaraboti)
Exit
EndFunc
Func _Switch_Vip()
if MsgBox(4+32+256,"Уровень VIP","Есть VIP7?")=6 Then
$VIP_have = 2
ElseIf MsgBox(4+32+256,"Уровень VIP","Есть VIP3?")=6 Then
$VIP_have = 1
Else
$VIP_have = 0
_write_file("Уровень випа установлен:" & $Vip_have)
EndIf
EndFunc
Func _Resource_quark_need()
Local $sPattern = '[^\d]'
$quark_need = InputBox("Кварк","Сколько надо кварка?(пример: 2000), 0 или Отмена - сколько получится",0," M")
if StringRegExp($quark_need, $sPattern) = 1 Then
_Resource_quark_need()
Return
ElseIf $quark_need = 0 Then
$quark_need = 999999999
EndIf
if $quark_need = 999999999 Then
_write_file("Нужно собрать кварка:" & "сколько получится")
Else
_write_file("Нужно собрать кварка:" & $quark_need)
EndIf
EndFunc
Func _Resource_kubit_max()
Local $sPattern = '[^\d]'
$Kubit_Max = InputBox("Кубиты","Сколько тратим кубитов?(пример: 5000000), 0 или Отмена - на всё что есть!",0," M")
if StringRegExp($Kubit_Max, $sPattern) = 1 Then
_Resource_kubit_max()
Return
ElseIf $Kubit_Max = 0 Then
$Kubit_Max = 999999999
EndIf
if $quark_need = 999999999 Then
_write_file("Нужно собрать кубита:" & "сколько получится")
Else
_write_file("Нужно собрать кубита:" & $Kubit_Max)
EndIf
EndFunc
Func _Pause()
Sleep(2000)
$waitime += 2
TrayTip("Произошла ошибка!","Время ожидания: "& $waitime & " секунд(ы)",1000,3)
if $waitime > 60 Then
MsgBox("","Ошибка скрипта","Скрипт остановлен!")
_Exit()
EndIf
EndFunc
Func _chek_kvark1()
Local $ii=0
$quark_see = 99
While $ii <> 46
if $quark[$ii] = $VarCheckPix Then
$quark_see = $ii
EndIf
$ii += 1
WEnd
_Write_file("1 этап проверки кварка. Обнаружено кварка:" & $quark_see)
if $ii = 46 and $quark_see = 99 Then
$waitime = 0
_Write_file("1 этап проверки кварка. Обнаружено кварка:" & $quark_see)
While $quark_see = 99
_chek_kvark2()
WEnd
EndIf
_Proverka_kol_voronok()
EndFunc
Func _chek_kvark2()
Local $ii=0
_Pause()
WinActivate($hwnd)
Sleep(100)
$vremaraboti += 100
$VarCheckPix = PixelChecksum(485,512,529,535,1,$hwnd,0)
While $ii <> 46
if $quark[$ii] = $VarCheckPix Then
$quark_see = $ii
EndIf
$ii += 1
WEnd
If $quark_see = 99 Then
If $VarCheckPix = $bag_skripta_hash Then
ControlClick ($hwnd, "", "", "left", 1, 403, 521)
$Kubit_Decrase = $Kubit_Decrase + 20000 - (2000 * $VIP_have)
Sleep(1100)
$vremaraboti += 1100
_chek_kvark1()
else
_Write_file("2 этап проверки кварка не прошёл")
MsgBox("","Ошибка","Не найден хэш кварка - " & $VarCheckPix)
_exit()
EndIf
EndIf
_Proverka_kol_voronok()
EndFunc
Func _Proverka_hasha($xx1,$yy1,$xx2,$yy2,$hashneed,$zapis_v_file)
Local $hashpix
WinActivate($hwnd)
Sleep(100)
$vremaraboti += 100
$hashpix = PixelChecksum($xx1,$yy1,$xx2,$yy2,1,$hwnd,0)
If $hashpix = $hashneed Then
Return 1
_Write_file($zapis_v_file & " координаты: X1=" & $xx1 & " Y1=" & $yy1 & " X2=" & $xx2 & " Y2=" & $yy2 & " - Успешно!")
Else
Return 0
_Write_file($zapis_v_file & ". Снятый хэш:" & $hashpix & ". Нужный хэш:" & $hashneed & " Ошибка!!!")
EndIf
EndFunc
Func _inicializacia_hasha()
EndFunc
Func _sbor_kvarka()
$waitime = 0
While _Proverka_hasha(564,524,595,548,$hash_Ugol_knopli_Sobrat,"кнопка собрать") = 0
_pause()
WEnd
ControlClick ($hwnd, "", "", "left", 1, 477, 511)
Sleep(4200)
$vremaraboti += 4200
_Write_file("Кварк собран! Кол-во воронок: " & $etap_chek_kvark +1 & " кварка: " & $quark_see)
If $quark_see > 0 Then
$popitki += 1
$quark_have += $quark_see
Else
$popitki += 1
$neudachi += 1
EndIf
EndFunc
Func _zaradka_vorot()
$waitime = 0
While _Proverka_hasha(564,524,595,548,$hash_Ugol_knopli_Sobrat,"кнопка собрать для зарядки") = 0
_pause()
WEnd
ControlClick ($hwnd, "", "", "left", 1, 834, 334)
$Kubit_Decrase = $Kubit_Decrase + 2000 - (200 * $VIP_have)
Sleep(900)
$vremaraboti += 900
WinActivate($hwnd)
Sleep(100)
$vremaraboti += 100
$VarCheckPix = PixelChecksum(485,512,529,535,1,$hwnd,0)
_chek_kvark1()
EndFunc
Func _Proverka_kol_voronok()
If $quark_see = 1 Then
$etap_chek_kvark = 0
EndIf
If ($quark_see > 30 or $quark_see = 29) And $etap_chek_kvark < 2 Then
$etap_chek_kvark = 2
EndIf
If ($quark_see = 2 or $quark_see = 5 or $quark_see = 8 or $quark_see = 11 or $quark_see = 14 or $quark_see > 15) And $etap_chek_kvark < 1 Then
$etap_chek_kvark = 1
EndIf
If $quark_see < 16 And $etap_chek_kvark = -1 Then
$etap_chek_kvark = 0
EndIf
If $quark_see = 0 Then
$etap_chek_kvark = -1
EndIf
_Write_file("чек:" & $etap_chek_kvark)
EndFunc