Ich bin gerade dabei ein kleines Frage Antwort Spiel zu Programmieren. Ich habe schon eine Frage Antwort Klasse und eine Countdown Klasse. Ich würde es gerne so um Programmieren, dass sobald man die erste Antworteingibt der Coundown runterzählt. Hat einer eine Idee wie ich das hinkriege?
Hier ist mein bissheriger Code!
Danke
JavaFreak2.0
Hier ist mein bissheriger Code!
Java:
package Spiele;
import java.util.Scanner;
public class Frage_antwort_erweiterung extends Countdown{
public static void main(String[] args) {
System.out.println();
System.out.println("Du benötigst min. 3 korrekte Antworten um die Prüfung zu bestehen");
System.out.println("Bitte nach jeder Antwort Leertaste oder Enter drücken");
System.out.println();
int Punkte = 0;
Scanner s = new Scanner(System.in);
int a;
int b;
int c;
int d;
int e;
System.out.println();
System.out.println("Frage1: Vogel verhält sich zu fliegen wie Fisch zu: [1]gehen [2]schwimmen [3]laufen [4]schweben?"); //2 ist Richtig!
System.out.println();
a = s.nextInt();
// Die Antwortmöglichkeiten für:
//...Frage 1
switch (a){
case 1:
System.out.println("Falsch!");
Punkte += 0;
break;
case 2:
System.out.println("Richtig!");
Punkte += 1;
break;
case 3:
System.out.println("Falsch!");
Punkte += 0;
break;
case 4:
System.out.println("Falsch!");
Punkte += 0;
break;
default:
System.out.println("Die Möglichkeit gibt es nicht!");
Punkte -= 3;
}
System.out.println();
System.out.println("Frage2: Hand verhält sich zu Arm wie Fuß zu: [1]Bein [2]Kopf [3]Bauch [4]Schulter?"); //1 ist Richtig!
System.out.println();
b = s.nextInt();
//...Frage 2
switch (b){
case 1:
System.out.println("Richtig!");
Punkte += 1;
break;
case 2:
System.out.println("Falsch!");
Punkte += 0;
break;
case 3:
System.out.println("Falsch!");
Punkte += 0;
break;
case 4:
System.out.println("Falsch!");
Punkte += 0;
break;
default:
System.out.println("Die Möglichkeit gibt es nicht!");
Punkte -= 3;
break;
}
System.out.println();
System.out.println("Frage3: Brötchen verhält sich zu Bäcker wie Käse zu: [1]Imker [2]Schule [3]Sägewerk [4]Käserei?"); //4 ist Richtig!
System.out.println();
c = s.nextInt();
//...Frage 3
switch (c){
case 1:
System.out.println("Falsch!");
Punkte += 0;
break;
case 2:
System.out.println("Falsch!");
Punkte += 0;
break;
case 3:
System.out.println("Falsch!");
Punkte += 0;
break;
case 4:
System.out.println("Richtig!");
Punkte += 1;
break;
default:
System.out.println("Die Möglichkeit gibt es nicht!");
break;
}
System.out.println();
System.out.println("Frage4: See verhält sich zu Meer wie Bach zu: [1]Teich [2]Tümpel [3]Fluss [4]Sumpf?"); //3 ist Richtig!
System.out.println();
d = s.nextInt();
//...Frage 4
switch (d){
case 1:
System.out.println("Falsch!");
Punkte += 0;
break;
case 2:
System.out.println("Falsch!");
Punkte += 0;
break;
case 3:
System.out.println("Richtig!");
Punkte += 1;
break;
case 4:
System.out.println("Falsch!");
Punkte += 0;
break;
default:
System.out.println("Die Möglichkeit gibt es nicht!");
Punkte -= 3;
break;
}
System.out.println();
System.out.println("Frage5: Krümel verhält sich zu Busch wie Brot zu: [1]Baum [2]Tanne [3]Gras [4]Gestrüpp?"); //1 ist Richtig!
System.out.println();
e = s.nextInt();
//...Frage 5
switch (e){
case 1:
System.out.println("Richtig!");
Punkte += 1;
break;
case 2:
System.out.println("Falsch!");
Punkte += 0;
break;
case 3:
System.out.println("Falsch!");
Punkte += 0;
break;
case 4:
System.out.println("Falsch!");
Punkte += 0;
break;
default:
System.out.println("Die Möglichkeit gibt es nicht!");
Punkte -= 3;
break;
}
System.out.println();
if (Punkte >= 3 && Punkte < 5){
System.out.println("Du hast die prüfung mit " +Punkte+ " Punkt(en) bestanden.");
}
if (Punkte == 5){
System.out.println("Du hast die Prüfung mit voller Punktzahl (also 5) bestanden.");
}
if (Punkte < 3 && Punkte > -5){
System.out.println("Du bist mit " +Punkte+ " Punkt(en) durchgefallen.");
}
if (Punkte <= -5){
System.out.println("Du bist ein hoffnungsloser Fall denn du hattest "+Punkte+" Punkte.");
}
}
}
Java:
package Spiele;
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.Timer;
import javax.swing.WindowConstants;
public class Countdown extends JFrame {
public static int counterValue = 10;
public static Timer timer;
public static JLabel label;
public Countdown() {
initGUI();
}
private void initGUI(){
BorderLayout thisLayout = new BorderLayout();
this.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
this.getContentPane().setLayout(thisLayout);
label = new JLabel();
label.setText(String.valueOf(counterValue));
this.getContentPane().add(label, BorderLayout.CENTER);
this.setTitle("Countdown Example");
this.pack();
this.setVisible(true);
}
public static void main(String[] args) {
Countdown countdown = new Countdown();
Countdown.timer = new Timer(1000, new ActionListener() {
public void actionPerformed(ActionEvent e) {
Countdown.counterValue--;
Countdown.label.setText(String.valueOf(counterValue));
if(Countdown.counterValue == 0){
System.out.println("Zeit vorbei!");
Countdown.timer.stop();
}
}
});
timer.start();
}
}
Danke
JavaFreak2.0
Zuletzt bearbeitet: