Formatting

remotes/origin/master v1.1.0
CrystalMoogle 2023-07-16 16:50:52 +01:00
parent 3ae3a26e2b
commit ef55b4bc2e
4 changed files with 25 additions and 10 deletions

View File

@ -1,9 +1,11 @@
Public Class GameWindow Public Class GameWindow
Private WithEvents game As Game Private WithEvents game As Game
Private Sub StartGame_Click(sender As Object, e As EventArgs) Handles StartGame.Click Private Sub StartGame_Click(sender As Object, e As EventArgs) Handles StartGame.Click
game = New Game() game = New Game()
game.Start() game.Start()
End Sub End Sub
Private Sub HitButton_Click(sender As Object, e As EventArgs) Handles HitButton.Click Private Sub HitButton_Click(sender As Object, e As EventArgs) Handles HitButton.Click
game.Hit() game.Hit()
End Sub End Sub
@ -11,8 +13,11 @@
Private Sub StandButton_Click(sender As Object, e As EventArgs) Handles StandButton.Click Private Sub StandButton_Click(sender As Object, e As EventArgs) Handles StandButton.Click
game.Stand() game.Stand()
End Sub End Sub
Private Sub OnResetUI() Handles game.ResetUI Private Sub OnResetUI() Handles game.ResetUI
Dim pictureBoxes() As PictureBox = {PlayerCard1, PlayerCard2, PlayerCard3, PlayerCard4, PlayerCard5, PlayerCard6, PlayerCard7, PlayerCard8, PlayerCard9, PlayerCard10} Dim pictureBoxes() As PictureBox =
{PlayerCard1, PlayerCard2, PlayerCard3, PlayerCard4, PlayerCard5, PlayerCard6, PlayerCard7, PlayerCard8,
PlayerCard9, PlayerCard10}
For Each box In pictureBoxes For Each box In pictureBoxes
box.Image = Nothing box.Image = Nothing
Next Next
@ -22,7 +27,8 @@
StartGame.Enabled = False StartGame.Enabled = False
End Sub End Sub
Private Sub OnCardDealt(card As Tuple(Of String, String), cardNumber As String, hide As Boolean) Handles game.CardDealt Private Sub OnCardDealt(card As Tuple(Of String, String), cardNumber As String, hide As Boolean) _
Handles game.CardDealt
Dim pictureBox As PictureBox Dim pictureBox As PictureBox
Debug.Print(cardNumber) Debug.Print(cardNumber)
Try Try
@ -47,12 +53,11 @@
Private Sub ShowDealerCard(card) Handles game.ShowDealerCard Private Sub ShowDealerCard(card) Handles game.ShowDealerCard
PlayerCard7.Image = Utilities.GetCardImage(card) PlayerCard7.Image = Utilities.GetCardImage(card)
End Sub End Sub
Private Sub EndGame(message) Handles game.EndGame Private Sub EndGame(message) Handles game.EndGame
WinMessage.Text = message WinMessage.Text = message
HitButton.Enabled = False HitButton.Enabled = False
StandButton.Enabled = False StandButton.Enabled = False
StartGame.Enabled = True StartGame.Enabled = True
End Sub End Sub
End Class End Class

View File

@ -10,6 +10,7 @@
Next Next
Return list Return list
End Function End Function
Public Shared Function GetCardImage(card As Tuple(Of String, String)) As Image Public Shared Function GetCardImage(card As Tuple(Of String, String)) As Image
Dim suit As String = card.Item1 Dim suit As String = card.Item1
Dim num As String = card.Item2 Dim num As String = card.Item2

View File

