hunter:start
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
hunter:start [2023/02/03 06:55] – [Projekt: Hunter-Game] Martin Pabst | hunter:start [2023/02/27 07:03] (aktuell) – [Plan] Martin Pabst | ||
---|---|---|---|
Zeile 6: | Zeile 6: | ||
===== Plan ===== | ===== Plan ===== | ||
Wir erstellen wieder eine Hauptklasse " | Wir erstellen wieder eine Hauptklasse " | ||
- | {{ : | + | {{ : |
{{ youtube> | {{ youtube> | ||
+ | [[.hunterfertig: | ||
- | < | ||
- | |||
- | <div class=" | ||
- | |||
- | <script type=" | ||
- | new HunterGame(); | ||
- | |||
- | |||
- | class HunterGame extends Actor { | ||
- | |||
- | | ||
- | | ||
- | | ||
- | |||
- | | ||
- | |||
- | | ||
- | |||
- | int punkte = 0; | ||
- | |||
- | Group enemies = new Group(); | ||
- | |||
- | |||
- | | ||
- | | ||
- | super(); | ||
- | hunter = new Circle(400, 300, 5); | ||
- | target = new Circle(0, 0, 5); | ||
- | target.setFillColor(Color.green); | ||
- | moveTarget(); | ||
- | |||
- | } | ||
- | |||
- | | ||
- | if(isKeyDown(Key.ArrowUp)) { | ||
- | vx = 0; | ||
- | vy = -v; | ||
- | } | ||
- | if(isKeyDown(Key.ArrowDown)) { | ||
- | vx = 0; | ||
- | vy = v; | ||
- | } | ||
- | if(isKeyDown(Key.ArrowLeft)) { | ||
- | vx = -v; | ||
- | vy = 0; | ||
- | } | ||
- | if(isKeyDown(Key.ArrowRight)) { | ||
- | vx = v; | ||
- | vy = 0; | ||
- | } | ||
- | |||
- | hunter.move(vx, | ||
- | |||
- | if(hunter.collidesWith(target)) { | ||
- | | ||
- | | ||
- | | ||
- | |||
- | | ||
- | } | ||
- | |||
- | if(hunter.getCenterX() < 0 || hunter.getCenterX() > 800 || | ||
- | hunter.getCenterY() < 0 || hunter.getCenterY() > 600 | ||
- | ) { | ||
- | | ||
- | } | ||
- | |||
- | if(hunter.collidesWith(enemies)) { | ||
- | | ||
- | } | ||
- | |||
- | } | ||
- | |||
- | void moveTarget() { | ||
- | target.moveTo(Math.random() * 800, Math.random() * 600); | ||
- | } | ||
- | |||
- | void addEnemy() { | ||
- | Circle enemy = new Circle(Math.random() * 800, Math.random() * 600, 5); | ||
- | enemy.setFillColor(Color.red); | ||
- | enemies.add(enemy); | ||
- | } | ||
- | |||
- | void gameOver() { | ||
- | println(" | ||
- | stopActing(); | ||
- | } | ||
- | |||
- | } | ||
- | </ | ||
- | |||
- | </ | ||
- | |||
- | </ | ||
- | | ||
===== Aufgaben ===== | ===== Aufgaben ===== | ||
Zeile 111: | Zeile 17: | ||
- Damit das Spiel mit fortschreitender Dauer immer schwerer wird, soll immer dann, wenn der Spieler einen Punkt erhält, seine Geschwindigkeit um $0.5$ erhöht werden. | - Damit das Spiel mit fortschreitender Dauer immer schwerer wird, soll immer dann, wenn der Spieler einen Punkt erhält, seine Geschwindigkeit um $0.5$ erhöht werden. | ||
- Zudem sollen die neu hinzukommenden Gegner (rote Kreise) mit fortschreitender Spieldauer immer größer werden. | - Zudem sollen die neu hinzukommenden Gegner (rote Kreise) mit fortschreitender Spieldauer immer größer werden. | ||
- | - Freiwillig: | + | - Es ist sehr frustrierend, |
- Freiwillig: Sicher hast Du selbst auch noch Ideen, wie man das Spiel verbessern könnte. Ich bin gespannt! \\ //Bitte kennzeichne diese Programmstellen mit einem Kommentar, so dass ich sie finden kann.// | - Freiwillig: Sicher hast Du selbst auch noch Ideen, wie man das Spiel verbessern könnte. Ich bin gespannt! \\ //Bitte kennzeichne diese Programmstellen mit einem Kommentar, so dass ich sie finden kann.// | ||
[[.loesung: | [[.loesung: |
hunter/start.1675407307.txt.gz · Zuletzt geändert: 2023/02/03 06:55 von Martin Pabst