diff --git a/GalaxyGame-Da-Whole-Thing/Ansicht$1.class b/GalaxyGame-Da-Whole-Thing/Ansicht$1.class new file mode 100644 index 0000000..e6633e4 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Ansicht$1.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Ansicht$1A.class b/GalaxyGame-Da-Whole-Thing/Ansicht$1A.class new file mode 100644 index 0000000..c5c4191 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Ansicht$1A.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Ansicht$2.class b/GalaxyGame-Da-Whole-Thing/Ansicht$2.class new file mode 100644 index 0000000..9c89f8f Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Ansicht$2.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Ansicht.class b/GalaxyGame-Da-Whole-Thing/Ansicht.class new file mode 100644 index 0000000..2f4b67c Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Ansicht.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Ansicht.ctxt b/GalaxyGame-Da-Whole-Thing/Ansicht.ctxt new file mode 100644 index 0000000..a8f2b99 --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Ansicht.ctxt @@ -0,0 +1,35 @@ +#BlueJ class context +comment0.target=Ansicht +comment1.params=q\ g\ ges\ r\ s +comment1.target=Ansicht(Spieler,\ java.util.ArrayList,\ java.util.ArrayList,\ Rettungsschiff,\ int) +comment10.params= +comment10.target=void\ decreaseHealth() +comment11.params= +comment11.target=void\ increaseHealth() +comment12.params=i +comment12.target=void\ setScore(int) +comment13.params=b +comment13.target=void\ setBlackBackground(int) +comment14.params= +comment14.target=void\ setNewGame() +comment15.params=b +comment15.target=void\ setShowWave(boolean) +comment16.params=i +comment16.target=void\ setWaveCounter(int) +comment2.params=datName +comment2.target=java.lang.String\ ladeDatei(java.lang.String) +comment3.params= +comment3.target=java.lang.String\ reade() +comment4.params=g +comment4.target=void\ paint(java.awt.Graphics) +comment5.params=b\ x\ y\ c\ s +comment5.target=void\ setHit(boolean,\ int,\ int,\ int,\ boolean) +comment6.params=h +comment6.target=void\ setbg(int) +comment7.params=s +comment7.target=void\ setStart(int) +comment8.params= +comment8.target=void\ ge\u00E4ndert() +comment9.params= +comment9.target=void\ increaseKills() +numComments=17 diff --git a/GalaxyGame-Da-Whole-Thing/Ansicht.java b/GalaxyGame-Da-Whole-Thing/Ansicht.java new file mode 100644 index 0000000..6ece3dc --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Ansicht.java @@ -0,0 +1,358 @@ +import java.awt.*; +import javax.swing.*; +import java.io.*; +import java.util.*; +import java.io.BufferedReader; +import java.io.File; +import java.io.FileReader; +import java.io.IOException; +public class Ansicht extends javax.swing.JComponent implements Beobachter{ + private Spieler spieler; + private ArrayList gegner; + private ArrayList geschoss; + private ArrayList gegnerImages, geschossImages; + private boolean hit, spielerHit, showWave; + private int xHit, yHit, counter; + private int kills, health; + private int backgroundMoving; + private int blackBackground; + private Rettungsschiff rettungsschiff; + private int timeSOS,start,bg , score; + private int screenHeight, screenWidth; + private int waveCounter; + public Ansicht(Spieler q, ArrayList g, ArrayList ges, Rettungsschiff r,int s){ + rettungsschiff=r; + gegnerImages=new ArrayList(); + geschossImages=new ArrayList(); + Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize(); + screenHeight=(int)screenSize.getHeight(); + screenHeight= (int) (screenHeight*0.92); + spieler=q; + gegner=g; + start=s; + geschoss=ges; + spieler.anmelden(this); + for(Gegner ge: gegner){ + ge.anmelden(this); + } + for(Geschoss gesch: geschoss){ + gesch.anmelden(this); + } + setFocusable(true); + xHit=0; + yHit=0; + kills=0; + health=3; + waveCounter = 1; + } +private static String ladeDatei(String datName) { + String l=null; + File file = new File(datName); + + if (!file.canRead() || !file.isFile()) + System.exit(0); + + BufferedReader in = null; + try { + in = new BufferedReader(new FileReader(datName)); + String zeile = null; + while ((zeile = in.readLine()) != null) { + l=zeile; + } + } catch (IOException e) { + e.printStackTrace(); + } finally { + if (in != null) + try { + in.close(); + } catch (IOException e) { + } + } + return l; + } + + public String reade() { + String dateiName = "test.txt"; + String h=ladeDatei(dateiName); + return h; + } + + + public void paint(Graphics g){ + + Toolkit zeugs=getToolkit(); + if (start==1) + { + Image backgroundIMG=zeugs.getImage("background.png"); + Image backgroundIMG2=zeugs.getImage("background2.png"); + String s; + s="Score:"+score; + + if(backgroundMoving=8){ + Image blackBG=zeugs.getImage("verdunklung1.png"); + g.drawImage(blackBG, 0, 0, screenHeight, screenHeight, this); + g.drawImage(blackBG, 0, 0, screenHeight, screenHeight, this); + g.drawImage(blackBG, 0, 0, screenHeight, screenHeight, this); + g.drawImage(blackBG, 0, 0, screenHeight, screenHeight, this); + g.drawImage(blackBG, 0, 0, screenHeight, screenHeight, this); + g.drawImage(blackBG, 0, 0, screenHeight, screenHeight, this); + g.drawImage(blackBG, 0, 0, screenHeight, screenHeight, this); + g.drawImage(blackBG, 0, 0, screenHeight, screenHeight, this); + } + if(health==3){ + g.drawImage(herz1, (int) (screenHeight/0.902203), (int) (screenHeight/1.163163), this); + g.drawImage(herz2, (int) (screenHeight/0.886580), (int) (screenHeight/1.163163), this); + g.drawImage(herz3, (int) (screenHeight/0.867797), (int) (screenHeight/1.163163), this); + }else if(health==2){ + g.drawImage(herz1, (int) (screenHeight/0.902203), (int) (screenHeight/1.163163), this); + g.drawImage(herz2, (int) (screenHeight/0.886580), (int) (screenHeight/1.163163), this); + }else if(health==1){ + g.drawImage(herz1, (int) (screenHeight/0.902203), (int) (screenHeight/1.163163), this); + }else{ + try{ + Font bigFont=Font.createFont(Font.TRUETYPE_FONT, new FileInputStream("PressStart2P.ttf")); + bigFont=bigFont.deriveFont(85F); + g.setFont(bigFont); + }catch(Exception e){ + e.printStackTrace(); + } + g.drawString("GAME OVER",(int) (screenHeight*0.1), (int) (screenHeight*0.4)); + } + if(showWave == true){ + try{ + Font bigFont=Font.createFont(Font.TRUETYPE_FONT, new FileInputStream("PressStart2P.ttf")); + bigFont=bigFont.deriveFont(85F); + g.setFont(bigFont); + }catch(Exception e){ + e.printStackTrace(); + } + g.drawString("Wave "+waveCounter,(int) (screenHeight *0.3), (int) (screenHeight * 0.4)); + } + } + else if(start==0) + {Image sat=zeugs.getImage("start.png"); + g.drawImage(sat, 0, 0,(int) (screenHeight*1.25), screenHeight, this); + Image sap=zeugs.getImage("spieler.png"); + if (bg==0) + {g.drawImage(sap, (int) (screenHeight*0.2), (int) (screenHeight*0.7), (int) (screenHeight*0.1),(int) (screenHeight*0.1), this);} + else if(bg==1) + {g.drawImage(sap, (int) (screenHeight*0.52),(int) (screenHeight*0.7), (int) (screenHeight*0.1),(int) (screenHeight*0.1), this);} + else{g.drawImage(sap, (int) (screenHeight*0.9), (int) (screenHeight*0.7), (int) (screenHeight*0.1),(int) (screenHeight*0.1), this);} + + } + else if (start==2){ + Image sat=zeugs.getImage("score.png"); + g.drawImage(sat, 0, 0,(int) (screenHeight*1.25), screenHeight, this); + try{ + Font bigFont=Font.createFont(Font.TRUETYPE_FONT, new FileInputStream("JURASSIC.TTF")); + bigFont=bigFont.deriveFont(100F); + g.setFont(bigFont); + }catch(Exception e){ + e.printStackTrace(); + } + g.setColor(Color.RED); + g.drawString(reade(),(int) (screenHeight*0.5), (int) (screenHeight*0.57)); + } + else{ + Image sat=zeugs.getImage("Manual.png"); + g.drawImage(sat, 0, 0,(int) (screenHeight*1.25), screenHeight, this); + } + + } + + public void setHit(boolean b, int x, int y, int c, boolean s){ + hit=b; + xHit=x; + yHit=y; + counter=c; + spielerHit=s; + } + + public void setbg(int h){ + bg=h; + } + + public void setStart(int s){ + start=s; + } + + public void geändert(){ + repaint(); + } + + public void increaseKills(){ + kills++; + } + + public void decreaseHealth(){ + health--; + } + + public void increaseHealth(){ + if(health<3){ health++;} + } + public void setScore(int i) + {score=i;} + public void setBlackBackground(int b){ + blackBackground=b; + } + + public void setNewGame(){ + health=3; + blackBackground=0; + kills=0; + spieler.setX(512); + } + + public void setShowWave(boolean b){ + showWave = b; + } + + public void setWaveCounter(int i){ + waveCounter = i; + } +} \ No newline at end of file diff --git a/GalaxyGame-Da-Whole-Thing/Beobachter.class b/GalaxyGame-Da-Whole-Thing/Beobachter.class new file mode 100644 index 0000000..7f29071 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Beobachter.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Beobachter.ctxt b/GalaxyGame-Da-Whole-Thing/Beobachter.ctxt new file mode 100644 index 0000000..9380cf5 --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Beobachter.ctxt @@ -0,0 +1,5 @@ +#BlueJ class context +comment0.target=Beobachter +comment1.params= +comment1.target=void\ ge\u00E4ndert() +numComments=2 diff --git a/GalaxyGame-Da-Whole-Thing/Beobachter.java b/GalaxyGame-Da-Whole-Thing/Beobachter.java new file mode 100644 index 0000000..1dbd8f6 --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Beobachter.java @@ -0,0 +1,3 @@ +public interface Beobachter{ + void geändert(); +} \ No newline at end of file diff --git a/GalaxyGame-Da-Whole-Thing/Blaues_Geschoss.png b/GalaxyGame-Da-Whole-Thing/Blaues_Geschoss.png new file mode 100644 index 0000000..5dc8cb9 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Blaues_Geschoss.png differ diff --git a/GalaxyGame-Da-Whole-Thing/Gegner.class b/GalaxyGame-Da-Whole-Thing/Gegner.class new file mode 100644 index 0000000..2a0f33f Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Gegner.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Gegner.ctxt b/GalaxyGame-Da-Whole-Thing/Gegner.ctxt new file mode 100644 index 0000000..911dfef --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Gegner.ctxt @@ -0,0 +1,25 @@ +#BlueJ class context +comment0.target=Gegner +comment1.params= +comment1.target=int\ getSpeedX() +comment10.params= +comment10.target=void\ stopMove() +comment11.params= +comment11.target=int\ getLength() +comment2.params= +comment2.target=int\ getSpeedY() +comment3.params= +comment3.target=int\ getX() +comment4.params= +comment4.target=int\ getY() +comment5.params=b +comment5.target=void\ anmelden(Beobachter) +comment6.params= +comment6.target=int\ getKey() +comment7.params= +comment7.target=boolean\ getShoot() +comment8.params=b +comment8.target=void\ setShoot(boolean) +comment9.params= +comment9.target=void\ move() +numComments=12 diff --git a/GalaxyGame-Da-Whole-Thing/Gegner.java b/GalaxyGame-Da-Whole-Thing/Gegner.java new file mode 100644 index 0000000..7401f68 --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Gegner.java @@ -0,0 +1,25 @@ +public interface Gegner { + //gibt Geschwindigkeit des Gegners zurück + int getSpeedX(); + int getSpeedY(); + //gibt die xPosition des Gegners zurück + int getX(); + //gibt die yPosition des Gegners zurück + int getY(); + //meldet den Beobachter an + void anmelden(Beobachter b); + //legt die Position des Gegners fest + + //gibt den Identifizierungswert zurück (welche Art des Gegners dieser ist) + int getKey(); + //gibt den boolean zurück, der bestimmt, ob der Gegner schießen soll + boolean getShoot(); + //stoppt jegliche Bewegung des Gegners + + void setShoot(boolean b); + + void move(); + + void stopMove(); + int getLength(); +} \ No newline at end of file diff --git a/GalaxyGame-Da-Whole-Thing/Gegner1$1.class b/GalaxyGame-Da-Whole-Thing/Gegner1$1.class new file mode 100644 index 0000000..01674a7 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Gegner1$1.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Gegner1.class b/GalaxyGame-Da-Whole-Thing/Gegner1.class new file mode 100644 index 0000000..d0aa3d7 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Gegner1.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Gegner1.ctxt b/GalaxyGame-Da-Whole-Thing/Gegner1.ctxt new file mode 100644 index 0000000..5082206 --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Gegner1.ctxt @@ -0,0 +1,35 @@ +#BlueJ class context +comment0.target=Gegner1 +comment1.params=x\ y +comment1.target=Gegner1(int,\ int) +comment10.params= +comment10.target=void\ tryShoot() +comment11.params=b +comment11.target=void\ setShoot(boolean) +comment12.params= +comment12.target=int\ getKey() +comment13.params= +comment13.target=boolean\ getShoot() +comment14.params= +comment14.target=void\ alleInformieren() +comment15.params= +comment15.target=void\ move() +comment16.params= +comment16.target=void\ stopMove() +comment2.params= +comment2.target=int\ getLength() +comment3.params=b +comment3.target=void\ anmelden(Beobachter) +comment4.params= +comment4.target=int\ getSpeedX() +comment5.params= +comment5.target=int\ getSpeedY() +comment6.params= +comment6.target=int\ getX() +comment7.params= +comment7.target=int\ getY() +comment8.params= +comment8.target=int\ getYPosition() +comment9.params= +comment9.target=void\ setPosition() +numComments=17 diff --git a/GalaxyGame-Da-Whole-Thing/Gegner1.java b/GalaxyGame-Da-Whole-Thing/Gegner1.java new file mode 100644 index 0000000..28dab7d --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Gegner1.java @@ -0,0 +1,113 @@ +import java.util.*; +import java.util.concurrent.ThreadLocalRandom; +public class Gegner1 implements Gegner{ + private int speedX, speedY, xValue, yValue, length; + private ArrayList beobachter; + private int key; + private boolean shoot; + private int xRichtung, yRichtung, shot; + public Gegner1(int x, int y) { + speedX=5; + speedY=5; + xValue=x; + yValue=y; + length=64; + beobachter=new ArrayList(); + key=0; + } +public int getLength() +{int a=0; +return a;}// random shit + public void anmelden(Beobachter b){ + beobachter.add(b); + } + + public int getSpeedX(){ + return speedX; + } + + public int getSpeedY(){ + return speedY; + } + + public int getX(){ + return xValue; + } + + public int getY(){ + return yValue; + } + + public int getYPosition(){ + return yValue; + } + + //bestimmt in einem gewissen Rahmen zufällig die Bewegung des Gegners bzw. ob er schießen soll + //wird von move() siehe unten aufgerufen + // + public void setPosition(){ + //bestimmt, ob Gegner nach links oder rechts fliegt + xRichtung=ThreadLocalRandom.current().nextInt(0, 2); + yRichtung=ThreadLocalRandom.current().nextInt(0, 2); + speedX=ThreadLocalRandom.current().nextInt(3, 7); + speedY=ThreadLocalRandom.current().nextInt(3, 7); + //Variable shot=int + shot=ThreadLocalRandom.current().nextInt(0, 8); + + if(xRichtung==0){ + //wenn xRichtung==0, wird xGeschwindigkeit negativ -> Gegner fliegt nach links + speedX=-speedX; + if(yRichtung==0){ + //analog bei y + speedY=-speedY; + } + }else if(xRichtung==1){ + if(yRichtung==0){ + speedY=-speedY; + } + } + } + + public void tryShoot(){ + shot=ThreadLocalRandom.current().nextInt(0, 20); + /*wenn shot==0 wird geschossen -> oben bei der Generierung des Wertes für shot (siehe setPositon() Kommentare) + wird Wahrscheinlichkeit des Schusses festgelegt ->(hier 1/8) + */ + if(shot==0){ + shoot=true; + } + } + + public void setShoot(boolean b){ + shoot=b; + } + + public int getKey(){ + return key; + } + + public boolean getShoot(){ + return shoot; + } + + public void alleInformieren() { + for(Beobachter b: beobachter){ + b.geändert(); + } + } + //move() wird von Haupt-Timer in der Klasse Steuerung aufgerufen und setzt die Bewegung des Gegners neu, wenn er an den Spielfeldrand kommt + public void move(){ + //der if-Zweig sorgt dafür, dass kein Gegner sich außerhalb des Spielfeldrandes bewegt + if((xValue<32 && speedX<0)|| (xValue>950 && speedX>0) || (yValue<40 && speedY<0) || (yValue>850 && speedY>0)){ + setPosition(); + }else{ + xValue=xValue+speedX; + yValue=yValue+speedY; + } + } + + public void stopMove(){ + speedX=0; + speedY=0; + } +} \ No newline at end of file diff --git a/GalaxyGame-Da-Whole-Thing/Gegner2.class b/GalaxyGame-Da-Whole-Thing/Gegner2.class new file mode 100644 index 0000000..6806e80 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Gegner2.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Gegner2.ctxt b/GalaxyGame-Da-Whole-Thing/Gegner2.ctxt new file mode 100644 index 0000000..1c07285 --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Gegner2.ctxt @@ -0,0 +1,29 @@ +#BlueJ class context +comment0.target=Gegner2 +comment1.params=x\ y\ bf\ mf\ l +comment1.target=Gegner2(int,\ int,\ int,\ int,\ int) +comment10.params= +comment10.target=int\ getKey() +comment11.params= +comment11.target=int\ getLength() +comment12.params= +comment12.target=void\ stopMove() +comment13.params= +comment13.target=void\ move() +comment2.params=b +comment2.target=void\ anmelden(Beobachter) +comment3.params= +comment3.target=int\ getSpeedX() +comment4.params= +comment4.target=int\ getSpeedY() +comment5.params= +comment5.target=int\ getX() +comment6.params= +comment6.target=int\ getY() +comment7.params=b +comment7.target=void\ setShoot(boolean) +comment8.params= +comment8.target=boolean\ getShoot() +comment9.params= +comment9.target=void\ alleInformieren() +numComments=14 diff --git a/GalaxyGame-Da-Whole-Thing/Gegner2.java b/GalaxyGame-Da-Whole-Thing/Gegner2.java new file mode 100644 index 0000000..618f8c3 --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Gegner2.java @@ -0,0 +1,113 @@ +import java.util.*; +import java.awt.*; +public class Gegner2 implements Gegner{ + + private int speedX, speedY, posX, posY, length, bulletFreq, maxCount, mCounter, bCounter, state; + private ArrayList beobachter; + private int key; + private boolean shoot; + private Random rand; + private int screenHeight; + public Gegner2(int x, int y, int bf, int mf, int l) { + rand = new Random(); + shoot = false; + posX = x; + posY = y; + length = l; + screenHeight= (int) Toolkit.getDefaultToolkit().getScreenSize().getHeight(); + speedX = 0; + speedY =(int) (screenHeight/204.8); + if(mf != 0){maxCount = mf;} + else{maxCount = rand.nextInt(150) + 50;} + mCounter = maxCount; + state = 1; + if(bf != 0){bulletFreq = bf;} + else{bulletFreq = rand.nextInt(285) + 16;} + bCounter = bulletFreq; + key = 1; + } + + public void anmelden(Beobachter b){ + beobachter.add(b); + } + + public int getSpeedX(){ + return speedX; + } + + public int getSpeedY(){ + return speedY; + } + + public int getX(){ + return posX; + } + + public int getY(){ + return posY; + } + + public void setShoot(boolean b){ + shoot=b; + } + + public boolean getShoot(){ + return shoot; + } + + public void alleInformieren() { + for(Beobachter b: beobachter){ + b.geändert(); + } + } + + public int getKey(){ + return key; + } + + public int getLength(){ + return length; + } + + public void stopMove(){ + speedY = 0; + speedX = 0; + } + + public void move(){ + if(bCounter == 0){setShoot(true); + bCounter = bulletFreq;} + else{bCounter--;} + if(mCounter == 0){ + mCounter = maxCount; + if(state == 0){ + state = 1; + speedX = 5; + speedY = 0; + } + else if(state == 1){ + state = 2; + speedX = 0; + speedY = (int) (screenHeight/204.8); + } + else if(state == 2){ + state = 3; + speedX = -5; + speedY = 0; + } + else{ + state = 0; + speedX = 0; + speedY = (int) (screenHeight/204.8); + } + } + else{ + posX = posX + speedX; + if(posX < 0){posX = 1024 + posX;} + if(posX > 1024){posX = posX - 1024;} + posY = posY + speedY; + if(posY > 1024){posY = -64;} + mCounter--; + } + } +} \ No newline at end of file diff --git a/GalaxyGame-Da-Whole-Thing/Gegner3.class b/GalaxyGame-Da-Whole-Thing/Gegner3.class new file mode 100644 index 0000000..ec78ce9 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Gegner3.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Gegner3.ctxt b/GalaxyGame-Da-Whole-Thing/Gegner3.ctxt new file mode 100644 index 0000000..19bbb19 --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Gegner3.ctxt @@ -0,0 +1,29 @@ +#BlueJ class context +comment0.target=Gegner3 +comment1.params=x\ y\ bf\ mf\ l +comment1.target=Gegner3(int,\ int,\ int,\ int,\ int) +comment10.params= +comment10.target=int\ getKey() +comment11.params= +comment11.target=int\ getLength() +comment12.params= +comment12.target=void\ stopMove() +comment13.params= +comment13.target=void\ move() +comment2.params=b +comment2.target=void\ anmelden(Beobachter) +comment3.params= +comment3.target=int\ getSpeedX() +comment4.params= +comment4.target=int\ getSpeedY() +comment5.params= +comment5.target=int\ getX() +comment6.params= +comment6.target=int\ getY() +comment7.params=b +comment7.target=void\ setShoot(boolean) +comment8.params= +comment8.target=boolean\ getShoot() +comment9.params= +comment9.target=void\ alleInformieren() +numComments=14 diff --git a/GalaxyGame-Da-Whole-Thing/Gegner3.java b/GalaxyGame-Da-Whole-Thing/Gegner3.java new file mode 100644 index 0000000..5dd60f0 --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Gegner3.java @@ -0,0 +1,113 @@ +import java.util.*; +import java.awt.*; +public class Gegner3 implements Gegner{ + + private int speedX, speedY, posX, posY, length, bulletFreq, maxCount, mCounter, bCounter, state; + private ArrayList beobachter; + private int key; + private boolean shoot; + private Random rand; + private int screenHeight; + public Gegner3(int x, int y, int bf, int mf, int l) { + rand = new Random(); + shoot = false; + posX = x; + posY = y; + length = l; + screenHeight= (int) Toolkit.getDefaultToolkit().getScreenSize().getHeight(); + speedX = 0; + speedY =(int) (screenHeight/204.8); + if(mf != 0){maxCount = mf;} + else{maxCount = rand.nextInt(150) + 50;} + mCounter = maxCount; + state = 1; + if(bf != 0){bulletFreq = bf;} + else{bulletFreq = rand.nextInt(285) + 16;} + bCounter = bulletFreq; + key = 2; + } + + public void anmelden(Beobachter b){ + beobachter.add(b); + } + + public int getSpeedX(){ + return speedX; + } + + public int getSpeedY(){ + return speedY; + } + + public int getX(){ + return posX; + } + + public int getY(){ + return posY; + } + + public void setShoot(boolean b){ + shoot=b; + } + + public boolean getShoot(){ + return shoot; + } + + public void alleInformieren() { + for(Beobachter b: beobachter){ + b.geändert(); + } + } + + public int getKey(){ + return key; + } + + public int getLength(){ + return length; + } + + public void stopMove(){ + speedY = 0; + speedX = 0; + } + + public void move(){ + if(bCounter == 0){setShoot(true); + bCounter = bulletFreq;} + else{bCounter--;} + if(mCounter == 0){ + mCounter = maxCount; + if(state == 0){ + state = 1; + speedX = 15; + speedY = 0; + } + else if(state == 1){ + state = 2; + speedX = 0; + speedY = (int) (screenHeight/204.8); + } + else if(state == 2){ + state = 3; + speedX = -15; + speedY = 0; + } + else{ + state = 0; + speedX = 0; + speedY = (int) (screenHeight/204.8); + } + } + else{ + posX = posX + speedX; + if(posX < 0){posX = 1024 + posX;} + if(posX > 1024){posX = posX - 1024;} + posY = posY + speedY; + if(posY > 1024){posY = -64;} + mCounter--; + } + } +} \ No newline at end of file diff --git a/GalaxyGame-Da-Whole-Thing/Gegner3.png b/GalaxyGame-Da-Whole-Thing/Gegner3.png new file mode 100644 index 0000000..fc71557 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Gegner3.png differ diff --git a/GalaxyGame-Da-Whole-Thing/Gegner_Gruen.png b/GalaxyGame-Da-Whole-Thing/Gegner_Gruen.png new file mode 100644 index 0000000..f9abfa0 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Gegner_Gruen.png differ diff --git "a/GalaxyGame-Da-Whole-Thing/Gegner_Gr\303\274n.png" "b/GalaxyGame-Da-Whole-Thing/Gegner_Gr\303\274n.png" new file mode 100644 index 0000000..f9abfa0 Binary files /dev/null and "b/GalaxyGame-Da-Whole-Thing/Gegner_Gr\303\274n.png" differ diff --git a/GalaxyGame-Da-Whole-Thing/Gegner_Rot.png b/GalaxyGame-Da-Whole-Thing/Gegner_Rot.png new file mode 100644 index 0000000..3570683 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Gegner_Rot.png differ diff --git a/GalaxyGame-Da-Whole-Thing/Geschoss.class b/GalaxyGame-Da-Whole-Thing/Geschoss.class new file mode 100644 index 0000000..557842b Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Geschoss.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Geschoss.ctxt b/GalaxyGame-Da-Whole-Thing/Geschoss.ctxt new file mode 100644 index 0000000..6f13a96 --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Geschoss.ctxt @@ -0,0 +1,29 @@ +#BlueJ class context +comment0.target=Geschoss +comment1.params=x\ y\ s\ k +comment1.target=Geschoss(int,\ int,\ int,\ int) +comment10.params= +comment10.target=void\ move() +comment11.params= +comment11.target=int\ getKey() +comment12.params=b +comment12.target=void\ anmelden(Beobachter) +comment13.params= +comment13.target=void\ alleInformieren() +comment2.params= +comment2.target=int\ getX() +comment3.params= +comment3.target=int\ getY() +comment4.params=x +comment4.target=void\ setX(int) +comment5.params=y +comment5.target=void\ setY(int) +comment6.params= +comment6.target=int\ getSizeX() +comment7.params= +comment7.target=int\ getSizeY() +comment8.params= +comment8.target=int\ getSpeed() +comment9.params=s +comment9.target=void\ setSpeed(int) +numComments=14 diff --git a/GalaxyGame-Da-Whole-Thing/Geschoss.java b/GalaxyGame-Da-Whole-Thing/Geschoss.java new file mode 100644 index 0000000..83f1201 --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Geschoss.java @@ -0,0 +1,69 @@ +import java.util.ArrayList; +public class Geschoss{ + private int PosX; + private int PosY; + private int SizeX; + private int SizeY; + private int Speed; + private int key; + private ArrayList beobachter; + public Geschoss(int x, int y, int s, int k){ + PosX = x; + PosY = y; + SizeX = 4; + SizeY = 12; + Speed = s; + key=k; + beobachter=new ArrayList(); + } + + public int getX(){ + return PosX; + } + + public int getY(){ + return PosY; + } + + public void setX(int x){ + PosX=x; + } + + public void setY(int y){ + PosY=y; + } + + public int getSizeX(){ + return SizeX; + } + + public int getSizeY(){ + return SizeY; + } + + public int getSpeed(){ + return Speed; + } + + public void setSpeed(int s){ + Speed = s; + } + + public void move(){ //Bewegt das Geschoss in Y Richtung + PosY = PosY - Speed; + } + + public int getKey(){ + return key; + } + + public void anmelden(Beobachter b){ + beobachter.add(b); + } + + public void alleInformieren(){ + for(Beobachter b: beobachter){ + b.geändert(); + } + } +} \ No newline at end of file diff --git a/GalaxyGame-Da-Whole-Thing/Geschoss_Gegner.png b/GalaxyGame-Da-Whole-Thing/Geschoss_Gegner.png new file mode 100644 index 0000000..f42e8c7 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Geschoss_Gegner.png differ diff --git "a/GalaxyGame-Da-Whole-Thing/Gr\303\274nes_Geschoss.png" "b/GalaxyGame-Da-Whole-Thing/Gr\303\274nes_Geschoss.png" new file mode 100644 index 0000000..5e7ecf7 Binary files /dev/null and "b/GalaxyGame-Da-Whole-Thing/Gr\303\274nes_Geschoss.png" differ diff --git a/GalaxyGame-Da-Whole-Thing/JURASSIC.TTF b/GalaxyGame-Da-Whole-Thing/JURASSIC.TTF new file mode 100644 index 0000000..2591a64 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/JURASSIC.TTF differ diff --git a/GalaxyGame-Da-Whole-Thing/Manual.png b/GalaxyGame-Da-Whole-Thing/Manual.png new file mode 100644 index 0000000..26ab45f Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Manual.png differ diff --git a/GalaxyGame-Da-Whole-Thing/PressStart2P.ttf b/GalaxyGame-Da-Whole-Thing/PressStart2P.ttf new file mode 100644 index 0000000..98044e9 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/PressStart2P.ttf differ diff --git a/GalaxyGame-Da-Whole-Thing/README.TXT b/GalaxyGame-Da-Whole-Thing/README.TXT new file mode 100644 index 0000000..2bea2dd --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/README.TXT @@ -0,0 +1,12 @@ +------------------------------------------------------------------------ +This is the project README file. Here, you should describe your project. +Tell the reader (someone who does not know anything about this project) +all he/she needs to know. The comments should usually include at least: +------------------------------------------------------------------------ + +PROJECT TITLE: +PURPOSE OF PROJECT: +VERSION or DATE: +HOW TO START THIS PROJECT: +AUTHORS: +USER INSTRUCTIONS: diff --git a/GalaxyGame-Da-Whole-Thing/README.md b/GalaxyGame-Da-Whole-Thing/README.md new file mode 100644 index 0000000..3493535 --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/README.md @@ -0,0 +1 @@ +# GalaxyGame \ No newline at end of file diff --git a/GalaxyGame-Da-Whole-Thing/Rettungsschiff.class b/GalaxyGame-Da-Whole-Thing/Rettungsschiff.class new file mode 100644 index 0000000..f0702ed Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Rettungsschiff.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Rettungsschiff.ctxt b/GalaxyGame-Da-Whole-Thing/Rettungsschiff.ctxt new file mode 100644 index 0000000..06408ba --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Rettungsschiff.ctxt @@ -0,0 +1,29 @@ +#BlueJ class context +comment0.target=Rettungsschiff +comment1.params=x\ y\ bf\ mf\ l +comment1.target=Rettungsschiff(int,\ int,\ int,\ int,\ int) +comment10.params= +comment10.target=void\ stopMove() +comment11.params= +comment11.target=void\ move() +comment12.params=x +comment12.target=void\ setX(int) +comment13.params=y +comment13.target=void\ setY(int) +comment2.params= +comment2.target=int\ getLength() +comment3.params=b +comment3.target=void\ anmelden(Beobachter) +comment4.params= +comment4.target=int\ getSpeedX() +comment5.params= +comment5.target=int\ getSpeedY() +comment6.params= +comment6.target=int\ getX() +comment7.params= +comment7.target=int\ getY() +comment8.params= +comment8.target=void\ alleInformieren() +comment9.params= +comment9.target=int\ getKey() +numComments=14 diff --git a/GalaxyGame-Da-Whole-Thing/Rettungsschiff.java b/GalaxyGame-Da-Whole-Thing/Rettungsschiff.java new file mode 100644 index 0000000..9614684 --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Rettungsschiff.java @@ -0,0 +1,97 @@ + +import java.util.*; + +public class Rettungsschiff{ + private int speedX, speedY, posX, posY, length, bulletFreq, maxCount, mCounter, bCounter, state; + private ArrayList beobachter; + private int key; + private boolean shoot; + private Random rand; + + public Rettungsschiff(int x, int y, int bf, int mf, int l) { + rand = new Random(); + shoot = false; + posX = x; + posY = y; + speedX = 0; + speedY = 5; + if(mf != 0){maxCount = mf;} + else{maxCount = rand.nextInt(250) + 50;} + mCounter = maxCount; + state = 1; + if(bf != 0){bulletFreq = bf;} + else{bulletFreq = rand.nextInt(285) + 16;} + bCounter = bulletFreq; + key = 0; + length=l; + } + + public int getLength(){ + return length; + } + + public void anmelden(Beobachter b){ + beobachter.add(b); + } + + public int getSpeedX(){ + return speedX; + } + + public int getSpeedY(){ + return speedY; + } + + public int getX(){ + return posX; + } + + public int getY(){ + return posY; + } + + + public void alleInformieren() { + for(Beobachter b: beobachter){ + b.geändert(); + } + } + + public int getKey(){ + return key; + } + + public void stopMove(){ + speedY = 0; + speedX = 0; + } + + public void move(){ + + if(mCounter == 0){ + state = 1; + speedX = 1; + speedY =2; + mCounter=250; + } + else{ + posX = posX + speedX; + if(posX < 0){posX = 1024 + posX;} + if(posX > 1024){posX = posX - 1024;} + posY = posY + speedY; + if(posY > 1024){posY = -64;} + mCounter--; + + } + } + public void setX(int x) + { + posX=x; + + } + public void setY(int y) + { + posY=y; + + } +} \ No newline at end of file diff --git a/GalaxyGame-Da-Whole-Thing/Rotes_Geschoss.png b/GalaxyGame-Da-Whole-Thing/Rotes_Geschoss.png new file mode 100644 index 0000000..a83b56e Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Rotes_Geschoss.png differ diff --git a/GalaxyGame-Da-Whole-Thing/Sos-Schiff.png b/GalaxyGame-Da-Whole-Thing/Sos-Schiff.png new file mode 100644 index 0000000..ef332ed Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Sos-Schiff.png differ diff --git a/GalaxyGame-Da-Whole-Thing/Sos-Schiff2.png b/GalaxyGame-Da-Whole-Thing/Sos-Schiff2.png new file mode 100644 index 0000000..90a5087 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Sos-Schiff2.png differ diff --git a/GalaxyGame-Da-Whole-Thing/SpaceGame.jar b/GalaxyGame-Da-Whole-Thing/SpaceGame.jar new file mode 100644 index 0000000..bdc5a74 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/SpaceGame.jar differ diff --git a/GalaxyGame-Da-Whole-Thing/Spieler.class b/GalaxyGame-Da-Whole-Thing/Spieler.class new file mode 100644 index 0000000..e172b7c Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Spieler.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Spieler.ctxt b/GalaxyGame-Da-Whole-Thing/Spieler.ctxt new file mode 100644 index 0000000..24b9971 --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Spieler.ctxt @@ -0,0 +1,27 @@ +#BlueJ class context +comment0.target=Spieler +comment1.params=schnell\ l\ z +comment1.target=Spieler(int,\ int,\ int) +comment10.params= +comment10.target=int\ getSpeed() +comment11.params=s +comment11.target=void\ setSpeed(int) +comment12.params= +comment12.target=void\ stopMove() +comment2.params=b +comment2.target=void\ anmelden(Beobachter) +comment3.params= +comment3.target=void\ goRight() +comment4.params= +comment4.target=void\ goLeft() +comment5.params= +comment5.target=void\ alleInformieren() +comment6.params= +comment6.target=int\ getY() +comment7.params= +comment7.target=int\ getX() +comment8.params= +comment8.target=int\ getLength() +comment9.params=h +comment9.target=void\ setX(int) +numComments=13 diff --git a/GalaxyGame-Da-Whole-Thing/Spieler.java b/GalaxyGame-Da-Whole-Thing/Spieler.java new file mode 100644 index 0000000..1ba4450 --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Spieler.java @@ -0,0 +1,64 @@ +import java.util.*; + +public class Spieler { + private ArrayList beobachter; + private int x; + private int y; + private int length; + private int speed; + private int screenHeight; + + public Spieler(int schnell, int l,int z) { + beobachter=new ArrayList(); + screenHeight=z; + y=(int)(z*0.85); + x=(int)(z*0.85); + length=l; + speed=schnell; + + } + + public void anmelden(Beobachter b) { + beobachter.add(b); + } + + public void goRight() + {if(x<(int)(screenHeight*0.937)){x=x+speed;}} + + public void goLeft() + {if(x>(int)(screenHeight*0.01)) + {x=x-speed;} + } + + public void alleInformieren() { + for(Beobachter b: beobachter){ + b.geändert(); + } + } + + public int getY() + { + return y; + } + + public int getX() + { return x; + } + + public int getLength() + {return length;} + + public void setX(int h) + {x=h;} + + public int getSpeed() + { return speed;} + + public void setSpeed(int s) + {speed=s;} + + public void stopMove(){ + speed=0; + } + +} \ No newline at end of file diff --git a/GalaxyGame-Da-Whole-Thing/Start.png b/GalaxyGame-Da-Whole-Thing/Start.png new file mode 100644 index 0000000..79c5fc3 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Start.png differ diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung$1$1.class b/GalaxyGame-Da-Whole-Thing/Steuerung$1$1.class new file mode 100644 index 0000000..6e399f9 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Steuerung$1$1.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung$1.class b/GalaxyGame-Da-Whole-Thing/Steuerung$1.class new file mode 100644 index 0000000..815bf54 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Steuerung$1.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung$10.class b/GalaxyGame-Da-Whole-Thing/Steuerung$10.class new file mode 100644 index 0000000..378caeb Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Steuerung$10.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung$11.class b/GalaxyGame-Da-Whole-Thing/Steuerung$11.class new file mode 100644 index 0000000..ee6d918 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Steuerung$11.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung$12.class b/GalaxyGame-Da-Whole-Thing/Steuerung$12.class new file mode 100644 index 0000000..a39df14 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Steuerung$12.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung$13.class b/GalaxyGame-Da-Whole-Thing/Steuerung$13.class new file mode 100644 index 0000000..605eb6a Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Steuerung$13.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung$2$1.class b/GalaxyGame-Da-Whole-Thing/Steuerung$2$1.class new file mode 100644 index 0000000..a62deed Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Steuerung$2$1.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung$2.class b/GalaxyGame-Da-Whole-Thing/Steuerung$2.class new file mode 100644 index 0000000..3b564c2 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Steuerung$2.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung$3.class b/GalaxyGame-Da-Whole-Thing/Steuerung$3.class new file mode 100644 index 0000000..3fd1a03 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Steuerung$3.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung$4.class b/GalaxyGame-Da-Whole-Thing/Steuerung$4.class new file mode 100644 index 0000000..34d24d5 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Steuerung$4.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung$5.class b/GalaxyGame-Da-Whole-Thing/Steuerung$5.class new file mode 100644 index 0000000..fd5f69b Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Steuerung$5.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung$6.class b/GalaxyGame-Da-Whole-Thing/Steuerung$6.class new file mode 100644 index 0000000..db7f04f Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Steuerung$6.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung$7.class b/GalaxyGame-Da-Whole-Thing/Steuerung$7.class new file mode 100644 index 0000000..4c3e191 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Steuerung$7.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung$8.class b/GalaxyGame-Da-Whole-Thing/Steuerung$8.class new file mode 100644 index 0000000..f731d98 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Steuerung$8.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung$9.class b/GalaxyGame-Da-Whole-Thing/Steuerung$9.class new file mode 100644 index 0000000..fb1d675 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Steuerung$9.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung$Action.class b/GalaxyGame-Da-Whole-Thing/Steuerung$Action.class new file mode 100644 index 0000000..9afa740 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Steuerung$Action.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung.class b/GalaxyGame-Da-Whole-Thing/Steuerung.class new file mode 100644 index 0000000..cabdd8b Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/Steuerung.class differ diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung.ctxt b/GalaxyGame-Da-Whole-Thing/Steuerung.ctxt new file mode 100644 index 0000000..4abd30f --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Steuerung.ctxt @@ -0,0 +1,55 @@ +#BlueJ class context +comment0.target=Steuerung +comment1.params= +comment1.target=Steuerung() +comment10.params=e +comment10.target=void\ keyTyped(java.awt.event.KeyEvent) +comment11.params= +comment11.target=void\ detectHitbox() +comment12.params= +comment12.target=void\ run() +comment13.params= +comment13.target=void\ run() +comment14.params= +comment14.target=void\ run() +comment15.params= +comment15.target=void\ run() +comment16.params= +comment16.target=void\ run() +comment17.params= +comment17.target=void\ run() +comment18.params= +comment18.target=void\ run() +comment19.params= +comment19.target=void\ run() +comment2.params= +comment2.target=void\ run() +comment20.params= +comment20.target=void\ run() +comment21.params= +comment21.target=void\ run() +comment22.params= +comment22.target=void\ setGegnerSpawn() +comment23.params= +comment23.target=void\ run() +comment24.params=ge +comment24.target=void\ shoot(Gegner) +comment25.params=url +comment25.target=void\ playSound(java.lang.String) +comment26.params= +comment26.target=void\ run() +comment3.params=args +comment3.target=void\ main(java.lang.String[]) +comment4.params=g +comment4.target=void\ addGegner(Gegner) +comment5.params=z +comment5.target=void\ storage(java.lang.String) +comment6.params=datName +comment6.target=java.lang.String\ ladeDatei(java.lang.String) +comment7.params= +comment7.target=java.lang.String\ reade() +comment8.params=e +comment8.target=void\ keyReleased(java.awt.event.KeyEvent) +comment9.params=e +comment9.target=void\ keyPressed(java.awt.event.KeyEvent) +numComments=27 diff --git a/GalaxyGame-Da-Whole-Thing/Steuerung.java b/GalaxyGame-Da-Whole-Thing/Steuerung.java new file mode 100644 index 0000000..4700e8a --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/Steuerung.java @@ -0,0 +1,503 @@ +import java.awt.event.*; +import javax.swing.*; +import java.awt.*; +import java.util.Timer; +import java.util.TimerTask; +import java.util.concurrent.ThreadLocalRandom; +import java.util.*; +import java.io.*; +import java.io.BufferedReader; +import java.io.File; +import java.io.FileReader; +import java.io.IOException; + +import javax.sound.sampled.*; +import java.io.BufferedWriter; +import java.io.FileWriter; +import java.io.IOException; +import java.io.PrintWriter; +public class Steuerung implements KeyListener{ + private ArrayList gegner; + private ArrayList geschoss; + private Spieler spieler; + private JFrame fenster; + private Ansicht ansicht; + private Timer timer; + + private boolean leftPressed, rightPressed, hit; + private int hitsSpieler; + private int periodeGegnerSpawn, currentTime; + private Button newGame; + private Action actionlistener; + private final int timeStart; + private int gegnerNumber, ShouldBossSpawn ; + private int waveCounter; + private boolean shouldGegnerSpawn; + private int maxGegner, start, bg,score; + private Rettungsschiff sos; + private int screenHeight, screenWidth; + public Steuerung(){ + + gegner=new ArrayList(); + geschoss=new ArrayList(); + Dimension screenSize=Toolkit.getDefaultToolkit().getScreenSize(); + screenHeight=(int)screenSize.getHeight(); + screenHeight= (int) (screenHeight*0.92); + screenWidth=(int)screenSize.getWidth(); + sos=new Rettungsschiff(0,0,30,45,(int) (screenHeight*0.0625)); + spieler=new Spieler(5, (int) (screenHeight*0.0625),screenHeight); + start=0; + ansicht=new Ansicht(spieler, gegner, geschoss, sos,start); + fenster=new JFrame(); + Image img=Toolkit.getDefaultToolkit().createImage("icon.png"); + fenster.setIconImage(img); + fenster=new JFrame(); + Toolkit tool=ansicht.getToolkit(); + fenster.setSize((int)(screenHeight*1.25), screenHeight); + fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + fenster.setVisible(true); + fenster.add(ansicht); + newGame=new Button("Neues Spiel"); + newGame.setBounds(412, 462, 200, 100); + actionlistener=new Action(); + newGame.addActionListener(actionlistener); + timeStart=(int) System.currentTimeMillis(); + maxGegner = 10; + shouldGegnerSpawn = true; + waveCounter = 1; + ShouldBossSpawn = 10; + try{ + Font font=Font.createFont(Font.TRUETYPE_FONT, new FileInputStream("starvader.ttf")); + font=font.deriveFont(30F); + newGame.setFont(font); + newGame.setForeground(Color.WHITE); + newGame.setBackground(Color.RED); + }catch(Exception e){ + e.printStackTrace(); + } + + fenster.addKeyListener(this); + fenster.requestFocus(); + ansicht.repaint(); + timer=new Timer(); + timer.schedule(new TimerTask(){ + public void run(){ + if (start==1){ + for(Gegner ge: gegner){ + ge.move(); + if(ge.getShoot()){ + shoot(ge); + } + + } + for(int i=0;i0) + {bg--;}; + }else if(e.getKeyCode()==KeyEvent.VK_RIGHT){ + if(bg<2) + {bg++;}; + }else if(e.getKeyCode()==KeyEvent.VK_ENTER){ + if(bg==1){ + start=1; + ansicht.setStart(1); + setGegnerSpawn(); + } + else if(bg==0) + {ansicht.setStart(2); + start=2; + } + else if(bg==2) + {ansicht.setStart(3); + start=3; + } + } + ansicht.setbg(bg); + ansicht.repaint(); + }else{ + if(e.getKeyCode()==KeyEvent.VK_ENTER){ + ansicht.setStart(0);} + start=0; + + ansicht.repaint(); + } + } + + public void keyPressed(KeyEvent e){ + if(start==1){ + if(e.getKeyCode()==KeyEvent.VK_RIGHT){ + rightPressed=true; + }else if(e.getKeyCode()==KeyEvent.VK_LEFT){ + leftPressed=true; + } + } + } + + public void keyTyped(KeyEvent e){ + + } + + public void detectHitbox(){ + + for(int i=0;i=sos.getX() &&geschoss.get(i).getX()<=sos.getX()+sos.getLength() && geschoss.get(i).getY()<=sos.getY()+sos.getLength() && geschoss.get(i).getY()>=sos.getY()) + { + sos.stopMove(); + if(hitsSpieler>0){ + hitsSpieler--; + } + score += 50; + + ansicht.setScore(score); + int xk=sos.getX(); + int yk=sos.getY(); + Timer t1=new Timer(); + ansicht.setHit(true, sos.getX(), sos.getY(), 1, false); + t1.schedule(new TimerTask(){ + public void run(){ + ansicht.setHit(true, xk, yk, 2, false); + } + }, 70); + playSound("explosionSound.wav"); + Timer t2=new Timer(); + t2.schedule(new TimerTask(){ + public void run(){ + ansicht.setHit(true, xk, yk, 3, false); + } + }, 140); + Timer t3=new Timer(); + t3.schedule(new TimerTask(){ + public void run(){ + ansicht.setHit(false, -100, -100, 0, false); + } + }, 210); + t1.purge(); + t2.purge(); + t3.purge(); + sos.setX(-200); + sos.setY(-200); + geschoss.get(i).setX(-50); + geschoss.get(i).setY(-50); + ansicht.increaseHealth(); + + } + if(geschoss.get(i).getX()>=gegner.get(z).getX() &&geschoss.get(i).getX()<=gegner.get(z).getX()+gegner.get(z).getLength() && geschoss.get(i).getY()<=gegner.get(z).getY()+gegner.get(z).getLength() && geschoss.get(i).getY()>=gegner.get(z).getY()){ + + int xk=gegner.get(z).getX(); + int yk=gegner.get(z).getY(); + gegner.get(z).stopMove(); + score += 20; + ansicht.setScore(score); + Timer t1=new Timer(); + ansicht.setHit(true, gegner.get(z).getX(), gegner.get(z).getY(), 1, false); + t1.schedule(new TimerTask(){ + public void run(){ + ansicht.setHit(true, xk, yk, 2, false); + } + }, 70); + playSound("explosionSound.wav"); + Timer t2=new Timer(); + t2.schedule(new TimerTask(){ + public void run(){ + ansicht.setHit(true, xk, yk, 3, false); + } + }, 140); + Timer t3=new Timer(); + t3.schedule(new TimerTask(){ + public void run(){ + ansicht.setHit(false, -100, -100, 0, false); + } + }, 210); + t1.purge(); + t2.purge(); + t3.purge(); + geschoss.get(i).setX(-50); + geschoss.get(i).setY(-50); + for(int k=z;k0){ + + if(geschoss.get(i).getX()>=spieler.getX() && geschoss.get(i).getX()<=spieler.getX()+spieler.getLength() && geschoss.get(i).getY()>=spieler.getY() && geschoss.get(i).getY()<=spieler.getY()+spieler.getLength()){ + if(geschoss.get(i).getKey()!=0){ + if(hitsSpieler<2){ + hitsSpieler++; + ansicht.decreaseHealth(); + + geschoss.get(i).setX(-50); + geschoss.get(i).setY(-50); + }else{ + int xk=spieler.getX(); + int yk=spieler.getY(); + Timer t1=new Timer(); + ansicht.decreaseHealth(); + spieler.stopMove(); + + + ansicht.setHit(true, xk, yk, 1, true); + t1.schedule(new TimerTask(){ + public void run(){ + ansicht.setHit(true, xk, yk, 2, true); + } + }, 70); + + spieler.setX(-200); + Timer t2=new Timer(); + t2.schedule(new TimerTask(){ + public void run(){ + ansicht.setHit(true, xk, yk, 3, true); + } + }, 140); + Timer t3=new Timer(); + t3.schedule(new TimerTask(){ + public void run(){ + ansicht.setHit(false, -100, -100, 0, false); + } + }, 210); + t1.purge(); + t2.purge(); + t3.purge(); + Timer tb=new Timer(); + tb.schedule(new TimerTask(){ + private int i; + public void run(){ + ansicht.setBlackBackground(i++); + if(i==7){ + tb.cancel(); + tb.purge(); + } + } + }, 210, 150); + for(int k=0;kscreenHeight || geschoss.get(i).getY()<0){ + for(int k=i;k man erhält die Zeit, + //die das Programm läuft; das habe ich noch durch 2 geteilt, + //damit es nicht arg beeinflusst(siehe unten) + if(2000-time<0){/*wenn die Zeit >2000, dann erhält man einen negativen Wert, der + * als Periode nicht viel Sinn ergibt -> wenn so viel Zeit abgelaufen ist, dass time>2000, ist die am schnellsten mögliche Spawnrate + * erreicht + */ + periodeGegnerSpawn=ThreadLocalRandom.current().nextInt(50, 400);//diese wird hier festgelegt + }else{ + periodeGegnerSpawn=ThreadLocalRandom.current().nextInt(2000-time, 3000-time);//hier wird die GegnerSpawnPeriode neu gesetzt, + //wobei von den normalen Werten die Laufzeit abgezogen wird + //-> je mehr Zeit vergangen, desto schneller spawnen Gegner + } + if(maxGegner==gegnerNumber){ + shouldGegnerSpawn = false; + if(gegner.size()==0){ + score += waveCounter * 1000; + waveCounter++; + ansicht.setWaveCounter(waveCounter); + ansicht.setShowWave(true); + try{Thread.sleep(3500);} + catch(Exception e){e.printStackTrace();} + ansicht.setShowWave(false); + try{Thread.sleep(1500);} + catch(Exception e){e.printStackTrace();} + maxGegner=maxGegner+2; + shouldGegnerSpawn=true; + gegnerNumber=0; + } + } + if(shouldGegnerSpawn){ + addGegner(new Gegner2(x, y, 30, 45, (int)(screenHeight*0.0625))); //hier wird der neue Gegner mit den oben zufällig bestimmten x- und y-Werten und der festgelegten bf und mf erzeugt. + gegnerNumber++; + ShouldBossSpawn--; + } + if(ShouldBossSpawn < 1){ + addGegner(new Gegner3(z, y, 8, 20, (int)(screenHeight*0.0625))); + ShouldBossSpawn = 10 - waveCounter; + } + + currentTime= (int) System.currentTimeMillis(); + } + }, 0, periodeGegnerSpawn);//die Variable wird hier als Periode eingesetzt -> der Timer feuert nach dieser Zeit, die jedes Mal neu bestimmt wird (siehe oben) + } + + public void shoot(Gegner ge){ + if(ge.getKey()==1){ + geschoss.add(new Geschoss(ge.getX()+30, ge.getY()+ge.getLength(),(int) (-(screenHeight/170.666)), 1)); + ge.setShoot(false); + } + if(ge.getKey()==2){ + geschoss.add(new Geschoss(ge.getX()+30, ge.getY()+ge.getLength(),(int) (-(screenHeight/170.666)), 2)); + ge.setShoot(false); + } + + } + + public static synchronized void playSound(final String url) { + new Thread(new Runnable() { + // The wrapper thread is unnecessary, unless it blocks on the + // Clip finishing; see comments. + public void run() { + try { + Clip clip = AudioSystem.getClip(); + AudioInputStream inputStream = AudioSystem.getAudioInputStream( + Steuerung.class.getResourceAsStream(url)); + clip.open(inputStream); + clip.start(); + } catch (Exception e) { + System.err.println(e.getMessage()); + } + } + }).start(); + } + private class Action implements ActionListener{ + public void actionPerformed(ActionEvent e){ + if(e.getSource()==newGame){ + hitsSpieler=0; + ansicht.remove(newGame); + ansicht.setNewGame(); + geschoss.clear(); + gegner.clear(); + spieler.setSpeed(5); + fenster.requestFocus(); + ansicht.repaint(); + } + } + } +} \ No newline at end of file diff --git a/GalaxyGame-Da-Whole-Thing/background.png b/GalaxyGame-Da-Whole-Thing/background.png new file mode 100644 index 0000000..a18f81e Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/background.png differ diff --git a/GalaxyGame-Da-Whole-Thing/background2.png b/GalaxyGame-Da-Whole-Thing/background2.png new file mode 100644 index 0000000..7776a2d Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/background2.png differ diff --git a/GalaxyGame-Da-Whole-Thing/explosion1.png b/GalaxyGame-Da-Whole-Thing/explosion1.png new file mode 100644 index 0000000..a43634a Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/explosion1.png differ diff --git a/GalaxyGame-Da-Whole-Thing/explosion2.png b/GalaxyGame-Da-Whole-Thing/explosion2.png new file mode 100644 index 0000000..eba27e5 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/explosion2.png differ diff --git a/GalaxyGame-Da-Whole-Thing/explosion3.png b/GalaxyGame-Da-Whole-Thing/explosion3.png new file mode 100644 index 0000000..e570e18 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/explosion3.png differ diff --git a/GalaxyGame-Da-Whole-Thing/explosionSound.wav b/GalaxyGame-Da-Whole-Thing/explosionSound.wav new file mode 100644 index 0000000..d27070c Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/explosionSound.wav differ diff --git a/GalaxyGame-Da-Whole-Thing/gegner.png b/GalaxyGame-Da-Whole-Thing/gegner.png new file mode 100644 index 0000000..f7cb346 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/gegner.png differ diff --git a/GalaxyGame-Da-Whole-Thing/gegner2.png b/GalaxyGame-Da-Whole-Thing/gegner2.png new file mode 100644 index 0000000..8043a8c Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/gegner2.png differ diff --git a/GalaxyGame-Da-Whole-Thing/geschoss.png b/GalaxyGame-Da-Whole-Thing/geschoss.png new file mode 100644 index 0000000..6ba15f8 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/geschoss.png differ diff --git a/GalaxyGame-Da-Whole-Thing/herz.png b/GalaxyGame-Da-Whole-Thing/herz.png new file mode 100644 index 0000000..2dc2a70 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/herz.png differ diff --git a/GalaxyGame-Da-Whole-Thing/herz.xcf b/GalaxyGame-Da-Whole-Thing/herz.xcf new file mode 100644 index 0000000..960ba5d Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/herz.xcf differ diff --git a/GalaxyGame-Da-Whole-Thing/icon.png b/GalaxyGame-Da-Whole-Thing/icon.png new file mode 100644 index 0000000..78aae79 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/icon.png differ diff --git a/GalaxyGame-Da-Whole-Thing/lose.wav b/GalaxyGame-Da-Whole-Thing/lose.wav new file mode 100644 index 0000000..e06adff Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/lose.wav differ diff --git a/GalaxyGame-Da-Whole-Thing/package.bluej b/GalaxyGame-Da-Whole-Thing/package.bluej new file mode 100644 index 0000000..06c3ca5 --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/package.bluej @@ -0,0 +1,166 @@ +#BlueJ package file +dependency1.from=Gegner2 +dependency1.to=Beobachter +dependency1.type=UsesDependency +dependency10.from=Ansicht +dependency10.to=Rettungsschiff +dependency10.type=UsesDependency +dependency11.from=Steuerung +dependency11.to=Gegner +dependency11.type=UsesDependency +dependency12.from=Steuerung +dependency12.to=Geschoss +dependency12.type=UsesDependency +dependency13.from=Steuerung +dependency13.to=Spieler +dependency13.type=UsesDependency +dependency14.from=Steuerung +dependency14.to=Ansicht +dependency14.type=UsesDependency +dependency15.from=Steuerung +dependency15.to=Rettungsschiff +dependency15.type=UsesDependency +dependency16.from=Steuerung +dependency16.to=Gegner2 +dependency16.type=UsesDependency +dependency2.from=Rettungsschiff +dependency2.to=Beobachter +dependency2.type=UsesDependency +dependency3.from=Gegner +dependency3.to=Beobachter +dependency3.type=UsesDependency +dependency4.from=Gegner1 +dependency4.to=Beobachter +dependency4.type=UsesDependency +dependency5.from=Geschoss +dependency5.to=Beobachter +dependency5.type=UsesDependency +dependency6.from=Spieler +dependency6.to=Beobachter +dependency6.type=UsesDependency +dependency7.from=Ansicht +dependency7.to=Spieler +dependency7.type=UsesDependency +dependency8.from=Ansicht +dependency8.to=Gegner +dependency8.type=UsesDependency +dependency9.from=Ansicht +dependency9.to=Geschoss +dependency9.type=UsesDependency +package.editor.height=536 +package.editor.width=1166 +package.editor.x=-34 +package.editor.y=146 +package.numDependencies=16 +package.numTargets=9 +package.showExtends=true +package.showUses=true +project.charset=UTF-8 +target1.editor.height=700 +target1.editor.width=900 +target1.editor.x=0 +target1.editor.y=0 +target1.height=50 +target1.name=Gegner2 +target1.naviview.expanded=true +target1.showInterface=false +target1.type=ClassTarget +target1.width=80 +target1.x=20 +target1.y=250 +target2.editor.height=700 +target2.editor.width=900 +target2.editor.x=0 +target2.editor.y=0 +target2.height=50 +target2.name=Rettungsschiff +target2.naviview.expanded=true +target2.showInterface=false +target2.type=ClassTarget +target2.width=110 +target2.x=580 +target2.y=400 +target3.editor.height=700 +target3.editor.width=900 +target3.editor.x=0 +target3.editor.y=0 +target3.height=50 +target3.name=Ansicht +target3.naviview.expanded=true +target3.showInterface=false +target3.type=ClassTarget +target3.width=80 +target3.x=680 +target3.y=240 +target4.editor.height=700 +target4.editor.width=900 +target4.editor.x=0 +target4.editor.y=0 +target4.height=50 +target4.name=Gegner +target4.naviview.expanded=true +target4.showInterface=false +target4.type=InterfaceTarget +target4.width=80 +target4.x=130 +target4.y=250 +target5.editor.height=700 +target5.editor.width=900 +target5.editor.x=300 +target5.editor.y=96 +target5.height=50 +target5.name=Steuerung +target5.naviview.expanded=true +target5.showInterface=false +target5.type=ClassTarget +target5.width=90 +target5.x=380 +target5.y=420 +target6.editor.height=700 +target6.editor.width=900 +target6.editor.x=0 +target6.editor.y=0 +target6.height=50 +target6.name=Spieler +target6.naviview.expanded=true +target6.showInterface=false +target6.type=ClassTarget +target6.width=80 +target6.x=90 +target6.y=40 +target7.editor.height=700 +target7.editor.width=900 +target7.editor.x=49 +target7.editor.y=166 +target7.height=50 +target7.name=Gegner1 +target7.naviview.expanded=true +target7.showInterface=false +target7.type=ClassTarget +target7.width=80 +target7.x=180 +target7.y=10 +target8.editor.height=700 +target8.editor.width=900 +target8.editor.x=0 +target8.editor.y=0 +target8.height=50 +target8.name=Beobachter +target8.naviview.expanded=true +target8.showInterface=false +target8.type=InterfaceTarget +target8.width=100 +target8.x=360 +target8.y=140 +target9.editor.height=700 +target9.editor.width=900 +target9.editor.x=0 +target9.editor.y=0 +target9.height=50 +target9.name=Geschoss +target9.naviview.expanded=true +target9.showInterface=false +target9.type=ClassTarget +target9.width=80 +target9.x=150 +target9.y=150 diff --git a/GalaxyGame-Da-Whole-Thing/pixil-frame-0(1).png b/GalaxyGame-Da-Whole-Thing/pixil-frame-0(1).png new file mode 100644 index 0000000..6ba15f8 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/pixil-frame-0(1).png differ diff --git a/GalaxyGame-Da-Whole-Thing/pixil-frame-0(2).png b/GalaxyGame-Da-Whole-Thing/pixil-frame-0(2).png new file mode 100644 index 0000000..f7cb346 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/pixil-frame-0(2).png differ diff --git a/GalaxyGame-Da-Whole-Thing/pixil-frame-0(3).png b/GalaxyGame-Da-Whole-Thing/pixil-frame-0(3).png new file mode 100644 index 0000000..a43634a Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/pixil-frame-0(3).png differ diff --git a/GalaxyGame-Da-Whole-Thing/pixil-frame-0(4).png b/GalaxyGame-Da-Whole-Thing/pixil-frame-0(4).png new file mode 100644 index 0000000..eba27e5 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/pixil-frame-0(4).png differ diff --git a/GalaxyGame-Da-Whole-Thing/pixil-frame-0(5).png b/GalaxyGame-Da-Whole-Thing/pixil-frame-0(5).png new file mode 100644 index 0000000..e570e18 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/pixil-frame-0(5).png differ diff --git a/GalaxyGame-Da-Whole-Thing/pixil-frame-0(6).png b/GalaxyGame-Da-Whole-Thing/pixil-frame-0(6).png new file mode 100644 index 0000000..8043a8c Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/pixil-frame-0(6).png differ diff --git a/GalaxyGame-Da-Whole-Thing/pixil-frame-0.png b/GalaxyGame-Da-Whole-Thing/pixil-frame-0.png new file mode 100644 index 0000000..6640ad8 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/pixil-frame-0.png differ diff --git a/GalaxyGame-Da-Whole-Thing/planet.jpg b/GalaxyGame-Da-Whole-Thing/planet.jpg new file mode 100644 index 0000000..0be75c0 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/planet.jpg differ diff --git a/GalaxyGame-Da-Whole-Thing/planet.png b/GalaxyGame-Da-Whole-Thing/planet.png new file mode 100644 index 0000000..60edb90 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/planet.png differ diff --git a/GalaxyGame-Da-Whole-Thing/rakete.png b/GalaxyGame-Da-Whole-Thing/rakete.png new file mode 100644 index 0000000..5a3c5af Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/rakete.png differ diff --git a/GalaxyGame-Da-Whole-Thing/rakete2.png b/GalaxyGame-Da-Whole-Thing/rakete2.png new file mode 100644 index 0000000..4fdd21d Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/rakete2.png differ diff --git a/GalaxyGame-Da-Whole-Thing/score.png b/GalaxyGame-Da-Whole-Thing/score.png new file mode 100644 index 0000000..429c1aa Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/score.png differ diff --git a/GalaxyGame-Da-Whole-Thing/spiela.png b/GalaxyGame-Da-Whole-Thing/spiela.png new file mode 100644 index 0000000..7335545 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/spiela.png differ diff --git a/GalaxyGame-Da-Whole-Thing/spieler.png b/GalaxyGame-Da-Whole-Thing/spieler.png new file mode 100644 index 0000000..6640ad8 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/spieler.png differ diff --git a/GalaxyGame-Da-Whole-Thing/starvader.ttf b/GalaxyGame-Da-Whole-Thing/starvader.ttf new file mode 100644 index 0000000..7c48f1e Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/starvader.ttf differ diff --git a/GalaxyGame-Da-Whole-Thing/test.txt b/GalaxyGame-Da-Whole-Thing/test.txt new file mode 100644 index 0000000..d29b4d4 --- /dev/null +++ b/GalaxyGame-Da-Whole-Thing/test.txt @@ -0,0 +1 @@ +7340 diff --git a/GalaxyGame-Da-Whole-Thing/verdunklung1.png b/GalaxyGame-Da-Whole-Thing/verdunklung1.png new file mode 100644 index 0000000..b49f0a9 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/verdunklung1.png differ diff --git a/GalaxyGame-Da-Whole-Thing/verdunklung2.png b/GalaxyGame-Da-Whole-Thing/verdunklung2.png new file mode 100644 index 0000000..28ffe3a Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/verdunklung2.png differ diff --git a/GalaxyGame-Da-Whole-Thing/verdunklung3.png b/GalaxyGame-Da-Whole-Thing/verdunklung3.png new file mode 100644 index 0000000..a7682ad Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/verdunklung3.png differ diff --git a/GalaxyGame-Da-Whole-Thing/verdunklung4.png b/GalaxyGame-Da-Whole-Thing/verdunklung4.png new file mode 100644 index 0000000..483c2ba Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/verdunklung4.png differ diff --git a/GalaxyGame-Da-Whole-Thing/verdunklung5.png b/GalaxyGame-Da-Whole-Thing/verdunklung5.png new file mode 100644 index 0000000..0be875d Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/verdunklung5.png differ diff --git a/GalaxyGame-Da-Whole-Thing/verdunklung6.png b/GalaxyGame-Da-Whole-Thing/verdunklung6.png new file mode 100644 index 0000000..475fa2a Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/verdunklung6.png differ diff --git a/GalaxyGame-Da-Whole-Thing/verdunklung7.png b/GalaxyGame-Da-Whole-Thing/verdunklung7.png new file mode 100644 index 0000000..dd28178 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/verdunklung7.png differ diff --git a/GalaxyGame-Da-Whole-Thing/verdunklung8.png b/GalaxyGame-Da-Whole-Thing/verdunklung8.png new file mode 100644 index 0000000..31005e8 Binary files /dev/null and b/GalaxyGame-Da-Whole-Thing/verdunklung8.png differ