@ -9,6 +9,7 @@
Private dealer As Dealer Private dealer As Dealer
Private deck As List(Of Tuple(Of String, String)) Private deck As List(Of Tuple(Of String, String))
Private WithEvents dealerDelay As Timer Private WithEvents dealerDelay As Timer
Public Sub Start() Public Sub Start()
Init() Init()
player.Start() player.Start()
@ -20,12 +21,14 @@
CheckPlayer(player) CheckPlayer(player)
CheckPlayer(dealer, True) CheckPlayer(dealer, True)
End Sub End Sub
Sub Init() Sub Init()
player = New Player() player = New Player()
dealer = New Dealer() dealer = New Dealer()
deck = CreateDeck() deck = CreateDeck()
RaiseEvent ResetUI() RaiseEvent ResetUI()
End Sub End Sub
Sub DealCard(playerDealt As Object, Optional hide As Boolean = False) Sub DealCard(playerDealt As Object, Optional hide As Boolean = False)
Dim card As Tuple(Of String, String) = deck(0) Dim card As Tuple(Of String, String) = deck(0)
playerDealt.hand.Add(card) playerDealt.hand.Add(card)
@ -34,11 +37,13 @@
If hide Then If hide Then
playerDealt.hidden = card playerDealt.hidden = card
End If End If
Dim cardNumber As String = If(TypeOf playerDealt Is Dealer, (playerDealt.hand.Count + 5).ToString(), playerDealt.hand.Count) Dim cardNumber As String =
If(TypeOf playerDealt Is Dealer, (playerDealt.hand.Count + 5).ToString(), playerDealt.hand.Count)
RaiseEvent CardDealt(card, cardNumber, hide) RaiseEvent CardDealt(card, cardNumber, hide)
RaiseEvent SetTotalLabels(player.total, dealer.total) RaiseEvent SetTotalLabels(player.total, dealer.total)
End Sub End Sub
Sub GetTotal(playerToCheck As Object, Optional hide As Boolean = False) Sub GetTotal(playerToCheck As Object, Optional hide As Boolean = False)
Dim cards As List(Of Tuple(Of String, String)) = playerToCheck.hand Dim cards As List(Of Tuple(Of String, String)) = playerToCheck.hand
If cards.Count = 0 Then If cards.Count = 0 Then
@ -68,8 +73,8 @@
Else Else
playerToCheck.total = total playerToCheck.total = total
End If End If
End Sub End Sub
Sub CheckPlayer(playerToCheck As Object, Optional peek As Boolean = False) Sub CheckPlayer(playerToCheck As Object, Optional peek As Boolean = False)
Dim total As Integer = playerToCheck.total Dim total As Integer = playerToCheck.total
If peek Then If peek Then
@ -98,8 +103,8 @@
playerToCheck.ingame = False playerToCheck.ingame = False
DealerTurn() DealerTurn()
End If End If
End Sub End Sub
Sub DealerTurn() Sub DealerTurn()
GetTotal(dealer) GetTotal(dealer)
RaiseEvent SetTotalLabels(player.total, dealer.total) RaiseEvent SetTotalLabels(player.total, dealer.total)
@ -118,7 +123,7 @@
ElseIf dealer.total < dealer.limit And dealer.hand.Count < 5 Then ElseIf dealer.total < dealer.limit And dealer.hand.Count < 5 Then
dealerDelay = New Timer With { dealerDelay = New Timer With {
.Interval = 1000 .Interval = 1000
} }
dealerDelay.Start() dealerDelay.Start()
Exit Sub Exit Sub
Else Else
@ -127,6 +132,7 @@
End If End If
CheckGame() CheckGame()
End Sub End Sub
Sub OnTickDealerDelay(sender As Object, e As EventArgs) Handles dealerDelay.Tick Sub OnTickDealerDelay(sender As Object, e As EventArgs) Handles dealerDelay.Tick
dealerDelay.Stop() dealerDelay.Stop()
dealerDelay.Dispose() dealerDelay.Dispose()
@ -140,16 +146,19 @@
CheckPlayer(player) CheckPlayer(player)
End If End If
End Sub End Sub
Sub Stand() Sub Stand()
If player.ingame Then If player.ingame Then
player.ingame = False player.ingame = False
DealerTurn() DealerTurn()
End If End If
End Sub End Sub
Sub CheckGame() Sub CheckGame()
Dim winMessage As String = GetResults() Dim winMessage As String = GetResults()
RaiseEvent EndGame(winMessage) RaiseEvent EndGame(winMessage)
End Sub End Sub
Function GetResults() Function GetResults()
Select Case True Select Case True
Case dealer.winType = WinCondition.Blackjack Case dealer.winType = WinCondition.Blackjack
@ -174,6 +183,7 @@
Return "Dealer wins with a total of " & dealer.total.ToString() & "!" Return "Dealer wins with a total of " & dealer.total.ToString() & "!"
End Select End Select
End Function End Function
Function CreateDeck() As List(Of Tuple(Of String, String)) Function CreateDeck() As List(Of Tuple(Of String, String))
Dim response As New List(Of Tuple(Of String, String)) Dim response As New List(Of Tuple(Of String, String))
Dim nums As String() = {"A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K"} Dim nums As String() = {"A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K"}
@ -185,7 +195,6 @@
Next Next
Return Utilities.Shuffle(response) Return Utilities.Shuffle(response)
End Function End Function
End Class End Class
Public Enum WinCondition Public Enum WinCondition

View File

@ -9,9 +9,9 @@
total = 0 total = 0
ingame = True ingame = True
winType = WinCondition.NormalWin winType = WinCondition.NormalWin
End Sub End Sub
End Class End Class
Public Class Dealer Public Class Dealer
Inherits Player Inherits Player