# Pong-Klon (Applet!)



## Guest (7. Sep 2005)

Hi!

Ich bin der, der gestern auch schon den Breakout-Klon gepostet hat, und wollte fragen, was ihr von diesem Spiel haltet (etwas älter, aber wenigstens fertig)


----------



## 0xdeadbeef (7. Sep 2005)

Konnte es nicht ausprobieren, weil nur exakt eine Java-Version zugelassen wird:

<PARAM NAME =" type" VALUE =" application/x-java-applet;jpi-version=1.4.2_08">
und
<EMBED  type =" application/x-java-applet;jpi-version=1.4.2_08" \ ... >

Soweit ich das oberflächlich recherchiert habe, müßte man beim "type" den ganzen "jpi-version"-Teil weglassen und beim embed tag nur "version" verwenden:
<EMBED type="application/x-java-applet;version=1.4.2"

Die explizite Forderung nach einer 1.4.2_08 ist schon deshalb nicht sonderlich schlau, weil alle Leute, die ihre Maschine aktuell halten, bereits eine 1.5er haben und alle anderen ganz bestimmt nicht auf die 1.4.2_08 geupdatet haben.
Ich halte es auch für unwahrscheinlich, daß das Spiel die "_08" explizit braucht. Vermutlich wird es mit jeder 1.4.2er laufen.
Außerdem schließt die explizite Angabe per "jpi-version" höhere Versionsnummer aus, soweit ich das verstehe. Ich kann das Teil mit einer aktuellen 1.5er jedenfalls nicht starten.


----------



## Gast (8. Sep 2005)

Oh, sorry. Hab's jetzt geändert


----------



## Roar (8. Sep 2005)

jetz gehts zwar, aber: ich bin zwar kein physikguru, aber "einfallswinkel gleich ausfallswinkel" hab ich mir grad noch so gemerkt  wenn der balken in ruhe ist, prallt der ball irgendwie immer nach geradeaus ab, egal in welchem winkel er aufgeprallt ist :S


----------



## 0xdeadbeef (8. Sep 2005)

1) Maussteuerung
2) ist ein bißchen schneckig. Normalerweise lebt Pong davon, daß sich bei entsprechendem Spiel die Geschwindigkeit erhöht. 
3) IMHO muß die Eigenbewegung des Schlägers beim Aufprall des Balles Winkel und Geschwindigkeit des Balles beeinflussen.

Als ich mir vor 126 Jahren mal ein Pong in Turbopascal mit massig ASM-Inline-Funktionen zusammengeschraubt habe, habe ich das so gemacht, daß ich die Bewegung des Balls über ein deltaX und ein deltaY realisiert habe, die die Geschwindigkeit des Balls in X- und Y-Richtung bestimmen (pro Frame wird der Ball umd deltaX/deltaY bewegt).

Bei einer Kollision habe ich dann geprüft, ob der Schläger sich gerade nach oben oder unten bewegt und dann dann einen entsprechenden Offset  auf deltaY addiert bzw. davon subtrahiert.
Ich mußte dann allerdings die Größe von deltaY begrenzen, damit der Ball eine gewisse Maximalgeschwindigkeit nicht übersteigt.

Ich hatte mir dann noch extra Abfragen eingebaut, um den Ball auch mit der Oberseite und Unterseite treffen zu können.


----------

