Erste Schritte Hilfe bei Fußball Manager

FelixxF

Neues Mitglied
Ich brauche Hilfe bei meinem ersten Spiel.

if (zeit + naechsteAktion >= spieldauer & punkteHeim == punkteGast) {
zeit + naechsteAktion >= spieldauer + verlaengerung ; }

Dieser Teil hat einen Fehler den ich nicht verstehe, würde mich über Hilfe freuen.



Java:
public class Freundschaftsfussballspiel {
    // Attribute
    private Mannschaft heimMannschaft;
    private Mannschaft gastMannschaft;
    private int punkteHeim;
    private int punkteGast;

    // get-Methoden
    public int getPunkteHeim() {
        return punkteHeim;
    }

    public int getPunkteGast() {
        return punkteGast;
    }

    public String getErgebnisText() {
        return " ERGEBNIS: \n\n    " + heimMannschaft.getName() + " - "
                + gastMannschaft.getName() + " " + punkteHeim + ":"
                + punkteGast + ".";
    }

   
    boolean torchance(Spieler s, Torwart t, int aktuelleZeit, Mannschaft m) {
        System.out.println("\n" + aktuelleZeit + ". Minute: ");
        System.out.println("    Chance fuer " + m.getName() + " ...");
        System.out.println("    " + s.getName() + " zieht ab");
        boolean tor = !t.haelt(s.schiesstAufTor());
        return tor;
    }

    public void starteSpiel(Mannschaft m1, Mannschaft m2) {
        heimMannschaft = m1;
        gastMannschaft = m2;
        punkteHeim = 0;
        punkteGast = 0;

        // Spielzeit betraegt 90 Minuten + Nachspielzeit + Verlängerung
        int spieldauer = 90 + (int) (Math.random() * 5);
        int zeit = 1;
        int naechsteAktion = (int) (Math.random() * 15) + 1;
        int verlaengerung = 30 + (int) (Math.random() * 5);
       
        // solange das Spiel laeuft, koennen Torchancen entstehen
        while (zeit + naechsteAktion <= spieldauer) {
            zeit = zeit + naechsteAktion;

            if (zeit + naechsteAktion >= spieldauer & punkteHeim == punkteGast) {
                zeit + naechsteAktion >= spieldauer + verlaengerung ; }
   
    // Staerke der beiden Mannschaften und Spielniveau berechnen
            double staerke1 = 0.8 * m1.getStaerke() + 0.15 * m1.getMotivation()
                    + 0.05 * m1.getTrainer().getErfahrung();
            double staerke2 = 0.8 * m2.getStaerke() + 0.15 * m2.getMotivation()
                    + 0.05 * m2.getTrainer().getErfahrung();
            double spielniveau = (int) (Math.random() * (Math.round(staerke1
                    + staerke2)));

            // zufaellige einen Torschuetzen bestimmen
            int schuetze = (int) (Math.random() * 10);

            // Angriff laeuft...
            if (spielniveau < staerke1) {// Mannschaft 1 greift an
                Spieler s = m1.getKader()[schuetze];
                if (torchance(s, m2.getTorwart(), zeit, m1)) {// Tor faellt
                    punkteHeim++;
                    s.addTor();
                    System.out.println("    TOR!!!    " + punkteHeim + ":"
                            + punkteGast + "  " + s.getName() + " ("
                            + s.getTore() + ")");
                } else {// Tor faellt nicht
                    System.out.println("    " + m2.getTorwart().getName()
                            + " pariert glanzvoll.");
                }

            } else {// Mannschaft 2 greift an
                Spieler s = m2.getKader()[schuetze];
                if (torchance(s, m1.getTorwart(), zeit, m2)) {// Tor faellt
                    punkteGast++;
                    s.addTor();
                    System.out.println("    TOR!!!    " + punkteHeim + ":"
                            + punkteGast + "  " + s.getName() + " ("
                            + s.getTore() + ")");
                } else {// Tor faellt nicht
                    System.out.println("    " + m1.getTorwart().getName()
                            + " pariert glanzvoll.");
                }

            }

            naechsteAktion = (int) (Math.random() * 15) + 1;
        }
    }
}
 
Zuletzt bearbeitet von einem Moderator:
Ich brauche Hilfe bei meinem ersten Spiel.

if (zeit + naechsteAktion >= spieldauer & punkteHeim == punkteGast) {
zeit + naechsteAktion >= spieldauer + verlaengerung ; }

Dieser Teil hat einen Fehler den ich nicht verstehe, würde mich über Hilfe freuen.

Vielleicht ist das richtig:
Java:
if (zeit + naechsteAktion >= spieldauer && punkteHeim == punkteGast) {
    spieldauer += verlaengerung};

Also wenn die aktuelle zeit + naechsteAktion größer ist als die spieldauer und gleichstand steht, dann geh in die Verlängerung.
 

Neue Themen


Zurück
Oben