import sum.ereignis.*;
import sum.komponenten.*;
import sum.werkzeuge.*;
/**
* @author Felix Reuter
* @version 1.5 RC2
* @Date 7.12.09
*/
public class TEST extends EBAnwendung
{
// Objekte
Bildschirm derBildschirm;
Buntstift meinStift;
Knopf Knopf1;
Knopf Knopf2;
Knopf Knopf3;
Knopf Knopf4;
Knopf Knopf5;
double grad = 0.05;
double hPosition;
double vPosition;
boolean Abbruch = false;
boolean ende = false;
double PfeilH;
double PfeilV;
double EndposiH;
double EndposiV;
// Konstruktor
public TEST()
{
//Import der Sachen
meinStift = new Buntstift();
Knopf1 = new Knopf(100,20,80,40,"Weiter","abbruch");
Knopf2 = new Knopf(200,20,80,40,"leicht","leicht");
Knopf3 = new Knopf(300,20,80,40,"mittel","mittel");
Knopf4 = new Knopf(400,20,80,40,"schwer","schwer");
//Zielschreibe Zeichnen
Zielscheibe();
meinStift.bewegeBis(10,360);
meinStift.setzeFarbe(Farbe.ROT);
meinStift.runter();
meinStift.schreibeText("Willkommen zu Java Dart 1.5 RC2");
meinStift.hoch();
meinStift.bewegeBis(10,370);
meinStift.runter();
meinStift.schreibeText("Bitte beachten sie, dass diese Version nocht nicht fertig ist,");
meinStift.hoch();
meinStift.bewegeBis(10,380);
meinStift.runter();
meinStift.schreibeText("und noch Fehler enthalten kann!");
meinStift.hoch();
meinStift.bewegeBis(10,390);
meinStift.runter();
meinStift.schreibeText("Viel Spass!");
meinStift.hoch();
meinStift.setzeFarbe(Farbe.SCHWARZ);
meinStift.bewegeBis(1,1);
meinStift.runter();
meinStift.bewegeBis(1,350);
meinStift.bewegeBis(540,350);
meinStift.bewegeBis(540,1);
meinStift.bewegeBis(1,1);
meinStift.hoch();
meinStift.bewegeBis(1,100);
meinStift.runter();
meinStift.bewegeBis(540,100);
meinStift.hoch();
}
/**
* Diese Methodeist das eigentlicht Spiel, die Andren Methoden dienen nur als Hilfe
*/
public void pfeilfaellt()
{
meinStift.bewegeBis(52,150);
do
{
meinStift.dreheBis(0);
meinStift.runter();
zeichnePfeil();
löschePfeil();
meinStift.dreheUm(270);
meinStift.bewegeUm(grad);
vPosition = meinStift.vPosition();
hPosition = meinStift.hPosition();
Zielscheibe();
meinStift.bewegeBis(hPosition,vPosition);
if(meinStift.vPosition()>=294)
{
meinStift.bewegeBis(52,150);
}
else
{
//Hier soll nix passieren
}
}
while(Abbruch==false);
Abbruch = false;
}
public void spiel()
{
pfeilfaellt();
drehePfeil();
Pfeilfliegt();
Knopf5 = new Knopf(500,20,80,40,"nochmal");
}
//Hier kommen nur die Hilfsmethoden, die das eigentliche Spiel braucht
/**
* Diese Methode dreht den Pfeil
*/
public void drehePfeil()
{
do
{
meinStift.runter();
zeichnePfeil();
löschePfeil();
meinStift.dreheUm(grad);
vPosition = meinStift.vPosition();
hPosition = meinStift.hPosition();
Zielscheibe();
meinStift.bewegeBis(hPosition,vPosition);
}
while(Abbruch==false);
Abbruch = false;
}
/**
* Diese Methode zeichnet den Pfeil
*/
public void zeichnePfeil()
{
meinStift.runter();
meinStift.bewegeUm(50);
PfeilV = meinStift.vPosition();
meinStift.dreheUm(135);
meinStift.bewegeUm(4);
meinStift.bewegeUm(-4);
meinStift.dreheUm(-270);
meinStift.bewegeUm(4);
meinStift.bewegeUm(-4);
meinStift.dreheUm(135);
meinStift.bewegeUm(-50);
meinStift.hoch();
}
/**
* Diese Methode löscht den Pfeil
*/
public void löschePfeil()
{
meinStift.radiere();
zeichnePfeil();
meinStift.normal();
}
/**
* Diese Methode bewegt den Pfeil
*/
public void Pfeilfliegt()
{
do
{
zeichnePfeil();
löschePfeil();
meinStift.hoch();
meinStift.bewegeUm(grad);
vPosition = meinStift.vPosition();
hPosition = meinStift.hPosition();
Zielscheibe();
meinStift.bewegeBis(hPosition,vPosition);
meinStift.runter();
if(PfeilV>=346||PfeilV<=105)
{
EndposiV = meinStift.vPosition();
meinStift.hoch();
Abbruch = true;
}
if(meinStift.hPosition()>=450)
{
if((meinStift.vPosition()>=160)&&(meinStift.vPosition()<=240))
{
EndposiV = meinStift.vPosition();
meinStift.hoch();
Abbruch = true;
}
else
{
EndposiV = meinStift.vPosition();
meinStift.hoch();
Abbruch = true;
}
}
else
{
}
}
while (Abbruch==false);
statistik();
}
public void statistik()
{
boolean bereich = false;
boolean lms = false;
int Punkte = 0;
meinStift.hoch();
meinStift.bewegeBis(600,100);
if(EndposiV>=160&&EndposiV<=240)
{
meinStift.runter();
meinStift.schreibeText("Der Schuss war ein Treffer!");
}
else
{
meinStift.runter();
meinStift.schreibeText("Der Schuss war kein Treffer!");
}
meinStift.hoch();
meinStift.bewegeBis(600,110);
if(EndposiV>=160&&EndposiV<170||EndposiV>230&&EndposiV<=240)
{
meinStift.runter();
meinStift.schreibeText("Der Schuss war ein Treffer im blauen Bereich! (20 Punkte)");
bereich = true;
Punkte=20;
}
if(EndposiV>=170&&EndposiV<180||EndposiV>220&&EndposiV<=230&&bereich==false)
{
meinStift.runter();
meinStift.schreibeText("Der Schuss war ein Treffer im roten Bereich! (40 Punkte)");
bereich = true;
Punkte=40;
}
if(EndposiV>=180&&EndposiV<190||EndposiV>210&&EndposiV<=220&&bereich==false)
{
meinStift.runter();
meinStift.schreibeText("Der Schuss war ein Treffer im gelben Bereich! (60 Punkte)");
bereich = true;
Punkte=60;
}
if(EndposiV>=190&&EndposiV<199||EndposiV>199&&EndposiV<=210&&bereich==false)
{
meinStift.runter();
meinStift.schreibeText("Der Schuss war ein Treffer im grünen Bereich! (80 Punkte)");
bereich = true;
Punkte=80;
}
if(EndposiV==199&&bereich==false||EndposiV==200&&bereich==false||EndposiV==201&&bereich==false)
{
meinStift.runter();
meinStift.schreibeText("Der Schuss war ein Treffer im schwarzen Bereich! (100 Punkte)");
bereich = true;
Punkte=100;
}
if(EndposiV<160&&bereich==false||EndposiV<240&&bereich==false)
{
meinStift.runter();
meinStift.schreibeText("Der Schuss war kein Treffer! (0 Punkte)");
bereich = true;
Punkte=0;
}
meinStift.hoch();
meinStift.bewegeBis(600,120);
if(grad==0.05)
{
meinStift.runter();
meinStift.schreibeText("Der Schwierigkeitsgrad war Leicht(1x Punkte);");
lms = true;
Punkte*1;
}
if(grad==0.10&&lms==false)
{
meinStift.runter();
meinStift.schreibeText("Der Schwierigkeitsgrad war Mittel(2x Punkte);");
lms = true;
Punkte*2;
}
if(grad==0.20&&lms==false)
{
meinStift.runter();
meinStift.schreibeText("Der Schwierigkeitsgrad war Schwer(3x Punkte);");
lms = true;
Punkte*3;
}
meinStift.hoch();
meinStift.bewegeBis(600,130);
meinStift.runter();
meinStift.schreibeText("Deine Punkzahl beträgt ");
meinStift.schreibeZahl(Punkte);
meinStift.schreibeText(" Punkte!");
meinStift.hoch();
meinStift.bewegeBis(600,140);
meinStift.runter();
meinStift.schreibeText("Es sind 300 möglich!");
}
public void Zielscheibe()
{
meinStift.hoch();
meinStift.bewegeBis(500, 200);
meinStift.runter();
meinStift.setzeFuellmuster(Muster.GEFUELLT);
meinStift.setzeFarbe(Farbe.BLAU);
meinStift.zeichneKreis(40);
meinStift.setzeFarbe(Farbe.ROT);
meinStift.zeichneKreis(30);
meinStift.setzeFarbe(Farbe.GELB);
meinStift.zeichneKreis(20);
meinStift.setzeFarbe(Farbe.GRUEN);
meinStift.zeichneKreis(10);
meinStift.setzeFarbe(Farbe.SCHWARZ);
meinStift.zeichneKreis(2);
meinStift.hoch();
}
public void schwer()
{
grad = 0.20;
}
public void mittel()
{
grad = 0.10;
}
public void leicht()
{
grad = 0.05;
}
public void abbruch()
{
Abbruch = true;
}
public static void main(String [ ]args)
{
TEST t1;
t1 =new TEST();
t1.spiel();
}
}