class IntroScreen { private boolean _introDrawn; public IntroScreen() {} private void goTo(Turtle t, int x, int y) { t.hinterlasseKeineSpur(); t.geheZu(x, y); t.hinterlasseSpur(); } private void drawR(Turtle t) { t.setzeRichtung(-90); t.geheVor(100); t.setzeRichtung(0); t.geheVor(40); t.setzeRichtung(90); t.geheVor(50); t.setzeRichtung(180); t.geheVor(40); t.geheVor(-50); t.setzeRichtung(90); t.geheVor(50); } private void drawT(Turtle t) { t.setzeRichtung(0); t.geheVor(25); t.setzeRichtung(90); t.geheVor(100); t.geheVor(-100); t.setzeRichtung(0); t.geheVor(25); } private void drawL(Turtle t) { t.setzeRichtung(90); t.geheVor(100); t.setzeRichtung(0); t.geheVor(50); } /* * Draws Flappy Bird on screen. * There are surely much nicer ways of doing this but this had the least * cognitive overhead. */ public void draw(Turtle t) { if (!_introDrawn) { TurtleWelt.globaleWelt.bildschirmEinfaerben(0, 0, 0); _introDrawn = true; t.setzeFarbe("gruen"); // F goTo(t, 100, 100); t.setzeGeschwindigkeit(1); t.setzeRichtung(180); t.geheVor(50); t.setzeRichtung(90); t.geheVor(50); t.setzeRichtung(0); t.geheVor(40); t.setzeRichtung(180); t.geheVor(40); t.setzeRichtung(90); t.geheVor(50); // L goTo(t, 110, 100); drawL(t); // A goTo(t, 170, 200); t.setzeRichtung(-90); t.geheVor(100); t.setzeRichtung(0); t.geheVor(50); t.setzeRichtung(90); t.geheVor(50); t.setzeRichtung(180); t.geheVor(50); t.geheVor(-50); t.setzeRichtung(90); t.geheVor(50); // PP goTo(t, 230, 200); for (int i = 0; i < 2; ++i) { t.setzeRichtung(-90); t.geheVor(100); t.setzeRichtung(0); t.geheVor(50); t.setzeRichtung(90); t.geheVor(50); t.setzeRichtung(180); t.geheVor(50); goTo(t, 290, 200); } // Y goTo(t, 350, 100); t.setzeRichtung(90); t.geheVor(50); t.setzeRichtung(0); t.geheVor(25); t.setzeRichtung(90); t.geheVor(50); t.geheVor(-50); t.setzeRichtung(0); t.geheVor(25); t.setzeRichtung(-90); t.geheVor(50); t.setzeFarbe("blau"); // T goTo(t, 50, 210); drawT(t); // U goTo(t, 110, 210); t.setzeRichtung(90); t.geheVor(100); t.setzeRichtung(0); t.geheVor(50); t.setzeRichtung(-90); t.geheVor(100); // R goTo(t, 170, 310); drawR(t); // T goTo(t, 230, 210); drawT(t); // L goTo(t, 290, 210); drawL(t); // E goTo(t, 400, 210); t.setzeRichtung(180); t.geheVor(50); t.setzeRichtung(90); t.geheVor(50); t.setzeRichtung(0); t.geheVor(45); t.geheVor(-45); t.setzeRichtung(90); t.geheVor(50); t.setzeRichtung(0); t.geheVor(50); t.setzeGeschwindigkeit(10); } } }