Aufteilung
This commit is contained in:
@@ -9,7 +9,7 @@ using System.Windows.Shapes;
|
||||
|
||||
namespace Casino
|
||||
{
|
||||
class Audioplayer
|
||||
class Audioplayer //ki
|
||||
{
|
||||
private readonly MediaPlayer player = new MediaPlayer();
|
||||
private readonly MediaPlayer shortplayer = new MediaPlayer();
|
||||
|
||||
@@ -11,6 +11,7 @@
|
||||
WindowState="Maximized"
|
||||
WindowStyle="None"
|
||||
Background="#195925">
|
||||
<!-- Lenard Gerdes -->
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
@@ -37,7 +38,6 @@
|
||||
<RowDefinition Height="1*"></RowDefinition>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<!-- Main Menu -->
|
||||
<Button Grid.Column="0"
|
||||
Grid.Row="0"
|
||||
Content="Main Menu"
|
||||
@@ -53,7 +53,7 @@
|
||||
<Image Grid.Column="7" Grid.Row="2" x:Name="Bild_3" Margin="5" Stretch="Uniform"/>
|
||||
<Image Grid.Column="9" Grid.Row="2" x:Name="Bild_4" Margin="5" Stretch="Uniform"/>
|
||||
|
||||
<!-- Frage 1: Rot / Schwarz -->
|
||||
<!-- Rot / Schwarz -->
|
||||
<StackPanel x:Name="PanelRedBlack"
|
||||
Grid.Row="3"
|
||||
Grid.Column="3"
|
||||
@@ -86,7 +86,7 @@
|
||||
Tag="Black"/>
|
||||
</StackPanel>
|
||||
|
||||
<!-- Frage 2: Höher / Niedriger -->
|
||||
<!-- Höher / Niedriger -->
|
||||
<StackPanel x:Name="PanelHigherLower"
|
||||
Grid.Row="3"
|
||||
Grid.Column="3"
|
||||
@@ -120,7 +120,7 @@
|
||||
Tag="Lower"/>
|
||||
</StackPanel>
|
||||
|
||||
<!-- Frage 3: Innen / Außen -->
|
||||
<!-- Innen / Außen -->
|
||||
<StackPanel x:Name="PanelInsideOutside"
|
||||
Grid.Row="3"
|
||||
Grid.Column="3"
|
||||
@@ -154,7 +154,7 @@
|
||||
Tag="Outside"/>
|
||||
</StackPanel>
|
||||
|
||||
<!-- Frage 4: Symbol -->
|
||||
<!-- Symbol -->
|
||||
<StackPanel x:Name="PanelSuit"
|
||||
Grid.Row="3"
|
||||
Grid.Column="3"
|
||||
|
||||
+37
-63
@@ -15,7 +15,7 @@ namespace Casino
|
||||
{
|
||||
public partial class Busfahrer : Window
|
||||
{
|
||||
public class Card
|
||||
public class Card //Colin Langer
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public string WertRaw { get; set; } = string.Empty;
|
||||
@@ -25,11 +25,9 @@ namespace Casino
|
||||
|
||||
public bool IsRed =>
|
||||
FarbeRaw.Equals("Hearts", StringComparison.OrdinalIgnoreCase) ||
|
||||
FarbeRaw.Equals("Diamonds", StringComparison.OrdinalIgnoreCase) ||
|
||||
FarbeRaw.Equals("Diamond", StringComparison.OrdinalIgnoreCase) ||
|
||||
FarbeRaw.Equals("Herz", StringComparison.OrdinalIgnoreCase) ||
|
||||
FarbeRaw.Equals("Karo", StringComparison.OrdinalIgnoreCase);
|
||||
FarbeRaw.Equals("Diamond", StringComparison.OrdinalIgnoreCase);
|
||||
|
||||
//Colin Langer
|
||||
public Card(int id, string wert, string farbe, byte[] imgBytes)
|
||||
{
|
||||
Id = id;
|
||||
@@ -42,19 +40,19 @@ namespace Casino
|
||||
Image = ByteArrayToImage(imgBytes);
|
||||
}
|
||||
}
|
||||
|
||||
//Colin Langer
|
||||
private static int ParseValue(string wert)
|
||||
{
|
||||
return wert.Trim() switch
|
||||
{
|
||||
"Jack" or "Bube" => 11,
|
||||
"Queen" or "Dame" => 12,
|
||||
"King" or "König" => 13,
|
||||
"Ace" or "Ass" => 14,
|
||||
"Jack" => 11,
|
||||
"Queen" => 12,
|
||||
"King" => 13,
|
||||
"Ace" => 14,
|
||||
_ => int.TryParse(wert, out int value) ? value : 0
|
||||
};
|
||||
}
|
||||
|
||||
//Colin Langer
|
||||
private static BitmapImage ByteArrayToImage(byte[] bytes)
|
||||
{
|
||||
BitmapImage image = new BitmapImage();
|
||||
@@ -98,30 +96,23 @@ namespace Casino
|
||||
|
||||
private User CurrentUser => users[MainWindow.currentUser];
|
||||
|
||||
// =========================
|
||||
// KONTO
|
||||
// =========================
|
||||
|
||||
// Lenard Gerdes
|
||||
private void UpdateAccountDisplay()
|
||||
{
|
||||
Konto.Text = CurrentUser.Geld.ToString();
|
||||
}
|
||||
|
||||
// Lenard Gerdes
|
||||
private void SaveAccount()
|
||||
{
|
||||
db.UpdateGeld(CurrentUser.ID, CurrentUser.Geld);
|
||||
UpdateAccountDisplay();
|
||||
}
|
||||
|
||||
// =========================
|
||||
// SPIEL STARTEN
|
||||
// =========================
|
||||
|
||||
//Colin Langer
|
||||
private void BtnStart_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
StartGameFromInput();
|
||||
}
|
||||
|
||||
//Colin Langer
|
||||
private void StartGameFromInput()
|
||||
{
|
||||
if (roundRunning)
|
||||
@@ -154,7 +145,7 @@ namespace Casino
|
||||
currentBet = bet;
|
||||
StartRound();
|
||||
}
|
||||
|
||||
//Colin Langer
|
||||
private void StartRound()
|
||||
{
|
||||
try
|
||||
@@ -190,7 +181,7 @@ namespace Casino
|
||||
|
||||
|
||||
}
|
||||
|
||||
//Colin Langer
|
||||
private void LoadCards()
|
||||
{
|
||||
deck = db.GetAllCards()
|
||||
@@ -211,7 +202,7 @@ namespace Casino
|
||||
handCards.Add(DrawCard());
|
||||
}
|
||||
}
|
||||
|
||||
//Colin Langer
|
||||
private Card DrawCard()
|
||||
{
|
||||
Card card = deck[0];
|
||||
@@ -222,7 +213,7 @@ namespace Casino
|
||||
// =========================
|
||||
// KARTEN ANZEIGEN
|
||||
// =========================
|
||||
|
||||
//Colin Langer
|
||||
private void UpdateHandUI()
|
||||
{
|
||||
Bild_1.Source = cardBackImage;
|
||||
@@ -286,7 +277,7 @@ namespace Casino
|
||||
// =========================
|
||||
// SPIELLOGIK
|
||||
// =========================
|
||||
|
||||
// Lenard Gerdes
|
||||
private async Task ProcessGuessAsync(bool success)
|
||||
{
|
||||
if (!roundRunning)
|
||||
@@ -345,7 +336,7 @@ namespace Casino
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//Colin Langer
|
||||
private decimal CalculateCurrentProfit()
|
||||
{
|
||||
return currentPhase switch
|
||||
@@ -357,11 +348,7 @@ namespace Casino
|
||||
_ => 0
|
||||
};
|
||||
}
|
||||
|
||||
// =========================
|
||||
// FRAGEN
|
||||
// =========================
|
||||
|
||||
//Colin Langer
|
||||
private async void ColorButton_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (sender is not Button button)
|
||||
@@ -383,7 +370,7 @@ namespace Casino
|
||||
|
||||
await ProcessGuessAsync(success);
|
||||
}
|
||||
|
||||
//Colin Langer
|
||||
private async void HigherLowerButton_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (sender is not Button button)
|
||||
@@ -402,7 +389,7 @@ namespace Casino
|
||||
|
||||
await ProcessGuessAsync(success);
|
||||
}
|
||||
|
||||
//Colin Langer
|
||||
private async void InsideOutsideButton_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (sender is not Button button)
|
||||
@@ -424,7 +411,7 @@ namespace Casino
|
||||
|
||||
await ProcessGuessAsync(success);
|
||||
}
|
||||
|
||||
//Colin Langer
|
||||
private async void BtnSuit_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (sender is not Button button || button.Tag == null)
|
||||
@@ -439,7 +426,7 @@ namespace Casino
|
||||
|
||||
await ProcessGuessAsync(success);
|
||||
}
|
||||
|
||||
//Colin Langer
|
||||
private static bool IsSameSuit(string cardSuit, string chosenSuit)
|
||||
{
|
||||
if (cardSuit.Equals(chosenSuit, StringComparison.OrdinalIgnoreCase))
|
||||
@@ -449,25 +436,20 @@ namespace Casino
|
||||
|
||||
return chosenSuit switch
|
||||
{
|
||||
"Hearts" => cardSuit.Equals("Herz", StringComparison.OrdinalIgnoreCase),
|
||||
"Diamonds" => cardSuit.Equals("Karo", StringComparison.OrdinalIgnoreCase) ||
|
||||
cardSuit.Equals("Diamond", StringComparison.OrdinalIgnoreCase),
|
||||
"Spades" => cardSuit.Equals("Pik", StringComparison.OrdinalIgnoreCase),
|
||||
"Clubs" => cardSuit.Equals("Kreuz", StringComparison.OrdinalIgnoreCase),
|
||||
"Hearts" => cardSuit.Equals("Hearts", StringComparison.OrdinalIgnoreCase),
|
||||
"Diamonds" => cardSuit.Equals("Diamond", StringComparison.OrdinalIgnoreCase),
|
||||
"Spades" => cardSuit.Equals("Spades", StringComparison.OrdinalIgnoreCase),
|
||||
"Clubs" => cardSuit.Equals("Clubs", StringComparison.OrdinalIgnoreCase),
|
||||
_ => false
|
||||
};
|
||||
}
|
||||
|
||||
//Colin Langer
|
||||
private enum CardColor
|
||||
{
|
||||
Red,
|
||||
Black
|
||||
}
|
||||
|
||||
// =========================
|
||||
// CASH OUT
|
||||
// =========================
|
||||
|
||||
//Colin Langer
|
||||
private void BtnCashOut_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
if (!roundRunning || currentProfit <= 0)
|
||||
@@ -488,7 +470,7 @@ namespace Casino
|
||||
|
||||
ShowWaitingState();
|
||||
}
|
||||
|
||||
//Colin Langer
|
||||
private void PayoutCurrentProfit()
|
||||
{
|
||||
if (currentProfit <= 0)
|
||||
@@ -503,7 +485,7 @@ namespace Casino
|
||||
// =========================
|
||||
// UI
|
||||
// =========================
|
||||
|
||||
//Colin Langer
|
||||
private void SetPhaseUI()
|
||||
{
|
||||
PanelRedBlack.Visibility = Visibility.Collapsed;
|
||||
@@ -541,7 +523,7 @@ namespace Casino
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
//Colin Langer
|
||||
private void ShowWaitingState()
|
||||
{
|
||||
roundRunning = false;
|
||||
@@ -554,26 +536,18 @@ namespace Casino
|
||||
BtnStart.Visibility = Visibility.Visible;
|
||||
TxtBet.IsEnabled = true;
|
||||
}
|
||||
|
||||
//Colin Langer
|
||||
private void UpdateWinDisplay()
|
||||
{
|
||||
BtnCashOut.Content = $"Cash Out (${currentProfit:F2})";
|
||||
}
|
||||
|
||||
// =========================
|
||||
// HAUPTMENÜ
|
||||
// =========================
|
||||
|
||||
//Colin Langer
|
||||
private void Hauptmenue(object sender, RoutedEventArgs e)
|
||||
{
|
||||
music.Stop();
|
||||
Close();
|
||||
}
|
||||
|
||||
// =========================
|
||||
// BILD AUS BYTE[]
|
||||
// =========================
|
||||
|
||||
//Colin Langer
|
||||
private static BitmapImage ByteArrayToImage(byte[] bytes)
|
||||
{
|
||||
BitmapImage image = new BitmapImage();
|
||||
@@ -591,7 +565,7 @@ namespace Casino
|
||||
}
|
||||
|
||||
// =========================
|
||||
// EINSATZ VALIDIERUNG
|
||||
// EINSATZfeld Colin Langer
|
||||
// =========================
|
||||
|
||||
|
||||
|
||||
+14
-13
@@ -17,6 +17,7 @@ namespace Casino
|
||||
{
|
||||
ObservableCollection<User> user = new ObservableCollection<User>();
|
||||
|
||||
//Lenard Gerdes
|
||||
try
|
||||
{
|
||||
MySql.Data.MySqlClient.MySqlConnection myConnection;
|
||||
@@ -84,7 +85,7 @@ namespace Casino
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//Colin Langer
|
||||
public byte[] GetCardImage(int id)
|
||||
{
|
||||
byte[] imageBytes = null;
|
||||
@@ -108,7 +109,7 @@ namespace Casino
|
||||
|
||||
return imageBytes;
|
||||
}
|
||||
|
||||
//Cloin Langer
|
||||
public List<Busfahrer.Card> GetAllCards()
|
||||
{
|
||||
var cards = new List<Busfahrer.Card>();
|
||||
@@ -137,8 +138,8 @@ namespace Casino
|
||||
|
||||
return cards;
|
||||
}
|
||||
|
||||
// NEU: Holt das Bild der Kartenrückseite
|
||||
|
||||
// Holt das Bild der Kartenrückseite Colin Langer
|
||||
public byte[] GetCardBackImage()
|
||||
{
|
||||
byte[] imageBytes = null;
|
||||
@@ -211,10 +212,10 @@ namespace Casino
|
||||
connection.Open();
|
||||
|
||||
string sql = @"
|
||||
SELECT COUNT(*)
|
||||
FROM Nutzer
|
||||
WHERE id = @id
|
||||
AND Rolle = 'Admin'";
|
||||
SELECT COUNT(*)
|
||||
FROM Nutzer
|
||||
WHERE id = @id
|
||||
AND Rolle = 'Admin'";
|
||||
|
||||
using MySqlCommand command = new MySqlCommand(sql, connection);
|
||||
|
||||
@@ -245,8 +246,8 @@ namespace Casino
|
||||
connection.Open();
|
||||
|
||||
string sql = @"
|
||||
DELETE FROM Nutzer
|
||||
WHERE id = @id";
|
||||
DELETE FROM Nutzer
|
||||
WHERE id = @id";
|
||||
|
||||
using MySqlCommand command = new MySqlCommand(sql, connection);
|
||||
|
||||
@@ -283,13 +284,13 @@ namespace Casino
|
||||
connection.Open();
|
||||
|
||||
string sql = @"
|
||||
UPDATE Nutzer
|
||||
SET name = @name,
|
||||
UPDATE Nutzer
|
||||
SET name = @name,
|
||||
age = @age,
|
||||
passwort = @passwort,
|
||||
geld = @geld,
|
||||
Rolle = @rolle
|
||||
WHERE id = @id";
|
||||
WHERE id = @id";
|
||||
|
||||
using MySqlCommand command = new MySqlCommand(sql, connection);
|
||||
|
||||
|
||||
@@ -1,22 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Casino
|
||||
{
|
||||
internal class Decks
|
||||
{
|
||||
int Deckid { get; set; }
|
||||
int Kartenid { get; set; }
|
||||
string name { get; set; }
|
||||
|
||||
public Decks(int d, int k, string n)
|
||||
{
|
||||
Deckid = d;
|
||||
Kartenid = k;
|
||||
name = n;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -5,6 +5,7 @@
|
||||
Height="550"
|
||||
Width="500"
|
||||
WindowStartupLocation="CenterScreen">
|
||||
<!-- Lenard Gerdes -->
|
||||
|
||||
<Grid Margin="25">
|
||||
|
||||
|
||||
+2
-1
@@ -12,7 +12,8 @@
|
||||
Background="Transparent"
|
||||
AllowsTransparency="True"
|
||||
MouseDown="Window_MouseDown">
|
||||
|
||||
<!-- Lenard Gerdes -->
|
||||
|
||||
<Border CornerRadius="20"
|
||||
Background="#590D00"
|
||||
BorderBrush="Gold"
|
||||
|
||||
@@ -26,6 +26,7 @@ namespace Casino
|
||||
/// </summary>
|
||||
public partial class Login : Window
|
||||
{
|
||||
//Alles von Lenard Gerdes
|
||||
Database db = new Database();
|
||||
ObservableCollection<User> users = new ObservableCollection<User>();
|
||||
|
||||
|
||||
@@ -8,8 +8,8 @@
|
||||
Title="MainWindow" Height="450" Width="800"
|
||||
WindowStartupLocation="CenterScreen"
|
||||
>
|
||||
|
||||
|
||||
<!-- Lenard Gerdes -->
|
||||
|
||||
<Border
|
||||
|
||||
Background="#590D00"
|
||||
|
||||
@@ -17,6 +17,7 @@ namespace Casino
|
||||
/// </summary>
|
||||
public partial class MainWindow : Window
|
||||
{
|
||||
// Alles von Lenard Gerdes
|
||||
public static int currentUser;
|
||||
ObservableCollection<User> users = new ObservableCollection<User>();
|
||||
Database db = new Database();
|
||||
@@ -27,6 +28,7 @@ namespace Casino
|
||||
setup();
|
||||
|
||||
}
|
||||
|
||||
private void Slots_Click(object sender, RoutedEventArgs e)
|
||||
{
|
||||
|
||||
|
||||
+4
-3
@@ -9,12 +9,13 @@
|
||||
WindowState="Maximized"
|
||||
WindowStyle="None"
|
||||
Background="Transparent">
|
||||
<!-- Lenard Gerdes -->
|
||||
|
||||
<Border
|
||||
|
||||
Background="#590D00"
|
||||
BorderBrush="Gold"
|
||||
BorderThickness="5">
|
||||
Background="#590D00"
|
||||
BorderBrush="Gold"
|
||||
BorderThickness="5">
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
|
||||
+13
-27
@@ -22,7 +22,7 @@ namespace Casino
|
||||
/// </summary>
|
||||
public partial class Slots : Window
|
||||
{
|
||||
|
||||
// Lenard Gerdes
|
||||
private List<Image> _bilder;
|
||||
private Random _random = new Random();
|
||||
Database db = new Database();
|
||||
@@ -46,7 +46,7 @@ namespace Casino
|
||||
|
||||
private int highestWin = 5;
|
||||
|
||||
|
||||
// Lenard Gerdes
|
||||
public Slots()
|
||||
{
|
||||
InitializeComponent();
|
||||
@@ -90,6 +90,7 @@ namespace Casino
|
||||
}
|
||||
return image;
|
||||
}
|
||||
// Lenard Gerdes
|
||||
private async Task Spin()
|
||||
{
|
||||
for (int i = 0; i < 15; i++)
|
||||
@@ -120,20 +121,14 @@ namespace Casino
|
||||
currentSlot[0, j] = randomBild;
|
||||
LoadCard(_bilder[j], randomBild);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
await Task.Delay(150);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
// Lenard Gerdes
|
||||
private async void Spin(object sender, RoutedEventArgs e)
|
||||
{
|
||||
|
||||
|
||||
int einsatz = Convert.ToInt32(einsatzFeld.Text);
|
||||
users[MainWindow.currentUser].Geld -= einsatz;
|
||||
Konto.Text = users[MainWindow.currentUser].Geld.ToString();
|
||||
@@ -141,20 +136,10 @@ namespace Casino
|
||||
users[MainWindow.currentUser].Geld += CheckWin(currentSlot, einsatz);
|
||||
Konto.Text = users[MainWindow.currentUser].Geld.ToString();
|
||||
db.UpdateGeld(
|
||||
users[MainWindow.currentUser].ID,
|
||||
users[MainWindow.currentUser].ID,
|
||||
users[MainWindow.currentUser].Geld);
|
||||
|
||||
/* catch (NullReferenceException)
|
||||
{
|
||||
MessageBox.Show(
|
||||
"Bitte ein Betrag eingeben",
|
||||
"Fehlermeldung 101",
|
||||
MessageBoxButton.OK,
|
||||
MessageBoxImage.Information);
|
||||
}*/
|
||||
|
||||
}
|
||||
|
||||
// Lenard Gerdes
|
||||
private void Hauptmenue(object sender, RoutedEventArgs e)
|
||||
{
|
||||
music.Stop();
|
||||
@@ -162,7 +147,7 @@ namespace Casino
|
||||
}
|
||||
|
||||
|
||||
|
||||
// Lenard Gerdes
|
||||
public decimal CheckWin(int[,] board, decimal einsatz)
|
||||
{
|
||||
decimal multiplikator = 0m;
|
||||
@@ -267,7 +252,7 @@ namespace Casino
|
||||
return einsatz * multiplikator;
|
||||
}
|
||||
|
||||
|
||||
// Lenard Gerdes
|
||||
private decimal CheckLine(params int[] werte)
|
||||
{
|
||||
decimal gewinn = 0;
|
||||
@@ -315,16 +300,16 @@ namespace Casino
|
||||
|
||||
|
||||
|
||||
//Numberfield
|
||||
//Numberfield Colin Langer
|
||||
private static readonly Regex _regex = new Regex("^[0-9]"); // Regex to match non-numeric input
|
||||
|
||||
//nur nummern
|
||||
//nur nummern Colin Langer
|
||||
private void TextBox_PreviewTextInput(object sender, TextCompositionEventArgs e)
|
||||
{
|
||||
e.Handled = !_regex.IsMatch(e.Text);
|
||||
}
|
||||
|
||||
// Keine Spaces
|
||||
// Keine Spaces Colin Langer
|
||||
private void TextBox_PreviewKeyDown(object sender, KeyEventArgs e)
|
||||
{
|
||||
if (e.Key == Key.Space)
|
||||
@@ -333,7 +318,7 @@ namespace Casino
|
||||
}
|
||||
}
|
||||
|
||||
//das man nichts reinkopieren kann außer Zahlen
|
||||
//das man nichts reinkopieren kann außer Zahlen Colin Langer
|
||||
private void TextBox_Pasting(object sender, DataObjectPastingEventArgs e)
|
||||
{
|
||||
if (e.DataObject.GetDataPresent(typeof(String)))
|
||||
@@ -346,6 +331,7 @@ namespace Casino
|
||||
}
|
||||
}
|
||||
|
||||
// Lenard Gerdes
|
||||
void PlayWinSound()
|
||||
{
|
||||
audio.PlaySound(db.GetSound(highestWin));
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Casino
|
||||
{
|
||||
public class Spiele
|
||||
{
|
||||
public string Name { get; set; }
|
||||
public int MinBetrag { get; set; }
|
||||
|
||||
public Spiele(string n, int m)
|
||||
{
|
||||
Name = n;
|
||||
MinBetrag = m;
|
||||
}
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -7,7 +7,7 @@ using System.Threading.Tasks;
|
||||
|
||||
namespace Casino
|
||||
{
|
||||
public class User
|
||||
public class User // Lenard Gerdes
|
||||
{
|
||||
public string ID { get; set; }
|
||||
public string Name { get; set; }
|
||||
|
||||
Reference in New Issue
Block a user