Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > Java
You last visited: Today at 20:49

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

Advertisement



Problem mit Robot Class & Counter

Discussion on Problem mit Robot Class & Counter within the Java forum part of the Coders Den category.

Reply
 
Old   #1

 
fUtANg.'s Avatar
 
elite*gold: 148
Join Date: Jun 2013
Posts: 126
Received Thanks: 8
Question Problem mit Robot Class & Counter

Hey,
entweder hat mein Gehirn grade nen Blackout oder mein Wissen reicht einfach noch nicht.

Versuche derzeit einen Counter zu erstellen, welcher immer um eins hoch geht, wenn ein (oder mehrere) besagter Pixel schwarz ist.
Ich nutze dazu die Robot Class:
Code:
robot.getPixelColor(x, y);
Jedoch zählt er bis ins unendliche, so lange der Pixel schwarz ist.

Hättet ihr eine Idee oder könntet mir auf die Sprünge helfen?


Danke.
fUtANg. is offline  
Old 08/09/2016, 20:25   #2
 
KingDingD0ng's Avatar
 
elite*gold: 11
The Black Market: 103/0/0
Join Date: Jun 2011
Posts: 1,847
Received Thanks: 141
Quote:
Originally Posted by fUtANg. View Post
Hey,
entweder hat mein Gehirn grade nen Blackout oder mein Wissen reicht einfach noch nicht.

Versuche derzeit einen Counter zu erstellen, welcher immer um eins hoch geht, wenn ein (oder mehrere) besagter Pixel schwarz ist.
Ich nutze dazu die Robot Class:
Code:
robot.getPixelColor(x, y);
Jedoch zählt er bis ins unendliche, so lange der Pixel schwarz ist.

Hättet ihr eine Idee oder könntet mir auf die Sprünge helfen?


Danke.
Robot class?
Sagt mir jetzt nichts.

Wieso nutzt du nicht einfach -> )


Hier auch gleich meine Ergebnisse nach 10 Sekunden googlen.
KingDingD0ng is offline  
Thanks
1 User
Old 08/09/2016, 20:26   #3

 
fUtANg.'s Avatar
 
elite*gold: 148
Join Date: Jun 2013
Posts: 126
Received Thanks: 8
Danke! Ich schau es mir mal an.
fUtANg. is offline  
Old 08/09/2016, 20:30   #4
 
EngelEatos's Avatar
 
elite*gold: 22
Join Date: May 2011
Posts: 516
Received Thanks: 178
Quote:
Originally Posted by KingDingD0ng View Post
Robot class?
Sagt mir jetzt nichts.


Zum Problem, die robot class erkennt also, dass der Pixel schwarz ist?
Der Counter ist nur falsch, das würde daraufhin weisen, das etwas anderes mit deinem Code nicht stimmt. Könntest du den Ausschnitt, um den es hier geht, posten?
EngelEatos is offline  
Old 08/09/2016, 20:43   #5

 
fUtANg.'s Avatar
 
elite*gold: 148
Join Date: Jun 2013
Posts: 126
Received Thanks: 8
Ja, die Pixelerkennung ist kein Problem.

