|
![]() |
#1 |
Registered User
Datum registracije: Jul 2007
Lokacija: Zadar
Postovi: 19
|
Memory igra u Visual Basicu,malo je hitno...
Evo trebam napraviti ovu igru u VBu za prekosutra a nemam pojma kako.Pa ako netko zna neki tutorial na netu ili ima gotov kod igre bio bi jako zahvalan. |
![]() |
![]() |
![]() |
#2 |
Premium
Datum registracije: Jun 2007
Lokacija: Samobor
Postovi: 993
|
http://web.vip.hr/antun58.vip/zip/memory.zip probaj s tim makar se apsolutno ne kužim u to |
![]() |
![]() |
|
|
Oglas
|
|
![]() |
#3 |
Registered User
Datum registracije: Aug 2008
Lokacija: ZG
Postovi: 2
|
Option Explicit Private polje(0 To 7) As Long Private pamti As String Private pamti1 As String Private rezultat As Integer Private rezultat1 As Integer 'upisivanje rezultata Dim n(1 To 3) As String Dim b(1 To 3) As Long Private Sub cmd1_Click() rezultat = rezultat + 1 Randomize Timer Dim i As Long For i = 0 To 7 polje(i) = i Next i Dim j As Long, s As Long For i = 0 To 7 j = Int(Rnd * 7) + 1 s = polje(j) polje(j) = polje(i) polje(i) = s Next i Dim broj As String For i = 0 To 7 Lstpolje.AddItem CStr(polje(i)) Command1(i).Tag = CStr(polje(i)) Next i End Sub Private Sub cmdmemori_Click(Index As Integer) Dim j As Long Dim broj As Integer Dim i As Long Dim rez As String If mnua.Checked = True Then Select Case cmdmemori(Index).Tag Case 0 cmdmemori(Index).Caption = "Draško" Case 1 cmdmemori(Index).Caption = "Darko" Case 2 cmdmemori(Index).Caption = "Antun" Case 3 cmdmemori(Index).Caption = "Marko" Case 4 cmdmemori(Index).Caption = "Drago" Case 5 cmdmemori(Index).Caption = "Sale" Case 6 cmdmemori(Index).Caption = "Vajo" Case 7 cmdmemori(Index).Caption = "Damir" End Select End If If mnub.Checked = True Then Select Case cmdmemori(Index).Tag Case 0 cmdmemori(Index).Caption = "Mudri" Case 1 cmdmemori(Index).Caption = "Paloš" Case 2 cmdmemori(Index).Caption = "Stanko" Case 3 cmdmemori(Index).Caption = "Iko" Case 4 cmdmemori(Index).Caption = "Tošo" Case 5 cmdmemori(Index).Caption = "Šumaher" Case 6 cmdmemori(Index).Caption = "Slavko" Case 7 cmdmemori(Index).Caption = "Bajo" End Select End If If mnuc.Checked = True Then Select Case cmdmemori(Index).Tag Case 0 cmdmemori(Index).Caption = "Josip" Case 1 cmdmemori(Index).Caption = "Vida" Case 2 cmdmemori(Index).Caption = "Mungos" Case 3 cmdmemori(Index).Caption = "Mato" Case 4 cmdmemori(Index).Caption = "Brzi" Case 5 cmdmemori(Index).Caption = "Toldo" Case 6 cmdmemori(Index).Caption = "Ilija" Case 7 cmdmemori(Index).Caption = "Tomislav" End Select End If If mnud.Checked = True Then Select Case cmdmemori(Index).Tag Case 0 cmdmemori(Index).Caption = "Jure" Case 1 cmdmemori(Index).Caption = "Ivica" Case 2 cmdmemori(Index).Caption = "Ranko" Case 3 cmdmemori(Index).Caption = "Matija" Case 4 cmdmemori(Index).Caption = "Darko" Case 5 cmdmemori(Index).Caption = "Žan" Case 6 cmdmemori(Index).Caption = "a" Case 7 cmdmemori(Index).Caption = "b" End Select End If If mnubrojevi.Checked = True Then cmdmemori(Index).Caption = cmdmemori(Index).Tag End If '---------------------------- For i = 0 To 15 If cmdmemori(i).Caption <> "" Then broj = broj + 1 pamti = CStr(cmdmemori(i).Caption) rez = rez + pamti End If Next i '------------------------------------ If broj = 2 Then rezultat = rezultat + 1 Me.Caption = "Broj pokušaja " & rezultat & " " & rezultat1 '............. If Left(rez, Len(cmdmemori(Index).Caption)) = Right(rez, Len(cmdmemori(Index).Caption)) Then For i = 0 To 15 If cmdmemori(i).Caption <> "" Then cmdmemori(i).Visible = False cmdmemori(i).Caption = "" End If Next i Else For j = 1 To 2000000 Next j If mnudva.Checked = True Or mnuprotivracunala.Checked = True Then pic1.Enabled = False pic2.Enabled = True ' MsgBox "promašaj Salko" ''upis protiv računala 'Dim rez1 As String 'Dim pamti1 As String 'Dim pamti2 As String 'Dim k As Long 'povratak: ' For j = 1 To 2 ' rez1 = Int(Rnd * Lstprovjera.ListCount) ' ' ' ' For i = Lstprovjera.ListCount - 1 To 0 Step -1 ' ' Lstprovjera.Selected(rez1) = True ' Command1(rez1).Caption = Command1(rez1).Tag ' Next i ' Next j ' ' For k = 1 To 200000 ' Next k ' For i = 0 To 15 ' If Command1(i).Caption <> "" Then ' pamti2 = pamti2 + CStr(Command1(i).Caption) ' End If ' Next i ' MsgBox pamti2 'If Left(pamti2, 1) = Right(pamti2, 1) Then ' For i = 0 To 15 ' If Command1(i).Caption <> "" Then ' Command1(i).Visible = False ' End If ' Next i ' For k = Lstprovjera.ListCount - 1 To 0 Step -1 ' If Lstprovjera.Selected(k) = True Then ' Lstprovjera.RemoveItem (k) ' ' ' End If ' Next k ' rez1 = "" ' pamti2 = "" ' 'GoTo povratak 'Else ' For j = 1 To 20000000 ' Next j ' For i = Command1.LBound To Command1.UBound ' If Command1(i).Caption <> "" Then ' Command1(i).Caption = "" ' End If ' Next i ' For i = Lstprovjera.ListCount - 1 To 0 Step -1 ' If Lstprovjera.Selected(i) = True Then ' Lstprovjera.Selected(i) = False ' End If ' Next i ' pic2.Enabled = False ' pic1.Enabled = True ' End If ' ' 'kraj upisa protiv računala End If For i = 0 To 15 If cmdmemori(i).Caption <> "" Then cmdmemori(i).Caption = "" broj = 0 pamti = 0 rez = 0 End If Next i End If End If Dim a As Integer For i = 0 To 15 If cmdmemori(i).Visible = False Then a = a + 1 End If Next i If a = 16 Then If mnudva.Checked = True Or mnuprotivracunala.Checked = True Then MsgBox "pobjednik je lijevi igrač sa " & rezultat - rezultat1 & " razlike" cmdnova_Click pic2.Enabled = True Exit Sub End If 'Else MsgBox "Imaš " & rezultat & " pokušaja" Dim unos As String unos = InputBox("upiši ime") If unos = "" Then Exit Sub For i = 1 To 3 If rezultat < b(i) Then For j = 3 To i + 1 Step -1 n(j) = n(j - 1) b(j) = b(j - 1) Next j n(i) = unos b(i) = rezultat Exit For End If Next i obnovi cmdnova_Click End If End Sub Private Sub cmdnova_Click() rezultat = -1 rezultat1 = 0 'Me.Caption = "Broj pokušaja " & "0" & " " & "0" Dim i As Long For i = 0 To 15 If cmdmemori(i).Visible = False Then cmdmemori(i).Visible = True End If Next i cmdpopuni.Visible = True Lstpolje.Clear Randomize Timer For i = 0 To 7 polje(i) = i Next i Dim j As Long, s As Long For i = 0 To 7 j = Int(Rnd * 7) + 1 s = polje(j) polje(j) = polje(i) polje(i) = s Next i Dim broj As String For i = 0 To 7 Lstpolje.AddItem CStr(polje(i)) Next i cmd1_Click For i = 0 To 15 cmdmemori(i).Tag = Lstpolje.List(i) Next i cmd1.Visible = False cmdpopuni_Click cmdpopuni.Visible = False Lstpolje.Visible = False 'ako igraju dva igrača čili protiv računala If mnudva.Checked = True Or mnuprotivracunala.Checked = True Then Form1.Width = pic1.Width * 2 + 100 Command1(16).Visible = False Randomize Timer For i = 0 To 15 j = Int(Rnd * Lstpolje.List(i)) + 1 s = Lstpolje.List(j) Lstpolje.List(j) = Lstpolje.List(i) Lstpolje.List(i) = s Next i For i = 0 To 15 Command1(i).Tag = Lstpolje.List(i) If Command1(i).Visible = False Then Command1(i).Visible = True End If 'Command1(i).Caption = Command1(i).Tag Next i End If End Sub Private Sub cmdpopuni_Click() Dim i As Long Dim broj As String Call premjesti For i = 0 To 15 cmdmemori(i).Tag = CStr(Lstpolje.List(i)) Next i cmdmemori(16).Visible = False End Sub Private Sub Command1_Click(Index As Integer) Dim j As Long Dim broj As Integer Dim i As Long Dim rez As String If mnua.Checked = True Then Select Case Command1(Index).Tag Case 0 Command1(Index).Caption = "Draško" Case 1 Command1(Index).Caption = "Darko" Case 2 Command1(Index).Caption = "Antun" Case 3 Command1(Index).Caption = "Marko" Case 4 Command1(Index).Caption = "Drago" Case 5 Command1(Index).Caption = "Sale" Case 6 Command1(Index).Caption = "Vajo" Case 7 Command1(Index).Caption = "Zijo" End Select End If If mnub.Checked = True Then Select Case Command1(Index).Tag Case 0 Command1(Index).Caption = "Mudri" Case 1 Command1(Index).Caption = "Paloš" Case 2 Command1(Index).Caption = "Stanko" Case 3 Command1(Index).Caption = "Iko" Case 4 Command1(Index).Caption = "Tošo" Case 5 Command1(Index).Caption = "Šumaher" Case 6 Command1(Index).Caption = "Slavko" Case 7 Command1(Index).Caption = "Bajo" End Select End If If mnuc.Checked = True Then Select Case Command1(Index).Tag Case 0 Command1(Index).Caption = "Josip" Case 1 Command1(Index).Caption = "Vida" Case 2 Command1(Index).Caption = "Mungos" Case 3 Command1(Index).Caption = "Mato" Case 4 Command1(Index).Caption = "Brzi" Case 5 Command1(Index).Caption = "Toldo" Case 6 Command1(Index).Caption = "Ilija" Case 7 Command1(Index).Caption = "Tomislav" End Select End If If mnud.Checked = True Then Select Case Command1(Index).Tag Case 0 Command1(Index).Caption = "Jure" Case 1 Command1(Index).Caption = "Ivica" Case 2 Command1(Index).Caption = "Ranko" Case 3 Command1(Index).Caption = "Matija" Case 4 Command1(Index).Caption = "Darko" Case 5 Command1(Index).Caption = "Žan" Case 6 Command1(Index).Caption = "a" Case 7 Command1(Index).Caption = "b" End Select End If If mnubrojevi.Checked = True Then Command1(Index).Caption = Command1(Index).Tag End If For i = 0 To 15 If Command1(i).Caption <> "" Then broj = broj + 1 pamti1 = CStr(Command1(i).Caption) rez = rez + pamti1 End If Next i If broj = 2 Then rezultat1 = rezultat1 + 1 Me.Caption = "Broj pokušaja " & rezultat & " " & rezultat1 If Left(rez, Len(Command1(Index).Caption)) = Right(rez, Len(Command1(Index).Caption)) Then 'MsgBox "Bravo Salko,trebalo ti je malko" For i = 0 To 15 If Command1(i).Caption <> "" Then Command1(i).Visible = False Command1(i).Caption = "" End If Next i Else For j = 1 To 2000000 Next j If mnudva.Checked = True Or mnuprotivracunala.Checked = True Then pic1.Enabled = True pic2.Enabled = False ' MsgBox "promašaj Salko" End If For i = 0 To 15 If Command1(i).Caption <> "" Then Command1(i).Caption = "" broj = 0 pamti1 = 0 rez = 0 End If Next i End If End If Dim a As Integer For i = 0 To 15 If Command1(i).Visible = False Then a = a + 1 End If Next i If a = 16 Then 'If mnudva.Checked = True Or mnuprotivracunala.Checked = True Then MsgBox "pobjednik je desni igrač sa " & rezultat1 - rezultat & " razlike" cmdnova_Click pic1.Enabled = True 'Exit Sub End If 'MsgBox "Imaš " & rezultat1 & " pokušaja " 'cmdnova_Click 'End If End Sub Private Sub Form_Load() On Error Resume Next rezultat = -1 Randomize Timer Dim i As Long For i = 0 To 7 polje(i) = i Next i Dim j As Long, s As Long For i = 0 To 7 j = Int(Rnd * 7) + 1 s = polje(j) polje(j) = polje(i) polje(i) = s Next i Dim broj As String For i = 0 To 7 Lstpolje.AddItem CStr(polje(i)) Next i cmd1_Click cmd1.Visible = False cmdpopuni_Click cmdpopuni.Visible = False Lstpolje.Visible = False Form1.Width = pic1.Width + 100 Dim a As String Open "c:\rez.dat" For Input As #1 If Err.Number <> 0 Then Open "c:\rez.dat" For Output As #1 Print #1, "nepoznat" + Chr(vbKeyTab) + "50" Print #1, "nepoznat" + Chr(vbKeyTab) + "50" Print #1, "nepoznat" + Chr(vbKeyTab) + "50" Close #1 Else Open "c:\rez.dat" For Input As #1 Do Until EOF(1) Input #1, a If a <> "" Then lstrezultat.AddItem a End If Loop Close #1 'For i = lstrezultat.ListCount To 0 Step -1 'lstrezultat1.AddItem lstrezultat.List(i) 'Next i 'mnuprotivracunala_Click End If End Sub Private Sub Form_Resize() If Form1.WindowState <> vbMinimized Then pic1.Left = Form1.ScaleLeft pic1.Top = Form1.ScaleTop Form1.Height = pic1.ScaleHeight + cmdnova.Height - 10 'Form1.Width = pic1.ScaleWidth + 150 End If End Sub Sub premjesti() Randomize Timer Dim i As Long Dim j As Long Dim s As Long For i = 0 To 15 j = Int(Rnd * Lstpolje.List(i)) + 1 s = Lstpolje.List(j) Lstpolje.List(j) = Lstpolje.List(i) Lstpolje.List(i) = s Next i End Sub Private Sub Form_Unload(Cancel As Integer) Dim i As Long Open "c:\rez.dat" For Output As #1 For i = 0 To lstrezultat.ListCount Print #1, lstrezultat.List(i) Next i Close #1 End Sub Private Sub mnua_Click() mnua.Checked = True mnub.Checked = False mnuc.Checked = False mnud.Checked = False mnubrojevi.Checked = False End Sub Private Sub mnub_Click() mnub.Checked = True mnua.Checked = False mnud.Checked = False mnuc.Checked = False mnubrojevi.Checked = False End Sub Private Sub mnubrojevi_Click() mnubrojevi.Checked = True mnua.Checked = False mnub.Checked = False mnuc.Checked = False mnud.Checked = False End Sub Private Sub mnuc_Click() mnuc.Checked = True mnua.Checked = False mnub.Checked = False mnud.Checked = False mnubrojevi.Checked = False End Sub Private Sub mnud_Click() mnud.Checked = True mnub.Checked = False mnuc.Checked = False mnua.Checked = False mnubrojevi.Checked = False End Sub Private Sub mnudva_Click() Lstprovjera.Visible = False lstprovjera1.Visible = False lstrezultat.Visible = False mnudva.Checked = True mnurezultat.Checked = False mnuprotivracunala.Checked = False Form1.Width = pic1.Width * 2 + 100 Command1(16).Visible = False Randomize Timer Dim i As Long Dim j As Long Dim s As Long For i = 0 To 15 j = Int(Rnd * Lstpolje.List(i)) + 1 s = Lstpolje.List(j) Lstpolje.List(j) = Lstpolje.List(i) Lstpolje.List(i) = s Next i For i = 0 To 15 Command1(i).Tag = Lstpolje.List(i) 'Command1(i).Caption = Command1(i).Tag Next i End Sub Private Sub mnuprotivracunala_Click() 'Randomize Timer mnuprotivracunala.Checked = True mnudva.Checked = False mnurezultat.Checked = False Form1.Width = pic1.Width * 2 + 100 Command1(16).Visible = False Randomize Timer Dim i As Long Dim j As Long Dim s As Long For i = 0 To 15 j = Int(Rnd * Lstpolje.List(i)) + 1 s = Lstpolje.List(j) Lstpolje.List(j) = Lstpolje.List(i) Lstpolje.List(i) = s Next i For i = 0 To 15 Command1(i).Tag = Lstpolje.List(i) Lstprovjera.AddItem Command1(i).Tag 'Command1(i).Caption = Command1(i).Tag Next i End Sub Private Sub mnurezultat_Click() mnurezultat.Checked = True mnurezultat.Visible = True Form1.Width = pic1.Width mnuprotivracunala.Checked = False mnudva.Checked = False End Sub Sub obnovi() Dim i As Long lstrezultat.Clear For i = 1 To 3 lstrezultat.AddItem n(i) + Chr(vbKeyTab) + CStr(b(i)) Next i 'lstrezultat1.Clear 'For i = lstrezultat.ListCount To 0 Step -1 'If lstrezultat.List(i) <> "" Then ' lstrezultat1.AddItem lstrezultat.List(i) ' End If 'Next i End Sub |
![]() |
![]() |
|
|
Oglas
|
|
![]() |
|
|