56 lines
3.0 KiB
Markdown
56 lines
3.0 KiB
Markdown
# 🎲 Lotto Spiel – WPF Anwendung (C# / .NET)
|
||
|
||
## 📌 Projektbeschreibung
|
||
|
||
Diese Anwendung ist ein selbst programmiertes 6-aus-49-Lotto-Spiel auf Basis von WPF (Windows Presentation Foundation) in C#. Ziel ist es, 6 Zahlen zwischen 1 und 49 auszuwählen, eine Ziehung zu starten und anschließend zu sehen, wie viele Treffer man hat – natürlich mit einem kleinen virtuellen Geldsystem dazu.
|
||
|
||
Beim Start hat man ein Guthaben von **2000 €**. Für jede Ziehung werden **5 € Einsatz** abgezogen. Je nach Anzahl der Treffer gibt es dann Gewinne zurück. Alles läuft über eine einfache grafische Oberfläche mit Zahlenauswahl, Ziehungsbutton, Kontostandsanzeige und Reset-Funktion.
|
||
|
||
Die Anwendung wurde gemeinsam entwickelt und funktioniert komplett lokal – ohne Datenbank, Internet oder externe Abhängigkeiten.
|
||
|
||
---
|
||
|
||
## 🔧 Funktionen im Überblick
|
||
|
||
- Auswahl von genau 6 Zahlen (Buttons von 1–49)
|
||
- Zufällige Ziehung von 6 Lottozahlen
|
||
- Automatische Trefferprüfung
|
||
- Farbige Darstellung: **Grün = Treffer**, **Rot = kein Treffer**
|
||
- Kontostand mit Startguthaben & Einsatz/Gewinn-Logik
|
||
- Reset-Button zum Zurücksetzen des Spiels
|
||
|
||
---
|
||
|
||
## 👨💻 Aufgabenverteilung
|
||
|
||
Die Entwicklung haben wir im Team gemacht und dabei klare Schwerpunkte gesetzt:
|
||
|
||
### **Jan Dshek**
|
||
- Spiellogik in C# (Zufallsziehung, Trefferprüfung, Gewinnvergabe)
|
||
- Benutzerinteraktion (Zahlen klicken, Zustände speichern)
|
||
- Eingabeprüfung (max. 6 Zahlen, Guthabencheck)
|
||
|
||
### **Kevin Dietze**
|
||
- XAML-Oberfläche (Layout, UI-Design mit Panels und Buttons)
|
||
- Gestaltung der Spielfläche mit WrapPanel
|
||
- Umsetzung der Seitenleiste inkl. Kontostandsanzeige & Buttons
|
||
|
||
> Viele Details wie Farben, Fehlermeldungen und Spielfluss haben wir gemeinsam abgestimmt und umgesetzt.
|
||
|
||
---
|
||
|
||
## ⚠️ Herausforderungen im Projekt
|
||
|
||
- **Zahlenauswahl beschränken:** Es musste sichergestellt werden, dass wirklich nur 6 Zahlen auswählbar sind – ohne weitere Trickserei. Das haben wir direkt über die Button-Logik geregelt.
|
||
- **Doppelte Ziehungen vermeiden:** Nach dem Start einer Ziehung sollten keine weiteren Aktionen möglich sein, bevor das Spiel zurückgesetzt wird.
|
||
- **Farbmarkierung bei Ziehung:** Anfangs war unklar, wie wir Treffer/Nieten optisch abheben. Am Ende haben wir es mit einfacher Farb-Logik und klaren Listenvergleichen gelöst.
|
||
- **Reset sauber machen:** Nach dem Zurücksetzen durfte nichts mehr von vorher sichtbar sein – weder alte Ziehungen noch grüne/rote Felder. Wir leeren also gezielt die nötigen Listen und setzen die Button-Farben zurück.
|
||
|
||
---
|
||
|
||
## ✅ Fazit
|
||
|
||
Das Projekt war eine gute Möglichkeit, die Arbeit mit WPF und C# in der Praxis zu vertiefen. Wir haben gelernt, wie man Benutzerinteraktion sinnvoll umsetzt, mit Zuständen arbeitet und UI und Logik sauber voneinander trennt.
|
||
|
||
Besonders geholfen hat die klare Aufgabenteilung: Einer eher im Code, der andere am Design – aber trotzdem haben wir alles als Team umgesetzt. Die Anwendung läuft stabil, ist verständlich aufgebaut und tut genau, was sie soll.
|