167 lines
3.8 KiB
Java
167 lines
3.8 KiB
Java
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);
|
|
}
|
|
}
|
|
|
|
}
|