EGE/Inf10
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
Lade BYOB herunter und beende dein Projekt bis einschließlich Aufgabe 16. Download von BYOB 3.1.1: * [http://byob.berkeley.edu/BYOB%203.1.1%20Setup.exe Installer] * [http://byob.berkeley.edu/BYOB%203.1.1%20Win.zip Dateien] (für diejenigen, die keinen Startmenü-Eintrag möchten) == zu erledigende Aufgaben mit BYOB == 13. Zu Beginn des Spiels soll der Moderator nach den Namen der Spieler fragen und sich diese "merken". Dazu speichert er die Antwort in einer Textvariable, die ebenfalls am oberen Spielfeldrand angezeigt werden soll. 14. Deine Ball-Skripte werden immer unübersichtlicher. Nun soll auch noch die zuvor fest eingestellte Richtung -70 durch eine Zufallszahl ersetzt werden. Lagere deshalb diese in eine Byob-Funktion "Zufallsrichtung_Pong()" aus. Klicke dazu bei "Variablen" auf "neuer Block". Es soll ein Funktionsblock vom Typ Bewegung mit dem Namen "Zufallsrichtung_Pong" sein. In dieser Funktion muss nichts durchgeführt werden – lediglich der Rückgabewert soll eine geeignete Richtung sein. Zufallszahl von 45 bis 135 ist nur bedingt geeignet, weil der rechte Spieler damit alle Anfangsbälle abbekommt. Überlege, welche möglichen Zahlen mit -1+(2*Zufallszahl von 0 bis 1) zustande kommen und verbinde die beiden Formeln sinnvoll im Rückgabewert. Falls du nach 5 Minuten noch keine Lösung gefunden hast, sieh dir Tipp 3 an. 15. Wenn ein Spieler 5 Punkte erreicht, ist das Spiel zu Ende. [Zusatz: Es soll eine Boolesche Variable "ein Spieler hat gewonnen" auf wahr gesetzt werden.] Die Spielobjekte verschwinden, der Moderator erscheint und verkündet den Namen(!) des Siegers. 16. Drucke das Arbeitsblatt 4 <document>Mschubert_Byob-pong_ab_AB_PAP.pdf</document> aus und arbeite es durch. Wenn du Fragen hast, kannst du kurz in der Lösung linsen. Ergänze anschließend das Arbeitsblatt "Grundstrukturen" mit den entsprechenden Programmablaufplänen und setze außerdem dein Skript von Spieler 1 (Wenn ich "start" empfange) mit einem Programmablaufplan auf einem separaten Blatt um. '''Zusatz:''' 17. Der Hintergrund soll sich abhängig von der Spielsituation (Anfang, Spiel, Ende) ändern. 18. Der Hintergrund soll seine Farbe verändern, wenn ein Spieler einen Punkt macht, z.B. wenn Rot einen Punkt macht, soll er sich leicht ins rötliche verfärben. 19. Wenn du dir die Online-Variante von Pong ansiehst, dann stellst du sicher fest, dass der Ball von den Spielern anders abprallt, wenn er z.B. im unteren Bereich getroffen wird. Versuche auch dieses spezielle (und Spielspaß erhöhende!) Abprallverhalten umzusetzen. 20. Idee: Geschwindigkeit erhöhen, nach bestimmter Anzahl an hin- und herspielen. 21. Idee: Objekt taucht nach einiger Zeit an einer zufälligen Stelle auf. An diesem Objekt könnte z.B. der Ball wiederum abprallen. == zu erledigenden Aufgaben zur LK-Vorbereitung == <document>Mschubert_Übung_Algorithmen_BYOB_1.pdf</document> == Lösungen == === zu Aufabe 14 === Pong_Zufallsrichtung: report ( (-1) + (2 * Zufallszahl von 0 bis 1) ) * (Zufallszahl von 45 bis 135) === weitere Lösungen === Tipp 3; PAP zu Struktogramm; PAPs auf dem Hauptarbeitsblatt: <document>Mschubert_Byob-pong_ab_Lsgen.pdf</document> === zu den Arbeitsblättern (LK-Vorbereitung) ===