Benutzer-Werkzeuge

Webseiten-Werkzeuge


projects:spacedebris:start

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
projects:spacedebris:start [2021/03/20 22:21] – [Aufgabe 2] Martin Pabstprojects:spacedebris:start [2021/12/29 11:29] (aktuell) – Externe Bearbeitung 127.0.0.1
Zeile 11: Zeile 11:
 {{ youtube>1tul8nVL4ug?large }} {{ youtube>1tul8nVL4ug?large }}
  
 +<HTML>
  
 +<div class="java-online" style="height: 400px; width: 100%" data-java-online="{'withBottomPanel': true, 'id': 'spacedebris1'}">
 +
 +<script type="text/plain" title="SpaceDebrisGame.java">
 +new SpaceDebrisGame();
 +
 +
 +class SpaceDebrisGame extends Actor {
 +   
 +   Spaceship spaceship;
 +
 +   Group debrisGroup = new Group();
 +
 +   Group bullets = new Group();
 +
 +   double debrisRate = 0.06;
 +
 +   SpaceDebrisGame() {
 +      super();
 +      spaceship = new Spaceship();
 +   }
 +
 +   public void act() {
 +      
 +      if(Math.random() < debrisRate) {
 +         Debris debris = new Debris();
 +         debrisGroup.add(debris);
 +      }
 +
 +      if(isKeyDown(" ")) {
 +         Bullet b = new Bullet(spaceship.getCenterX(), spaceship.getCenterY());
 +         bullets.add(b);
 +      }
 +
 +
 +   }
 +
 +
 +
 +
 +
 +}
 +
 +</script>
 +<script type="text/plain" title="Bullet.java">
 +class Bullet extends Circle {
 +
 +   Bullet(double x, double y) {
 +      super(x, y, 5);
 +   }
 +
 +   public void act() {
 +      move(30, 0);
 +      if(isOutsideView()) {
 +         destroy();
 +      }
 +   }
 +   
 +}
 +</script>
 +<script type="text/plain" title="Debris.java">
 +while(true) {
 +   new Debris();
 +}
 +
 +
 +
 +class Debris extends Rectangle {
 +   
 +   Debris() {
 +      
 +      super(830, Math.random() * 500 + 50, Math.random() * 150 + 50, Math.random() * 150 + 50);
 +
 +      setFillColor(Color.randomColor(50));
 +      setAlpha(Math.random() * 0.5 + 0.5);
 +
 +   }
 +
 +   
 +   public void act() {
 +      move(-10, 0);
 +
 +      if(getCenterX() < 100 && isOutsideView()) {
 +         destroy();
 +      }
 +   }
 +
 +
 +}
 +</script>
 +<script type="text/plain" title="Spaceship.java">
 +new Spaceship();
 +
 +
 +class Spaceship extends Sprite {
 +   
 +   Spaceship() {
 +      super(50, 300, SpriteLibrary.Ship_Adrian, 0, ScaleMode.nearest_neighbour);
 +      scale(1.5);
 +   }
 +
 +   public void act() {
 +      if(isKeyDown(Key.ArrowUp) && getCenterY() > 20){
 +         move(0, -4);
 +      }
 +      if(isKeyDown(Key.ArrowDown) && getCenterY() < getWorld().getHeight() - 20 ){
 +         move(0, 4);
 +      }
 +   }
 +
 +
 +}
 +</script>
 +
 +</div>
 +
 +</HTML>
 ===== Aufgabe 1: ===== ===== Aufgabe 1: =====
 Bearbeite diese Aufgabe im Workspace "Space Debris Game", den Du in Deiner Entwicklungsumgebung findest. \\ \\  Bearbeite diese Aufgabe im Workspace "Space Debris Game", den Du in Deiner Entwicklungsumgebung findest. \\ \\ 
Zeile 27: Zeile 144:
   * Schüsse zeitlich beschränken   * Schüsse zeitlich beschränken
 {{ youtube>f62a0x4QG54?large }} {{ youtube>f62a0x4QG54?large }}
 + \\ \\ 
 +[[.standNachWeiterentwicklung1:start|Hier der Programmzustand nach der Weiterentwicklung]]
 ===== Aufgabe 2 ===== ===== Aufgabe 2 =====
 Ihr findet einen neuen Workspace "Space Debris Game 2" in Eurer Entwicklungsumgebung, der den aktuellen Stand der Entwicklung wiederspiegelt. Bitte bearbeitet dort die folgenden Aufgaben. Ihr findet einen neuen Workspace "Space Debris Game 2" in Eurer Entwicklungsumgebung, der den aktuellen Stand der Entwicklung wiederspiegelt. Bitte bearbeitet dort die folgenden Aufgaben.
projects/spacedebris/start.1616275297.txt.gz · Zuletzt geändert: 2021/12/29 11:29 (Externe Bearbeitung)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki