Skip to content

Commit c95ef87

Browse files
author
Tobias Eilert
committed
Pong beginnen
1 parent 0df9396 commit c95ef87

File tree

4 files changed

+65
-1
lines changed

4 files changed

+65
-1
lines changed

README.md

+6
Original file line numberDiff line numberDiff line change
@@ -28,3 +28,9 @@ Ich fange gerne mit diesen Icebreakern an:
2828

2929
[Linie, die sich bewegt](linie_in_bewegung.md)
3030
[Einfaches Malprogramm](malen.md)
31+
32+
# Echte Spiele
33+
34+
Diese Projekte sind dann schon etwas aufwändiger.
35+
36+
[Pong](pong.md)

images/pong1.png

160 KB
Loading

malen.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ wird der Strich.
4343

4444
Das alleine macht noch nicht so viel her...
4545

46-
## zwei Pinsel gleichzeitig
46+
# zwei Pinsel gleichzeitig
4747

4848
Wie wäre es mit einem weiteren Pinsel, der spiegelverkehrt malt? Das klingt
4949
komplizierter als es ist:

pong.md

+58
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
# Pong
2+
3+
Pong ist wohl der Spieleklassiker schlechthin. Die erste Version erschien 1972 von Atari und war in Spielhallen sehr
4+
beliebt.
5+
6+
# Spielregeln
7+
8+
> Das Spielprinzip von Pong ist simpel und ähnelt dem des Tischtennis: Ein Punkt ("Ball") bewegt sich auf dem Bildschirm hin und her. Jeder der beiden Spieler steuert einen senkrechten Strich ("Schläger"), den er mit Tasten (hoch/runter) nach oben und unten verschieben kann. Lässt man den "Ball" am "Schläger" vorbei, erhält der Gegner einen Punkt.
9+
10+
Auszug aus [Wikipedia](https://de.wikipedia.org/wiki/Pong)
11+
12+
Zum Start kann man Pong einfach implementieren: zwei Spieler spielen an einem Rechner gegeneinander. Oder man spielt selber beide Schläger.
13+
Später können wir das Spiel so erweitern, dass man gegen einen Computergegner (Bot, KI) spielen kann.
14+
15+
# Der Grundaufbau
16+
17+
Zuerst brauchen wir wie immer ein Fenster. Außerdem platzieren wir die Spieler auf dem Spielfeld
18+
19+
```java
20+
/* Positionen der Schläger. Da die Spieler sie nur nach oben
21+
* und unten bewegen können, ist nur die Y-Koordinate variabel.
22+
* Auf der X-Achse bleiben die Schläger immer, wo sie sind. */
23+
float player1y, player2y;
24+
25+
/* Beim Ball sieht es anders aus. Dieser bewegt sich frei im Raum.
26+
* Daher brauchen wir hier X- und Y-Koordinate. */
27+
float ballx, bally;
28+
29+
void setup() {
30+
size(800, 600);
31+
32+
// Spielerpositionen: zum Start mittig
33+
player1y = height / 2 - 45;
34+
player2y = height / 2 - 45;
35+
36+
// Ball mittig positionieren
37+
ballx = width / 2 - 10;
38+
bally = height / 2 - 10;
39+
}
40+
41+
void draw() {
42+
background(0, 0, 0);
43+
fill(255, 255, 255);
44+
45+
// Spieler 1
46+
rect(25, player1y, 25, 90);
47+
48+
// Spieler 2
49+
rect(width - 50, player2y, 25, 90);
50+
51+
// Ball
52+
ellipse(ballx, bally, 20, 20);
53+
}
54+
```
55+
Danach haben wir dieses Ergebnis:
56+
57+
![Pong Spielaufbau](images/pong1.png)
58+

0 commit comments

Comments
 (0)