Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 03:13

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

Advertisement



Pixelsearch mit 2 Farben?

Discussion on Pixelsearch mit 2 Farben? within the AutoIt forum part of the Coders Den category.

Reply
 
Old 03/25/2012, 20:54   #31
 
elite*gold: 0
Join Date: May 2009
Posts: 191
Received Thanks: 19
Genau. Und da das Fenster genauso groß ist, wie der Desktop, also genau der gleichen Auflösung entspricht, müsste letzteres ja möglich sein. Doch als ich die Auflösung veränderte und das Script so aussah:

Code:
pixelgetcolor(522/1600*@DesktopWidth,808/900*@DesktopHeight)
klappte es nicht. Ich kann mir das nicht erklären, da es doch normalerweise funktionieren muss?

Edit:
Code:
PixelGetColor(522,808, WinGetHandle("AION Client"))
Damit funktioniert es übrigens ebenfalls nicht.
Skatefreaky is offline  
Old 03/25/2012, 21:58   #32
 
elite*gold: 0
Join Date: Oct 2010
Posts: 167
Received Thanks: 24
Hm das kann ich mir allerdings auch nicht erklären, warum beides nicht klappt. Vielleicht weil @desktopheight bzw @desktopwidth eine Komma Zahl bei der anderen Auflösung herauskommt? Aber nur ne Vermutung
Masterscripter is offline  
Old 03/26/2012, 10:09   #33
 
lolkop's Avatar
 
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
ich gehe davon aus, das die skillbar als festes konstruk designed wurde. dh sie hat eine feste länge und höhe.

dementsprechend reicht es in die mitte des bildschirms zu gehen, und soviel abzuziehen, bis du am anfang der hp bar angekommen bist. für die höhe reicht es von unten etwas nach oben zu gehen...

Code:
$x = @desktopWidth/2 -...
$y = @desktopHeight - ...
aufgrund der verlustbehafteten komprimierung die du beim screenshot verwendet hast, kann dir aufgrund von diesem, leider niemand hier helfen.
lolkop is offline  
Old 03/26/2012, 14:40   #34
 
elite*gold: 0
Join Date: May 2009
Posts: 191
Received Thanks: 19
Also hier in dem Screen kannst du sehen, wie groß bzw. Lang der HP Balken ist. Ich versteh nur nicht, warum du das so verkomplizieren willst. Ich arbeite mich von vorne nach hinten, wie etwa so:


Code:
pixelgetcolor(522/1600*@DesktopWidth,808/900*@DesktopHeight)

Und ich hab absolut kein Verständnis dafür, warum es mit einer anderen Auflösung nicht funktioniert, denn es ist ja quasi nur ein Dreisatz bzw. ne logische Gleichung. Und wenn man es ausrechnet, so wie es in meinem Script ja passiert, kommt auch die genaue Position raus, die für die jeweilige Auflösung angemessen ist, nur in einer Komma Zahl. Kann es daran liegen, dass es nicht klappt?


Hier das Spiel:
Skatefreaky is offline  
Old 03/26/2012, 18:43   #35
 
elite*gold: 0
Join Date: Feb 2010
Posts: 92
Received Thanks: 11
Ungetestet:

Code:
$size = WinGetPos("AION Client")
$Xoffset=10

for $i = 0 to 100 Step 10 ;100 durch Balkenläne ersetzen und den Step durch die gewünschte %Abstufung
	$farbe = pixelgetcolor($size[0]+$i+$Xoffset,$size[1]+123)
	if $farbe <> wasauchimmer then MsgBox(16,"HP", "Deine HP beträgt weniger als " & $i & " %")
Next
BotofWar is offline  
Old 03/26/2012, 19:44   #36
 
lolkop's Avatar
 
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
Quote:
Originally Posted by Skatefreaky View Post
Und ich hab absolut kein Verständnis dafür, warum es mit einer anderen Auflösung nicht funktioniert, denn es ist ja quasi nur ein Dreisatz bzw. ne logische Gleichung.
eben nicht.

du hast über die grafik einen fixen wert in der rechnung. diesen musst du selbstverständlich aus der verhältnisgleichung extrahieren, da dieser ja bei anderen auflösungen nicht variieren kann.

