Epic: Lücken im Boden
Als Spielerin möchte ich über Löcher springen müssen, damit das Springen einen Sinn bekommt.
Die Idee
Nicht jede Plattform kommt zurück: Manche bleibt beim Wiedereinsetzen unsichtbar. Wer in ein Loch fällt, verliert.
Deine Aufgabe
a) Beim Wiedereinsetzen wird etwa jede fünfte Plattform zu einem Loch.
b) Bugs fällt, wenn unter ihm ein Loch ist.
c) Wer unter die Bühne fällt, hat verloren.
d) 🚀 Sorgt dafür, dass nie zwei Löcher nebeneinander liegen – sonst ist die Lücke nicht zu schaffen.
Tipps
Tipp 1: Ein Loch ist eine unsichtbare Plattform
Am einfachsten bleibt die Plattform an ihrem Platz, wird aber versteckt. Dann stimmt der Abstand zu den Nachbarn weiterhin:
if (this.getX() < -450) {
this.changeX(BunnyHop.PLATTFORMEN * BunnyHop.BREITE);
loch = this.pickRandom(1, 5) == 1; // jede fünfte wird ein Loch
if (loch) {
this.hide();
} else {
this.show();
}
}
Tipp 2: Wann fällt Bugs?
Bugs fällt, wenn unter ihm gerade ein Loch ist. „Unter ihm" heißt: die Plattform,
deren x-Bereich seine x-Position enthält. Da Bugs immer bei −250 steht, sucht ihr
die Plattform, für die Math.abs(p.getX() - (-250)) < BunnyHop.BREITE / 2 gilt.
Am übersichtlichsten fragt Bugs die Bühne: „Ist an meiner Stelle ein Loch?" Dafür muss die Bühne ihre Plattformen kennen – ein Feld im Konstruktor füllen genügt.