Das 1972 von Atari veröffentlichte Pong war eines der ersten Computerspiele, hier mehr zu seiner Geschichte.
Zwei Spieler steuern je einen Schläger am linken bzw. rechten Bildschirmrand und versuchen, einen Ball so abprallen zu lassen, dass ihn der Gegner mit seinem Schläger nicht mehr erwischt, ähnlich wie beim Tennis. Der Ball prallt sowohl an den Schlägern als auch am oberen und unteren Bildschirmrand ab. Das gestrichelte „Netz“ in der Mitte des Bildschirms hat spieltechnisch keine Bedeutung.
Am oberen Rand des Grafikbereichs stößt der Schläger dann an, wenn getCenterY() == getHeight()/2
. Solange getCenterY() > getHeight()/2
ist, ist der Schläger noch nicht oben angekommen.
Am unteren Rand des Grafikbereichs stößt der Schläger dann an, wenn getCenterY() + getHeight()/2 == 600
. Solange getCenterY() + getHeight()/2 < 600
ist, ist der Schläger noch nicht unten angekommen.
Erweitere das PONG-Spiel folgendermaßen:
Sound.playSound(Sound.pong_d);
), wenn er an einem Schläger abprallt, soll ein hoher Ton zu hören sein (Anweisung Sound.playSound(Sound.pong_f);
).
Grundsätzlich: Das ist unser erstes größeres Java-Projekt mit mehreren Klassen. Erwartet nicht, dass Ihr alles gleich beim ersten Ansehen durchdringt und habt keine Sorge, es werden sich wieder kleinere Projekte mit wenigen, sehr kleinen Klassen anschließen. Schaut die Videos diesmal am besten mindestens zweimal an und spielt mit den Programmen auf dieser Seite: Verändert sie ein klein wenig, startet sie und untersucht, welche Auswirkungen die Änderungen auf das Spiel haben. Verändert wieder ein kleines Bisschen, usw.
Wenn das Programm nicht mehr geht, könnt Ihr es mit dem Button „Code reset“ jederzeit wieder in den Ausgangszustand versetzen.
Zu 1.) Ihr müsst die beiden Statements nur an den richtigen Stellen des Programms einfügen.
Zu 2.) Die Geschwindigkeit des Balls ist in den Attributen vx
und vy
gespeichert. Mit vx *= 1.01
und vy *= 1.01
kann man diese geringfügig erhöhen. Diese Statements kann man bspw. in der act-Methode der Klasse Ball einfügen, so dass sie 20-mal pro Sekunde ausgeführt werden.
Die Geschwindigkeit der Schläger ist im Attribut dy
abgelegt. Auch dieses kann man bspw. in der act-Methode der Schläger immer wieder ein ganz kleines Stück erhöhen, dann werden die Schläger immer schneller. Wenn ein Tor erzielt wurde, setzt man den Wert von dy einfach wieder auf den initialen Wert 5 zurück.