Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz
  • 0

Autoit pomoc w pisaniu bota


Barmox

Pytanie

Opublikowano
HotKeySet("{F1}","myExit")
$atakuje = False
func myExit()
   MsgBox(1,"Stop Bota","Bot zatrzymany")      ;Nic istotnego w działaniu bota.
   Exit
EndFunc

WinActivate("KingsRoad | Free Online Browser RPG - Google Chrome")  ;Aktywuje okno z grą
while 1
startmapy()         ;Funkcja w której postać biegnie do npc
startmisji()        ;Bot wybiera questa i go akceptuje po czym po wejściu klika auto attack i przełącza zmienną $attack na true
sleep(4000)
while($atakuje)
   if PixelGetColor(658, 846) = 0xB6D32D Then   ;Jeżeli w miejscu pojawi się "End Level" w tedy $atakuje zmienia się na false i pętla się kończy
	  $atakuje = False
   Else
   EndIf
WEnd
   if $atakuje = False Then
   MsgBox(1,"Stop Bota","Bot zatrzymany")    ;Tutaj do sprawdzenia czy działa (nie działa)
   EndIf
WEnd


func startmapy()
   MouseClick("left",1242, 408)
   Sleep(2500)
   MouseClick("left",157, 591)
   sleep(300)
   MouseClick("left",409, 762)
EndFunc

Func startmisji()
   if PixelGetColor(447, 917) = 0x901B14 Then
   MouseClick("left",1231, 824)
   sleep(200)
   $atakuje = True
EndIf
EndFunc

Posiadam problem z botem do gry Kings Road. W grze trzeba masterować questy by dostawać za nie specjalną walutę ale to nie istotne.

Problem mam z tym, że chciałbym żeby bot podczas robienia się misji nic nie robił. Mam świadomość, że po prostu można zrobić to na sleepach jednak nie interesuje mnie to. Wykminiłem sobie to tak, że po wejściu do misji i kliknięciu auto attack zmienna zmienia się na true i w tedy dzieje się ta pętla i do czasu póki w dokładnym miejscu nie znajdzie się pixel o kolorze przycisku zakończenia misji doputy quest będzie trwał.

 

(if PixelGetColor(658, 846) = 0xB6D32D Then)

Jednak nie działa a po wejściu do misji wyskakuje mi, że  zmienna jest false. 

1 odpowiedź na to pytanie

Rekomendowane odpowiedzi

Opublikowano

Skoro nie działa to znaczy, że PixelGetColor(658, 846) nie jest równe 0xB6D32D. ¯\_(ツ)_/¯

 

Sprawdz sobie jaki ten pixel ma kolor w danym momencie:

ConsoleWrite("0x" & Hex(PixelGetColor(658, 846)) & @CRLF)

 

 

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...