angenommen du hast einen 2cm strich, mittig liegend auf einer 4cm fläche.
Code:
|_--_|
nun verdoppelst du die auflösung, hast also eine 8cm fläche, wobei der strich trotzdem 2cm lang bleibt.
Code:
|___--___|
nach deiner verhältnisgleichung wäre der strich nun auch doppelt so lang (nun 4cm)
Code:
|__----__|
das gesamtobjekt wäre zwar korrekt berechnet, der anfang des striches wäre nach deiner verhältnisgleichung aber leider unlogisch platziert.

deswegen musst du in diesem falle umdenken, zunächst die mitte des objektes bestimmen, und dann von dort die halbe länge des fixen objektes nach links gehen, um den anfangspunkt des striches zu berechnen.

selbiges prinzip gilt auch für die bestimmung des anfangspunktes deiner hp leiste.
lolkop is offline  
Old 03/28/2012, 11:15   #37
 
elite*gold: 0
Join Date: May 2009
Posts: 191
Received Thanks: 19
Okay ja das leuchtet ein, stimmt. Und wie würdest du vorgehen? Was würdest du vorschlagen?

Edit: Eigentlich ne blöde Idee das mit Pixelsearch zu versuchen. Trotzdem danke für die Hilfe, ich werd n neuen Thread auf machen, indem ich ein paar Memory read Fragen habe.
Skatefreaky is offline  
Old 03/31/2012, 17:11   #38
 
elite*gold: 0
Join Date: May 2009
Posts: 191
Received Thanks: 19
Ach und nochmal zur Anfangsfrage zurück:

"pixelserch rot,
if @error then
Pixelsearch grün
if @error then
tot"

funktioniert leider doch nicht. Gibts noch ne andere Möglichkeit?
Skatefreaky is offline  
Old 04/10/2012, 03:12   #39
 
Achat's Avatar
 
elite*gold: 528
Join Date: Jan 2012
Posts: 2,127
Received Thanks: 2,403
Quote:
Originally Posted by Skatefreaky View Post
Hey Com,

kann mir vielleicht einer sagen, ob es möglich ist, mit Pixelsearch nach 2 Farben zu suchen? Also z.B bei einem HP Balken. Wenn der leer ist, dann soll irgendwas passieren. Aber die HP sind nicht nur rot, wie es normalerweise ist. Bei manchen Attacken färbt sich der HP Balken auch schonmal grün und dann erkennt das Programm nicht, dass noch Leben im HP Balken ist, .
Habe jetzt nicht den ganzen Thread gelesen, würde das aber von der Logik her so lösen:
Code:
while 1
If Pixelgetcolor($x,$y) = FarbwertRot [COLOR="Blue"]OR[/COLOR] FarbwertGrün then
leben()
else
tot()
Endif
Wend
Achat is offline  
Reply


Similar Threads Similar Threads
c# pixelsearch HELP
06/30/2012 - .NET Languages - 5 Replies
Hi alle, habe schon gegoogelt, finde aber nichts passendes. ich habe broblem mit c# und zwar will ich einen c# pixelsearch fram bot machen der im bestimmte position/Bitmap im Form1/Fenster mit einer virtuellen maus auf bestimmte farben wie z.b. auf gelb links click macht und dan SendKeys.SendWait("1"); // Taste 1 sendet. http://s14.directupload.net/images/111108/temp/to kufuep.png
Neue Iteminfo.x4 + Default Item u. + Farben + Farben für Kralle
01/09/2010 - S4 League - 79 Replies
aus rechtlichen gründen entfernt!!
pixelsearch
12/27/2009 - AutoIt - 11 Replies
hi hab mal ne frage ich hab jetzt mit pixelsearch die coordinaten ich will aber jetzt das der 50 pixel darunter von den coordinaten hinklickt wie geht das?
pixelsearch
02/07/2009 - General Coding - 1 Replies
gibt es in ner anderen programmiersprache sowas ähnliches wie pixelsearch, nur dass es auch in minimierten fenstern geht? und auch dass man autoit funktionen wie mausbewegungen und keyboad controls im minimierten fenster ausführen kann.
PixelSearch
07/27/2008 - Nostale - 5 Replies
hi leute kann mir pls jemand erklären wie man pixelsearch benuzt??



All times are GMT +1. The time now is 03:15.


Powered by vBulletin®
Copyright ©2000 - 2025, 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 ©2025 elitepvpers All Rights Reserved.