Code:
public boolean f = false;
	public static int c = 0;

   void counter() throws AWTException{
    	
   	 Robot Robo = new Robot();
   	 
   	 Color Pixel = Robo.getPixelColor(900, 900);
   	 Color b = new Color(0,0,0);
   	 
   	 while(Pixel.equals(b)){
   		 c = c ++;
   		System.out.println(fightInfo.c);
   	 }
Das ist leider alles was noch übrig geblieben ist, Lösungansätze wurden leider vor Verzweiflung gelöscht. Mir ist bewusst, dass der Counter garnicht anders kann als gnadenlos hochzählen bei dem Code. Hatte es bereits versucht mit einem boolean, welcher am Ende die Schleife verweigert.

Mittlerweile denke ich aber, dass eine Schleife dazu ungeeignet ist. Wie gesagt, habe heute irgendwie nen Blackout und bin noch nicht der erfahrenste Programmierer. :/
fUtANg. is offline  
Old 08/09/2016, 21:49   #6
 
EngelEatos's Avatar
 
elite*gold: 22
Join Date: May 2011
Posts: 516
Received Thanks: 178
was willst du denn machen?

Ändert sich der Pixel auch noch, ansonsten ist es doch logisch, das der Counter weiterzählt.

Wenn du nur einmal schauen willst, ob der Pixel schwarz ist:
Code:
If(Pixel.equals(b)) {
    c += 1;
}
Wenn du immer wieder nach einer bestimmten Zeit prüfen willst, ob der Pixel schwarz ist, solltest du dir die Timer-Class von Java anschauen.
()
EngelEatos is offline  
Thanks
1 User
Old 08/09/2016, 21:56   #7

 
fUtANg.'s Avatar
 
elite*gold: 148
Join Date: Jun 2013
Posts: 126
Received Thanks: 8
Einen Counter, der immer um eins hoch zählt wenn der bestimmte Pixel schwarz ist. Wenn er einmal schwarz ist soll das Programm warten bis der Pixel nicht mehr schwarz ist, wenn der Pixel danach erneut schwarz wird, soll es erneut +1 rechnen. Und so weiter...

Mein Problem ist es, dass ich es nicht hinkriegt wann der Counter hoch zählen soll und wann nicht.
fUtANg. is offline  
Old 08/09/2016, 22:08   #8
 
.Scy's Avatar
 
elite*gold: 15
Join Date: Jul 2010
Posts: 3,926
Received Thanks: 1,158
was soll denn für die farb änderung sorgen? man baut, außer in spezialfällen, niemals eine endlosschleife, was genau das ist was du dort getan hast. wenn der pixel 900/900 immer schwarz ist, dann läuft dein programm unendlich.

wenn du auf änderungen an dem pixel warten willst, versuch einen listener zu erstellen, welcher auf diese änderung reagiert.
.Scy is offline  
Thanks
1 User
Old 08/09/2016, 22:29   #9
 
EngelEatos's Avatar
 
elite*gold: 22
Join Date: May 2011
Posts: 516
Received Thanks: 178
So würde dein Code funktionieren, davon ist aber, wie bereits von .Scy gesagt, aufgrund der Endlosschleife abzuraten. Der beste Lösungansatz ist der von .Scy angesprochene Listener.

Code:
Boolean dontcount = false;
Robot robot = new Robot();
while (true) {
    if(robot.getPixelColor(900, 900).equals(b)){
        if(dontcount == false){
            c+=1;
            dontcount = true;
            System.out.println(c);
        }
    } else {
        dontcount = false;
    }
}
EngelEatos is offline  
Thanks
1 User
Old 08/09/2016, 22:37   #10

 
fUtANg.'s Avatar
 
elite*gold: 148
Join Date: Jun 2013
Posts: 126
Received Thanks: 8
Danke euch zwei, ich les mich mal in den Listener ein und versuche mich anschließend nochmal.
fUtANg. is offline  
Old 08/10/2016, 23:08   #11

 
fUtANg.'s Avatar
 
elite*gold: 148
Join Date: Jun 2013
Posts: 126
Received Thanks: 8
Blicke da irgendwie nicht durch wie ich das machen soll. :/

Wie kann ich einen Listener erstellen, der reagiert wenn Pixel 900,900 schwarz ist und sich immer und immer wieder auslösen lässt?
fUtANg. is offline  
Old 08/11/2016, 15:54   #12

 
fUtANg.'s Avatar
 
elite*gold: 148
Join Date: Jun 2013
Posts: 126
Received Thanks: 8
Kann dicht gemacht werden.
fUtANg. is offline  
Reply


Similar Threads Similar Threads
[JAVA] Die Robot Class
10/13/2016 - Coding Tutorials - 22 Replies
Ihr möchtet einen Bot in Java Programmieren aber wisst nicht womit ihr Anfangen sollt ? Dann seid ihr hier genau richtig ! Hier will ich euch die Robot Class von Java näher bringen, denn mit ihr kann man eniges Anfangen was man auch für Bots nutzen kann wie die Attacken durch Tastendrücken ausführen, Pixel auslesen um z.b den HP Status dadurch zu erkennen usw. 1. Was ist die Robot Class und was kann sie ? 2. Aller Anfang ist leicht 2.1 Die Robot Class einbinden 2.2 Ein Robot Objekt...
NosDark Problem In Change class And Other Problem
05/03/2016 - Nostale - 2 Replies
Hello, I have a problem with my server in my server nostale ... I can not change classes anything ... when I open the server world out many errors n_runs not want to do anything someone help with this issue , and my other problem is Cards with SP I give " g" and not someone becomes tells me how ? and if it is in c ++ explain to me Thanks .:handsdown::cool: My SP is in $morph xD. Ahh Amm and someone to tell me how to put my server no hamachi hamachi than then.:handsdown::D ...
WoW Counter Class List Hilfe
08/28/2013 - World of Warcraft - 1 Replies
huhu leute ich suche ne classen counter liste aktuell halt habe in google nix gefunden könnte mir wer helfen :)



All times are GMT +2. The time now is 20:49.


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.