Aprenda nesta dica como fazer para construir o código de um dos jogos mais clássicos no Microsoft Visual Basic.
Um de cada vez, um jogador atira um dado várias vezes até obter o número 1 ou que o jogador decide parar. Se o jogador obtiver um 1, não falta nada e é a vez do próximo jogador a atirar o dado. Se o jogador tirar outro número, ele é adicionado ao total desta rodada e o jogador continua a jogar. Se o jogador optar por ficar ali, o total de pontos da rodada é adicionado à sua pontuação geral, e o próximo jogador que atira o dado. O primeiro jogador a marcar 100 pontos ou mais ganha.
Option Explicit Sub porco() Dim Scs() As Byte, Ask As Integer, Np As Boolean, Go As Boolean Dim cp As Byte, Rd As Byte, NbP As Byte, ScBT As Byte Const INPTXT As String = "Número de jogadores:" Const INPTITL As String = "Unicamente digital" Const ROL As String = "Jogador ¤¤¤¤ lança o dado." Const MSG As String = "Você gostaria de guardar o seu resultado:" Const TITL As String = "Total se você guardar:" Const RES As String = "Le dé donne: ¤¤¤¤ points." Const ONE As String = "O dado dá: 1 ponto. Sinto muito!" & vbCrLf & "Próximo jogador." Const WIN As String = "O jogador ¤¤¤¤ ganhou o jogo do porco!" Const STW As Byte = 100 Randomize Timer NbP = Application.InputBox(INPTXT, INPTITL, 2, Type:=1) ReDim Scs(1 To NbP) cp = 1 Do ScBT = 0 Do MsgBox Replace(ROL, "¤¤¤¤", cp) Rd = Int((Rnd * 6) + 1) If Rd > 1 Then MsgBox Replace(RES, "¤¤¤¤", Rd) ScBT = ScBT + Rd If Scs(cp) + ScBT >= STW Then Go = True Exit Do End If Ask = MsgBox(MSG & ScBT, vbYesNo, TITL & Scs(cp) + ScBT) If Ask = vbYes Then Scs(cp) = Scs(cp) + ScBT Np = True End If Else MsgBox ONE Np = True End If Loop Until Np If Not Go Then Np = False cp = cp + 1 If cp > NbP Then cp = 1 End If Loop Until Go MsgBox Replace(WIN, "¤¤¤¤", cp) End Sub
Foto: © VBA.