Files
blackjack/docs/game_flowchart.md
2025-10-27 18:03:06 +01:00

1.1 KiB

flowchart TD
  A[Start: play_round()] --> B[Deck mischen und Karten austeilen];
  B --> C[Spieler erhält 2 Karten, Dealer erhält 1 offen, 1 verdeckt];
  C --> D{Dealer offen Ass oder 10-Wert?};
  D -- Ja --> E{Dealer hat Blackjack?};
  E -- Ja --> F[Dealer deckt verdeckte Karte auf];
  F --> G{Spieler hat auch Blackjack?};
  G -- Ja --> P[PUSH (Unentschieden)];
  G -- Nein --> L[Spieler verliert];
  D -- Nein oder E -- Nein --> H[Spielerzug-Loop];
  H --> I{Spieler Hit oder Stand?};
  I -- Hit --> J[Spieler zieht Karte];
  J --> K{Spieler BUST (> 21)?};
  K -- Ja --> L;
  K -- Nein --> H;
  I -- Stand --> M[Spielerzug beendet];
  M --> N[Dealer deckt verdeckte Karte auf];
  N --> O{Dealer Handwert < 17?};
  O -- Ja --> P1[Dealer zieht Karte];
  P1 --> O;
  O -- Nein --> Q{Dealer BUST (> 21)?};
  Q -- Ja --> W1[Spieler gewinnt 1:1];
  Q -- Nein --> R[Vergleich: compare_hands(Player vs Dealer)];
  R --> S{Spielerwert > Dealerwert?};
  S -- Ja --> W2[Spieler gewinnt (1:1 oder 3:2)];
  S -- Nein --> T{Spielerwert = Dealerwert?};
  T -- Ja --> P;
  T -- Nein --> L;
  
  L & P & W1 & W2 --> Z[Ende: Chips aktualisieren, neue Runde?]