# Snake3D,Minesweeper,PingPong



## Newcomer2 (19. Feb 2014)

Hallo Leute,
ich möchte euch auch mal meine bisher so erstellten Spielchen vorstellen.

Das erste war PingPong (PingV1), dann kam Snake (SnakeV2) und zum Schluss dann Minesweeper.
Bin gespannt, wie Ihr die so findet. 

Bei PingPong werd ich mal noch ne neuere Version hochladen, da diese hier schon überarbeitet wurde ^^ Die hat noch keinen Puffer und kann auch noch nicht auf mehrere KeyEvents gleichzeitig reagieren.

Würd ich jedoch den Quellcode noch mit zeigen, würden viele die Hände über dem Kopf zusammenschlagen und entweder staunen oder verzweifeln ^^

Zu Snake wär noch zu sagen: zum starten des Threads auf Spielfläche klicken und dann Leertaste ^^ ansonsten wie gehabt mit Pfeiltasten.
Achja, ich plane da auch noch die Erweiterung in alle 3 Raumdimensionen


----------



## Newcomer2 (19. Feb 2014)

Hab hier dann die etwas überarbeitete Version zu PingPong ^^


----------



## Gucky (19. Feb 2014)

Erstmal coole Sachen, die du da gemacht hast. Ich wüsste nicht, ob ich das hingekriegt hätte. 

Aber nun kommen die schlechten Dinge:
Snake:

Neue Elemente der Schlange werden erst mal in der Waagerechten erstellt
Die Bedienungsanleitung ist leer
Dein Programm hat mir 9 identische Dateien daneben erstellt. Das kann man auch in einer erledigen. Z.B. mit XML

PingPong:

Das Feld flackert

MineSweeper:

Manchmal klickt man auf leere Felder aber es werden nicht alle leeren Felder automatisch mit angeklickt
Das Aufbauen eines größeren Feldes dauert lange
Das Schließen des Programmes bei einem großen Feld dauert lange


----------



## Thunderstorm (19. Feb 2014)

Minesweeper sind Fehler desöfteren Fehler drin. 2 Bomben um ein 1er Feld z.B.

Ansonsten nicht schlecht für deine ersten Spiele opcorn:


----------



## Newcomer2 (20. Feb 2014)

Danke erstmal für eure Antworten 

@ Gucky: 
_Snake_
- Ich hatte es der Einfachheit halber erstmal mit 9 Dateien geschrieben. Natürlich sollte es kein Problem, das mit einer aufzubauen. Jedoch sollte jede Datei als Highscoreliste für jeden Schwierigkeitsgrad sein.  
 - Die Bedienung ist deshalb noch leer, weil ich noch keinen Text dazu geschrieben hab, daher die Anleitung zum Spielbeginn in meinem ersten Post ^^
- Das mit den neuen Gliedern werd ich versuchen noch zu beheben. Aber als so schlimm empfand ich das bisher nicht 

_PingPong_
- leider hab ich bei der hochgeladenen Version immernoch den Puffer vergessen ^^

_Minesweeper_
- Ja, aber das Problem hab ich leider noch nicht komplett beheben können. Ich lass dabei die einzelnen Felder hintereinander weg erstellen und erst bei Erreichen der Spaltenzahl wird eine Zeile weitergerückt.
Mir fehlen da im Prinzip so ein bisschen die Bedingungen und die Form der Beschreibung, wie die Prüfung auf Bomben weitergehen soll. 
- Ich weiß auch leider nicht, wie ich das Erstellen und Schließen bei großen Feldern schneller machen könnte. Liegt das Problem vielleicht daran, dass ich alle Felder als eigenständige 
	
	
	
	





```
Canvas
```
 baue?



@Thunderstorm:
es ist nen ähnliches Problem wie beim Aufdecken der leeren Felder. Aber hätte nicht gedacht, dass das noch auftritt


----------



## Gucky (20. Feb 2014)

