Frage von melgruen, 2

Hi Leute, bräuchte mal Hilfe beim Programmieren von Uno?

Habe bis jetzt die Anfänge des Spiel initialisiert und wollte gerade beginnen, die Spielregeln zu implementieren, allerdings Scheiter ich schon daran eine Karte ziehen zu lassen. Könnte mir jmd sagen, wo mein Fehler liegt?

mport java.util.*; public class UnoHausaufgabe { static Random random = new Random();

static String KartenStapel1="";
static String KartenStapel2="";
static String Anfangskarte="";

// Kartenblatt von Spieler1 und Spieler 

static final char PLUS_2 = 'a';
static final char AUSSETZEN = 'b';
static final char PLUS_4 = 'c';
static final char FARBWAHL = 'd';

static final char BLAU = '0';
static final char GRUEN = '1';
static final char GELB = '2';
static final char ROT = '3';
static final char SCHWARZ = '4';
static final char FEHLERHAFTE_FARBE = 'x';

static final int ID_INDEX = 0;
static final int FARBE_INDEX = 1;
static final int KARTENLAENGE = 2;
//Die folgenden KOnstanzen definieren die kodierten Farben, IDs, etc.

static String zieheKarte(){
    int r = random.nextInt(12 * 4 + 2); 
    //eine karte ziehen
    
    String KartenSpiel = "00010203"
            + "10111213"
            + "20212223"
            + "30313233"
            + "40414243"
            + "50515253"
            + "60616263"
            + "70717273"
            + "80818283"
            + "90919293"
            + "a0a1a2a3"
            + "b0b1b2b3"
            + "c4d4";
    //Kartenstapel der alle Karten enthält.
    return KartenSpiel.substring(2*r,2*r+2);      
    //Gezogene Karte zurückgeben
}

static String farbeLesbar(char farbe) { switch (farbe) { case BLAU: return "blau"; case GRUEN: return "gruen"; case GELB: return "gelb"; case ROT: return "rot"; case SCHWARZ: return "schwarz"; default: return null; // Macht die Codierte Farbe lesbar }}

static String IDLesbar(char IDkarte) { switch (IDkarte) { case PLUS_2: return "Plus 2"; case AUSSETZEN: return "Aussetzen"; case PLUS_4: return "Plus 4"; case FARBWAHL: return "Farbwahl"; default: return Character.toString(IDkarte); } // Macht die codierten Sonderkarten lesbar }

    static String KartenstapelLesbar(String kartenstapel) {
    String KartenstapelLesbar = "";
    //über den Kartenstapel iterieren
    //i erhöht sich jedes mal um 2, da die ID der Karten 2 chars lang ist
    for (int i = 0; i < kartenstapel.length()-1; i += 2) {
        String aktuelleKarte = kartenstapel.substring(i, i + 2);

        KartenstapelLesbar += IDLesbar(aktuel

Keine passende Antwort gefunden?

Fragen Sie die Community

Weitere Fragen mit Antworten