Mauszeiger auslesen

08/03/2011 10:27 buFFy!#31
herzlichen glückwunsch. ihr habt beide jeweils 7 offtopic posts vollbracht !
08/03/2011 12:17 yihaaa#32
Du bist doch kein deut besser :D
08/03/2011 12:49 lolkop#33
leider sind die aussagen hier fast alle inkorrekt.

erstmal funktioniert das ganze nur, weil der autoit interpreter relativ intelligent ist, und je nach aktueller aufgabe selbst entscheidet, ob jetzt ein boolean wert oder eben int/long/float/double benötigt werden.

durch den interpreter festgelegt ist nur, das 0 auch als False interpretiert werden kann.
somit ergibt sich aus reiner formaler logik das nicht 0 = True sein muss.

somit ergibt sich das:
Code:
2 And 3
ebenfalls True zurück geben wird, da And nur in bezug auf boolean werte angewendet werden kann.
da 2!=0 gilt folgt daraus 2->True. selbiges verfahren wird auf 3 angewendet... 3!=0 --> 3->True...

daraus folgt:
Code:
2 And 3 -> True And True -> True
bemerkt der interpreter, das man eine rechenoperation über einem boolean wert nutzen möchte, so gilt allerdings tatsächlich False->0, und True->1

überprüfen kann man das ganze zb so:
Code:
MsgBox(0, 'Rechnung', '3 * (2 And 3) = '&3 * (2 And 3))
hier wird zunächst der ausdruck in klammern ausgewertet. 2 And 3 -> True

nun soll eine rechenoperation ausgeführt werden: "3 * True". da über boolean werte in diesem sinne rechendefinitionen nicht definiert sind, wird durch substitution True in 1 umgewandelt.

dh. 3 * True -> 3 * 1 -> 3

somit erhalten wir hier als ergebnis 3 =)

davon abgesehen ist es NICHT möglich diese im interpreter gespeicherten definitionen von True und False abzuändern, wie irgendjemand vorher meinte.
08/03/2011 18:06 ouka#34
Nichts desto trotz führt mich das jetzt zur frage zurück wie ich im spiel über autoit diesen wert ermitteln kann ^^ wir haben bis jetzt eigendlich nur 1 festgestellt

und zwar das diese "normale" mauszeiger von spiel, NICHT die systemmaus einstellungen beeinflusst, sondern nur im spiel verändert wird.

UND

Das daraus resultiert das natürlich egal ob "schwert" oder "normal" die systemmaus immernoch gleich bleibt ^^

Nächste frage:

könnte man therotisch eine pixelabfrage machen, zb. MouseGetPos()

und deine gewisse x und gewisse y coordinate verschieben den pixel dermaus auslesen und diese feststellen würde das funktionieren? ^^ also markant wäre dann im schwertkauf ein rotes etwas.. das könnte man dann doch auslesen und man spart sich den ganzen memory quatsch :) right? ^^

And by the way nice off topics hier wird über 2 seiten diskutiert was 1 und was 0 sein kann klasse :) hört bloß auf, stellt euch mal vor die würden ne negativ abfrage machen mit NOT!! Oh gott das wäre ja horror ^^

Ach und wie kann man nen screenshot von dem screen machen MIT maus, die wird immer ausgelassen wenn ich einen mache ^^ - egal ob ingame screen or mit druck und -> paint
08/03/2011 18:28 buFFy!#35
Quote:
Originally Posted by buFFy! View Post
vermutlich ist das ganze ein boolen. such mal mit cheatengine nach 1 wenn schwert, und nach 0 wenn kein schwert.
!

wie gesagt, wenn dus mit pixel machst wirds wohl nur bei dir funktionieren.
08/03/2011 18:40 BlackHybrid#36
Wieso das denn wenn man die Koordinaten relativ zum Mausezeiger benutzt
08/03/2011 19:00 buFFy!#37
ups, stimmt!

dann muss man aber zummindest pixelsearch benutzen und eine bestimmte größe des rechtecks abfragen, denn verschiedene auflösungen ändern auch die größe des mauszeigers und somit die relativen offsets!
08/03/2011 19:30 ouka#38
Quote:
Originally Posted by buFFy! View Post
ups, stimmt!

dann muss man aber zummindest pixelsearch benutzen und eine bestimmte größe des rechtecks abfragen, denn verschiedene auflösungen ändern auch die größe des mauszeigers und somit die relativen offsets!
genau so wars gedacht *kotz arbeit! ^^
08/03/2011 19:44 buFFy!#39
btw muss die farbe trotzdem nicht überall gleich sein. anti-aliasing etc. ^^ und wenn du pech hast fliegt irgendwann mal der gleiche pixel durchs bild den du suchst und fuckt den ganzen bot ab !

->pixelbot stinkt
08/03/2011 22:52 | Moep |#40
Beim Mauszeiger ist das suchen über mems immer bisschen tricky, da du die maus ja brauchst um z.b. auf den suchen button von ce zu clicken. Wechsel dann einfach mit alt+tab auf ce und navigier dann über die tastatur auf den suchen button.
Wenns mit suchen nach 1 und 0 nicht klappt dann probiers mit change und unchaged.
08/03/2011 23:17 BlackHybrid#41
Oder man setzt sich einfach Hotkeys. Würde das ganze auch erleichtern.
08/04/2011 08:23 | Moep |#42
Und wie sollte dann die Funktion zu dem Hotkey aussehen? Sicherlich gehts, aber ich bin jetzt mal auf deine Lösung gespannt.
08/04/2011 09:10 buFFy!#43
Quote:
Originally Posted by | Moep | View Post
Und wie sollte dann die Funktion zu dem Hotkey aussehen? Sicherlich gehts, aber ich bin jetzt mal auf deine Lösung gespannt.
einfacher als du denkst .. :rolleyes:

CE > Edit > Settings > Hotkeys
08/04/2011 10:57 | Moep |#44
Ah cool danke, wieder was gelernt. Dachte er meinte einen Hotkey als au3 Script.
08/04/2011 12:07 ouka#45
Das wäre sicherlich ein klein bisschen umständlich ^^

Edit:

Also ich habs gerade mal probiert über pixelsearch und anderen pixel get befehlen, also die maus kann man so nicht auslesen :) wäre ja auch zu einfach gewesen, bleibt also nur über speicher