Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 00:53

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



AutoIT Farberkennung Hilfe!

Discussion on AutoIT Farberkennung Hilfe! within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Dec 2012
Posts: 91
Received Thanks: 0
Post AutoIT Farberkennung Hilfe!

Hallo Liebe Leute
Ich suche jemanden der mir mal eben behilflich sein kann bei einem code.
Irgendwie klappt das mit der Farberkennung nicht so richtig bzw überhaupt gar nicht. Er soll die farbe bei den koordinaten "738, 681, 874, 695" suchen und wenn er sie gefunden hat soll er mit der maus an einer bestimmten position gehen und die linke maus taste 1x drücken. Bzw würde es mir auch reichen wenn er einfach eine taste drück wie zb 6. Falls er die bestimmte farbe nicht findet soll er das script normal weiter laufen lassen.

Falls mich jemand verstanden hat, bitte ich um hilfe
Und gäbe es die möglichkeit das er nach 2 farben sucht und die taste drückt?
also farbe 1 gefunden push 6 falls nich gefunden weiter laufen lassen farbe 2 gefunden push 6 usw usw

Ich habe schon einge zeit selbst geguckt auch hier im forum aber es funzt und funzt einfach nich mit der maus und der farbe.

Mfg Airfight


Quote:
HotKeySet("{ü}", "Start")
HotKeySet("{ä}", "_Exit")

While 1
Sleep(250)
WEnd

Func start()
While 1
Send("{1}")
Sleep(4000)
$Variable = PixelSearch(738, 681, 874, 695, 0xE3E5F2)
If IsArray($Variable) = True Then
MouseMove($Variable [782], $Variable [836], 1
MouseClick("left")
EndIf
Send("{2}")
Sleep(1000)
Send("{4}")
Sleep(1000)

WEnd
EndFunc

Func _Exit()
Exit
EndFunc
airfight1 is offline  
Old 01/24/2013, 07:40   #2
 
elite*gold: 224
Join Date: Dec 2010
Posts: 2,766
Received Thanks: 931
Man muss $Variable[0] $Variable[1] bei Pixelsearch nehmen , da dort die Koordinaten eingetragen werden , wenn die Farbe gefunden wurde
Havelock_Vetinari is offline  
Old 01/24/2013, 11:53   #3
 
elite*gold: 0
Join Date: Dec 2012
Posts: 91
Received Thanks: 0
Quote:
Originally Posted by Alex_II View Post
Man muss $Variable[0] $Variable[1] bei Pixelsearch nehmen , da dort die Koordinaten eingetragen werden , wenn die Farbe gefunden wurde
Könntest du mir das ganze in einem code schicken pls?
irgendwie versteh ich´s net ..
airfight1 is offline  
Old 01/24/2013, 12:21   #4


 
Lawliet's Avatar
 
elite*gold: 2
Join Date: Jul 2009
Posts: 14,456
Received Thanks: 4,685
Der ganze Code ist falsch.
PixelSearch ist dazu da um nach einer Farbe zu suchen, nicht um die Farbe an einer Stelle herauszufinden.
Dazu musst du PixelGetColor nutzen.
Bei PixelSearch wir ein Array zurückgegeben, d.h. ein 1D, 2D, 3D (++) Feld, welches du dir so vorstellen musst:
1D:
wert1|wert2|wert3|wert4...
2D:
x|y|z|w|
-----------
c|v|n|u|
3D:
Das ganze eben noch im Raum.

Code:
MouseMove($Variable [782], $Variable [836])
In diesem fall hast du versucht auf Element 782 und 836 zuzugreifen, obwohl Pixelsearch nur ein Array mit 2 Elementen liefert.
Da du aber sowieso PixelGetColor nutzen musst, wird dein Code nun so aussehen:
Pseudocode:
Code:
if(PixelGetColor(x,y) == rgbcolor) Then MouseClick(x,y)
Lawliet is offline  
Old 01/24/2013, 12:45   #5
 
elite*gold: 0
Join Date: Dec 2012
Posts: 91
Received Thanks: 0
Quote:
Originally Posted by Lawliet! View Post
Der ganze Code ist falsch.
PixelSearch ist dazu da um nach einer Farbe zu suchen, nicht um die Farbe an einer Stelle herauszufinden.
Dazu musst du PixelGetColor nutzen.
Bei PixelSearch wir ein Array zurückgegeben, d.h. ein 1D, 2D, 3D (++) Feld, welches du dir so vorstellen musst:
1D:
wert1|wert2|wert3|wert4...
2D:
x|y|z|w|
-----------
c|v|n|u|
3D:
Das ganze eben noch im Raum.

Code:
MouseMove($Variable [782], $Variable [836])
In diesem fall hast du versucht auf Element 782 und 836 zuzugreifen, obwohl Pixelsearch nur ein Array mit 2 Elementen liefert.
Da du aber sowieso PixelGetColor nutzen musst, wird dein Code nun so aussehen:
Pseudocode:
Code:
if(PixelGetColor(x,y) == rgbcolor) Then MouseClick(x,y)
Aber sucht er nicht dann nur auf der x,y koordinate nach der farbe? er soll mir ja ein kleines feld durchsuchen. Und könntest du mir den code bitte direkt einbaun bin grade überfragt wo ich ihn einbaun muss hab gestern erst mit AutoIT angefangen *schmunzel*

Ok hab das ganze mal versucht.. is wahrscheinlich total falsch, weils eh nich funktioniert
Das ganze sieht jetz so aus,
Quote:
HotKeySet("{ü}", "Start")
HotKeySet("{ä}", "_Exit")

While 1
Sleep(250)
WEnd

Func start()
While 1
Send("{1}")
Sleep(4000)
if(PixelGetColor(736, 705) == 230,233,242 ) Then MouseClick(782,836)
MouseMove($Variable [782], $Variable [836])
Send("{1}")
Sleep(4000)

WEnd
EndFunc

Func _Exit()
Exit
EndFunc
Also folgender fehler tritt auf,

"Line 12 (File "C:\Userblablablabla"):

if(PixelGetColor(736,705)== 230,233,242) Then MouseClick(782,836)
if^ ERROR

Error: Missingright bracket ´)´in expression"