Du verwendest auf jeden Fall zu rechnungsintensive Objekte. Du könntest zu Anfang, beim Start schon im Hintergrund die Felder aufbauen und dann nur noch anzeigen. Wenn ein Spiel neu gestartet wird, dann manipulierst du die Objekte nur und baust sie nicht neu.


----------



## Newcomer2 (20. Feb 2014)

Du meinst, ich soll zu beginn für jeden Schweirigkeitsgrad alle Elemente zeichnen lassen, aber die Sichtbarkeit nur begrenzt ausgeben. Hab ich das so richtig verstanden? Oder zumindest für den maximalen Aufwand die Felder erstellen, und nur begrenzt dann anzeigen?

Dann werd ich das mir mal so zu Gemüte führen und versuchen richtig umzusetzen


----------



## Gucky (20. Feb 2014)

Nee. Ich meinte, dass du drei Panels machst und auf denen alles schon mal aufbaust. Und die dann nach Bedarf anzeigst. Oder du suchst dir weniger rechnungsintensive Objekte.


----------



## Newcomer2 (20. Feb 2014)

Hmm, keine so schlechte Idee ^^
ich könnte jetzt nur nicht sagen, obs so lange dauert allgemein die Panels aufzubauen, oder ob die Wartezeit daher rührt, dass per Zufall die Minen gesetzt und entsprechende Zahlenwerte ermittelt werden müssen. Aber das kann man ja nur ausprobieren ^^

Wie wäre denn das gemeint mit: 





> Oder du suchst dir weniger rechnungsintensive Objekte.


?? Sind Canvas keine gute Wahl?  Wüsste aber sonst nicht, welche Objekte ich sonst so schön bearbeiten kann :rtfm: ???:L


----------



## Katharsas (20. Feb 2014)

Newcomer2 hat gesagt.:


> Danke erstmal für eure Antworten
> 
> _Minesweeper_
> - Ja, aber das Problem hab ich leider noch nicht komplett beheben können. Ich lass dabei die einzelnen Felder hintereinander weg erstellen und erst bei Erreichen der Spaltenzahl wird eine Zeile weitergerückt.



Vielleicht hilft dir das hier:
Flood fill - Wikipedia, the free encyclopedia


----------



## Gucky (20. Feb 2014)

Ich habe keine Ahnung, ob Canvas gut ist, oder nicht aber das scheint extra für Spiele gemacht worden zu sein. Also wird das wohl gut sein. 
Ich hab nur den Vergleich zwischen den Minesweepern, die ich schon gesehen habe und deinem. Irgendwie werden die anderen das hingekriegt haben, dass die Verzögerung bei dem Schwierigkeitsgradwechsel nicht sichtbar ist.


----------



## Androbin (18. Jul 2014)

Gucky hat gesagt.:
			
		

> ... Irgendwie werden die anderen das hingekriegt haben, dass die Verzögerung bei dem Schwierigkeits-Grad-Wechsel nicht sichtbar ist. ...


Wie wäre es damit?:
Sobald man ein neues Spiel startet, lädt er dir ein bereits vorbereitetes und bereitet im Hintergrund das nächste vor (für alle Schwierigkeitsgrade eins)!


----------



## Keyone94 (27. Jul 2014)

für den Anfang ganz in Ordnung, bei Pong hab ich jedoch Duble Buffering Probleme (das Bild flackert), wenn man leertaste spamt, springt der ball in und her und wird immer schneller

bei dem Minesweeper werden die Buttons? nur innerhalb einer Zeile geöffnet, wenn sie keinen Zahlwert haben, also nicht Spalten übergreifen (und auch Buttons in der selben Zeile, die gar nicht verbunden sind)  (achja: das zufällig verteilen, oder allgemein alles rechnerische macht +- gar nichts an Rechenleistung aus, daran sollte es also nicht liegen  )

das Snake sieht gut aus =)


----------

