malixx
10-11-2009, 02:53 AM
Hi everyone, that is visual basic 6.
I meaking a card game (poker). I have 52 cards, and how to do that is not repeated?
I have 52 cards, the cards are examples of K1, S2, P8, T6....
I split the name into 2 character
- Random letters k, s, p, t - (sl) and
- Random numbers 1-13 - (br)
When you merge the letter and number 'sl & br ."Gif"' then (like K1.gif).
This is my example, but it is not 100% sure, (some times does not make good).
Private Sub Command1_Click()
''''''''''''''''''''number''''''''''''''''''''''''
Randomize ' for number
br = (Int(Rnd * 13) + 1)
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'''''''''''''''''''''''letter''''''''''''''''''''''''
all_chars = Array("t", "k", "p", "s") 'for letters
random_index = Int(Rnd() * 4)
sl = clave & all_chars(random_index)
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'This is test if EXIST the card or not
'-kr(i) is TextBox 1 to 11
kat = sl & br
If InStr(kr(1), kat) Or InStr(kr(2), kat) Or InStr(kr(3), kat) Or InStr(kr(4), kat) Or InStr(kr(5), kat)
Or InStr(kr(6), kat) Or InStr(kr(7), kat) Or InStr(kr(8), kat) Or InStr(kr(9), kat) Or InStr(kr(10), kat) Or InStr(kr(11), kat) Then
jj.Caption = jj.Caption & "EXIST," 'show if card exist
If br >= 13 Then 'if number > 13(card) then number is 1
kat = sl & 1
Else ' 'if number < 13 then OK
kat = sl & br + 1
End If
End If
'This is for show in Texbox kr(1 to 11)
For i = kr.LBound To kr.Ubound
If kr(i) = "" Then
kr(i).Text = kat
Exit For
End If
Next i
End Sub
it is short..
If someone knows different and better "Card check", then let me write, but it must be separately br & sl.
Thanks, Danijel
I meaking a card game (poker). I have 52 cards, and how to do that is not repeated?
I have 52 cards, the cards are examples of K1, S2, P8, T6....
I split the name into 2 character
- Random letters k, s, p, t - (sl) and
- Random numbers 1-13 - (br)
When you merge the letter and number 'sl & br ."Gif"' then (like K1.gif).
This is my example, but it is not 100% sure, (some times does not make good).
Private Sub Command1_Click()
''''''''''''''''''''number''''''''''''''''''''''''
Randomize ' for number
br = (Int(Rnd * 13) + 1)
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'''''''''''''''''''''''letter''''''''''''''''''''''''
all_chars = Array("t", "k", "p", "s") 'for letters
random_index = Int(Rnd() * 4)
sl = clave & all_chars(random_index)
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'This is test if EXIST the card or not
'-kr(i) is TextBox 1 to 11
kat = sl & br
If InStr(kr(1), kat) Or InStr(kr(2), kat) Or InStr(kr(3), kat) Or InStr(kr(4), kat) Or InStr(kr(5), kat)
Or InStr(kr(6), kat) Or InStr(kr(7), kat) Or InStr(kr(8), kat) Or InStr(kr(9), kat) Or InStr(kr(10), kat) Or InStr(kr(11), kat) Then
jj.Caption = jj.Caption & "EXIST," 'show if card exist
If br >= 13 Then 'if number > 13(card) then number is 1
kat = sl & 1
Else ' 'if number < 13 then OK
kat = sl & br + 1
End If
End If
'This is for show in Texbox kr(1 to 11)
For i = kr.LBound To kr.Ubound
If kr(i) = "" Then
kr(i).Text = kat
Exit For
End If
Next i
End Sub
it is short..
If someone knows different and better "Card check", then let me write, but it must be separately br & sl.
Thanks, Danijel