This site requires JavaScript, please enable it in your browser!
Greenfoot back

Comments for Highscores

Return to Highscores

GreenGooGreenGoo

2013/5/17

I'm winning!
A new version of this scenario was uploaded on Fri May 17 21:51:09 UTC 2013
A new version of this scenario was uploaded on Sat May 18 12:32:08 UTC 2013
A new version of this scenario was uploaded on Sat May 18 12:33:38 UTC 2013
GreenGooGreenGoo

2013/5/18

Did you mean the post the code as well?
A new version of this scenario was uploaded on Sat May 18 12:50:04 UTC 2013 Forgot to publish the source code! x)
GreenGooGreenGoo

2013/5/18

How do I copy/import the ColorHelp and ImageManager classes?
GreenGooGreenGoo

2013/5/18

Oh right, don't worry. I had the mode on documentation.
A new version of this scenario was uploaded on Sat May 18 13:36:45 UTC 2013
A new version of this scenario was uploaded on Sat May 18 13:37:22 UTC 2013
A new version of this scenario was uploaded on Sun May 26 00:38:39 UTC 2013 Changed to simulate a bug in the UserInfo-class!
A new version of this scenario was uploaded on Sun May 26 00:41:55 UTC 2013 Changed to simulate a bug in the UserInfo-class! Source-code published
A new version of this scenario was uploaded on Sun May 26 00:41:58 UTC 2013 Changed to simulate a bug in the UserInfo-class! Source-code published
Game/maniacGame/maniac

2013/5/26

Yay I am number 1!
MaddinMaddin

2013/6/13

Ich versuche gerade das in mein Spiel 'Survive!' einzubringen, doch der Spieler und die Gegner sind vor der Tabelle, statt dahinter, kann ich das irgendwie ändern?
Busch2207Busch2207

2013/6/13

Du schreibst einfach in den Konstruktor deiner Welt-Klasse folgendes: setPaintOrder(HighScore.class,Actor.class); Am besten direkt in die Zeile nach dem 'super(1280, 800, 1);' Dann werden alle HighScore-Objekte, die du der Welt hinzufügst, vor alle anderen Actor-Objekte gezeichnet und der Highscore liegt vor den Gegnern und Spielern! :)
MaddinMaddin

2013/6/13

Ok, habe jetzt folgendes Problem: Wenn ich das jetzt richtig verstanden habe, ist das der Score, der gespeichert wird: ui_.setScore(ui_.getUserName().equals("davmac")?-1:Greenfoot.getRandomNumber(10001)); Wie bekomme ich da jetzt meinen Int, der die Kills zählt, dort hin?
Busch2207Busch2207

2013/6/13

mhh... Ich hab mir mal dein Szenario angeschaut... Du kannst in deiner Klasse KillCounter eine Methode einfügen, die die Kills zurückgibt... Ganz einfach mit: public int getKills() { return totalCount; } und dann musst du, um die Kills zu bekommen, da du den KillCounter in keiner Variable festgehalten hast, folgendes schreiben: ui_.setScore(((KillCounter)getObjects(KillCounter.class).get(0)).getKills()); Dann hast du den Score auf die aktuellen kills gesetzt! Aber noch was wäre wichtig: Wenn du den Score nur dann neu setzen willst, wenn der alte übertroffen worde, schreibst du am besten: int i_Kills=((KillCounter)getObjects(KillCounter.class).get(0)).getKills(); if(i_Kills>ui_.getScore()) { ui_.setScore(i_Kills); ui_.store(); // den Score zu speichern darfst du nicht vergessen! ;) } Und was du auch nicht vergessen darfst ist, dass UserInfo.getMyInfo(); auch 'null' zurückgeben kann. Darum müsstest du das vorher abfragen. Das kannst du mit: if(ui_==null) return; Dann wird die aktuelle Methode abgebrochen!
MaddinMaddin

2013/6/13

Meinst du nicht if(ui_ != null)?
Busch2207Busch2207

2013/6/13

mh... mit 'return;' springt das programm aus der aktuellen Methode wieder raus. Das heißt wenn du 'if(ui!=null) return;' schreibst, dann springt das Programm aus der Methode, wenn in ui_ ein Objekt gespeichert ist. Da es aber rausspringen soll, wenn darin kein Objekt, also 'null' gespeichert ist, musst du 'ui==null' schreiben. :)
MaddinMaddin

2013/6/13

Achso ok, ich mach mich mal an die Arbeit :)
MaddinMaddin

2013/6/13

hmm.. ich bekomme eine Fehlermeldung (java.lang.IndexOutOfBoundsException: Index: 0, Size: 0) in dieser Zeile: int i_Kills=((KillCounter)getObjects(KillCounter.class).get(0)).getKills(); Code der jetzt da steht: UserInfo ui_=UserInfo.getMyInfo(); int i_Kills=((KillCounter)getObjects(KillCounter.class).get(0)).getKills(); if(ui_==null) return; if(i_Kills>ui_.getScore()) { ui_.setScore(i_Kills); ui_.store(); }
Busch2207Busch2207

2013/6/13

mh... Das heißt, dass in der aktuellen Welt kein Objekt der Klasse KillCounter existiert... Wo steht denn dieser Code? Setzt du eine neue Welt?
A new version of this scenario was uploaded on Thu Jun 13 20:20:21 UTC 2013 -second highscore-Type added -description added
A new version of this scenario was uploaded on Thu Jun 13 20:25:02 UTC 2013 -second highscore-Type added -description added
A new version of this scenario was uploaded on Thu Jun 13 20:27:55 UTC 2013
A new version of this scenario was uploaded on Thu Jun 13 20:29:08 UTC 2013
A new version of this scenario was uploaded on Thu Jun 13 20:38:17 UTC 2013
KartoffelbrotKartoffelbrot

2013/6/14

Nicht schlecht, jetzt weiß ich, dass ich mit euch beiden deutsch reden kann.
MaddinMaddin

2013/6/14

:D
dibodibo

2013/10/2

Great work!
FlicknFlackFlicknFlack

2013/12/17

Kann ich eine Highscoreklass für mein szenario benutzen?
Busch2207Busch2207

2013/12/18

Klar! :) Dazu hab ich sie hier hoch gestellt! :)
FlicknFlackFlicknFlack

2013/12/18

ok vielen dank :D
Tasya16Tasya16

2019/5/22

How can I put this in my game?