Ich bin ja nicht aufn kopf gefallen und suche immer zuerst im internet nach lösungen bevor ich irgendwo um hilfe frage. Aber irgendwie check ich das ganze grade nich

Bitte helft mir und macht es mir so einfach wie möglich, damit selbst ich es wieder verstehe
airfight1 is offline  
Old 01/28/2013, 13:23   #6
 
elite*gold: 0
Join Date: Dec 2012
Posts: 91
Received Thanks: 0
Mag mir niemand den code direkt in meinen einbaun :/
airfight1 is offline  
Old 01/28/2013, 13:54   #7
 
omer36's Avatar
 
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,254
du willst in dem bereich nach deiner farbe suchen und wenn die farbe da ist, willst du einen mausklick auf die posi 782,836 ausführen, richtig?

Quote:
Und gäbe es die möglichkeit das er nach 2 farben sucht und die taste drückt?
also farbe 1 gefunden push 6 falls nich gefunden weiter laufen lassen farbe 2 gefunden push 6 usw usw
wenn das oben soweit stimmt;
omer36 is offline  
Old 01/28/2013, 14:15   #8
 
elite*gold: 0
Join Date: Dec 2012
Posts: 91
Received Thanks: 0
Quote:
Originally Posted by omer36 View Post
du willst in dem bereich nach deiner farbe suchen und wenn die farbe da ist, willst du einen mausklick auf die posi 782,836 ausführen, richtig?


wenn das oben soweit stimmt;
werde es gleich mal testen schonmal vielen dank im vorraus
die sachen die du hinter ";" geschrieben hast müssen gelöscht werden oder kann man die als text einfach stehen lassen?

Quote:
Originally Posted by omer36 View Post
du willst in dem bereich nach deiner farbe suchen und wenn die farbe da ist, willst du einen mausklick auf die posi 782,836 ausführen, richtig?


wenn das oben soweit stimmt;
Ok ich weiß nicht warum aber es geht und geht einfach nicht... hat das vielleicht mit der version meines programms zu tun? bzw muss ich vielleicht ein anderen farbecode nehmen RGB oder hex oder so..
ich hab nich das gefühl das er die farbe in dem fenster sucht und die maus bewegt er dann auch nicht auf die vorgeschriebenen koordienaten.
Das fenster was er durchsuchen soll sieht so aus Es soll die farbe in dem fenster erkennen wo Magischer Äther steht, habe die obere ecke über den text "Magischer Äther" und die untere ecke vom text genommen. Die farbe sollte man ja gut erkennen da der hintergrund von dem ausgewählten bereich ja gut zu unterscheiden ist. Aber es geht einfach nicht
airfight1 is offline  
Reply

Tags
autoit, farbe, taste


Similar Threads Similar Threads
!!need help!! AutoIt KlickBot mit Farberkennung erstellen
01/27/2013 - AutoIt - 9 Replies
Ich möchte für eine Game eine Bot erstellen die Linke maustaste Klickt sobat das Fadenkreuz Rot wird. Wie erstelle ich so ein BOT? Ich hab mir Pixelsearch versucht aber leider bin ich kein besonderst guter Coder, ganz im gegenteil, ich kenne mich im Coden garnet aus.
Einfache Farberkennung=taste senden
09/13/2012 - AutoIt - 7 Replies
Moin Leute, bin gerade dabei einen Bot für ein Game zuerstellen jedoch bekomme ich eine kleine Sache einfach nicht gebacken keine Ahnung warum nicht. Bei einer bestimmten Stalle soll er erkennen das sich die farbe auf 0xBeispiel geändert hat und die Taste 1 senden. Währe einer so Nett mir den Quellcode für das unten hinzuschreiben? PS: Ja ich weiss das es eig einfach ist bekomme es aber nicht hin also spart euch die unsinnigen Kommentare.
[vb 2008] Farberkennung pls
01/31/2010 - .NET Languages - 2 Replies
hi EPVER´s ich brauchte hilfe mit vb2008 und zwar will ich ein paar bots machen aber weiß nicht wie der farberkennung ist bzw der code davon ist deshalb wollte ich frragen ob einer ma ein tutorial oder einen sorsecode schicken kann mit einer kleinen erklärung wo man was einfügt wenn der punkt gefunden ist wie man dahin naviegiert etc thx schonmal :handsdown:



All times are GMT +2. The time now is 00:53.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.