VBA Yahtzee

Pagina: 1
Acties:
  • 407 views

Acties:
  • 0 Henk 'm!

  • vinom
  • Registratie: Augustus 2009
  • Laatst online: 00:10
Goede middag,

Ik maak weer een nieuw topic aan, omdat het vorige terecht op slot is gegaan, maar nu kan ik het wat beter uitleggen:

Voor degene die het nog niet gelezen hadden: Ik heb een opdracht van school en dat is Yahtzee maken in VBA.
Tot nu toe mijn code:

------------------------------

Option Compare Database

Dim Teller As Byte

Private Sub Dobbel1_Click()

Me.Dobbelselect1.Value = True
End Sub

Private Sub Dobbel2_Click()

Me.Dobbelselect2.Value = True
End Sub

Private Sub Dobbel3_Click()

Me.Dobbelselect3.Value = True
End Sub

Private Sub Dobbel4_Click()

Me.Dobbelselect4.Value = True
End Sub

Private Sub Dobbel5_Click()

Me.Dobbelselect5.Value = True
End Sub

Private Sub Dobbelen_Click()
If Teller < 3 Then
If Me.Dobbelselect1.Value = False Then Me.Dobbel1.Caption = (Int(Rnd * 6) + 1)
If Me.Dobbelselect2.Value = False Then Me.Dobbel2.Caption = (Int(Rnd * 6) + 1)
If Me.Dobbelselect3.Value = False Then Me.Dobbel3.Caption = (Int(Rnd * 6) + 1)
If Me.Dobbelselect4.Value = False Then Me.Dobbel4.Caption = (Int(Rnd * 6) + 1)
If Me.Dobbelselect5.Value = False Then Me.Dobbel5.Caption = (Int(Rnd * 6) + 1)
Teller = Teller + 1

If Teller = 3 Then
MsgBox "Next player"
Teller = 0
End If

If Me.Dobbel1.Caption = 1 Then Score1 = Score1 + 1
If Me.Dobbel2.Caption = 1 Then Score1 = Score1 + 1
If Me.Dobbel3.Caption = 1 Then Score1 = Score1 + 1
If Me.Dobbel4.Caption = 1 Then Score1 = Score1 + 1
If Me.Dobbel5.Caption = 1 Then Score1 = Score1 + 1
Me.Eenen.Value = Score1

If Me.Dobbel1.Caption = 2 Then Score2 = Score2 + 1
If Me.Dobbel2.Caption = 2 Then Score2 = Score2 + 1
If Me.Dobbel3.Caption = 2 Then Score2 = Score2 + 1
If Me.Dobbel4.Caption = 2 Then Score2 = Score2 + 1
If Me.Dobbel5.Caption = 2 Then Score2 = Score2 + 1
Me.tweeen.Value = Score2

If Me.Dobbel1.Caption = 3 Then Score3 = Score3 + 1
If Me.Dobbel2.Caption = 3 Then Score3 = Score3 + 1
If Me.Dobbel3.Caption = 3 Then Score3 = Score3 + 1
If Me.Dobbel4.Caption = 3 Then Score3 = Score3 + 1
If Me.Dobbel5.Caption = 3 Then Score3 = Score3 + 1
Me.Drieen.Value = Score3

If Me.Dobbel1.Caption = 4 Then Score4 = Score4 + 1
If Me.Dobbel2.Caption = 4 Then Score4 = Score4 + 1
If Me.Dobbel3.Caption = 4 Then Score4 = Score4 + 1
If Me.Dobbel4.Caption = 4 Then Score4 = Score4 + 1
If Me.Dobbel5.Caption = 4 Then Score4 = Score4 + 1
Me.Vieren.Value = Score4

If Me.Dobbel1.Caption = 5 Then Score5 = Score5 + 1
If Me.Dobbel2.Caption = 5 Then Score5 = Score5 + 1
If Me.Dobbel3.Caption = 5 Then Score5 = Score5 + 1
If Me.Dobbel4.Caption = 5 Then Score5 = Score5 + 1
If Me.Dobbel5.Caption = 5 Then Score5 = Score5 + 1
Me.Vijven.Value = Score5

If Me.Dobbel1.Caption = 6 Then Score6 = Score6 + 1
If Me.Dobbel2.Caption = 6 Then Score6 = Score6 + 1
If Me.Dobbel3.Caption = 6 Then Score6 = Score6 + 1
If Me.Dobbel4.Caption = 6 Then Score6 = Score6 + 1
If Me.Dobbel5.Caption = 6 Then Score6 = Score6 + 1
Me.Zessen.Value = Score6

If Me.Eenen.Value = 3 Then Me.Kind.Visible = True

End If
End Sub

Private Sub Tekst31_Click()

Private Sub Tweeen_Click()

End Sub

-----------------

Ik hoop dat het een beetje duidelijk is zo en nu moet ik nog 4 spelers toevoegen, maar ik weet niet echt hoe ik dat moet doen.

Acties:
  • 0 Henk 'm!

  • Matis
  • Registratie: Januari 2007
  • Laatst online: 22:28

Matis

Rubber Rocket

Gebruik aub de [code]-tags: Overzicht van UBB-codes #tag_code

Dat maakt het een stuk leesbaarder.

If money talks then I'm a mime
If time is money then I'm out of time


Acties:
  • 0 Henk 'm!

  • arnob
  • Registratie: Juli 2000
  • Niet online
misschien voelde je het zelf al aan maar als je tig keer dezelfde code moet typen dan kan het meestal handiger.
Je zou de controls in een array kunnen zetten of de controls zelf als array kunnen gebruiken.
Als je meerdere spelers gaat invoeren wil je tenslotte ook niet al je code x hoeveelheid spelers hebben. Dit kan dus ook waarschijnlijk beter door gebruik te maken van arrays.
Dat is misschien ook de oefening?

Acties:
  • 0 Henk 'm!

  • Haan
  • Registratie: Februari 2004
  • Laatst online: 20:58

Haan

dotnetter

Het is iets beter dan je vorige topic, maar nog niet genoeg ben ik bang ;)

Wordt in je opdracht niet een klein beetje uitgelegd hoe je ongeveer te werk moet gaan (gebruik van classes bijvoorbeeld?)

Kater? Eerst water, de rest komt later


Acties:
  • 0 Henk 'm!

Verwijderd

Beste vinom, dit is geen uitleg, dit is een flinke lap code dumpen en dan hopen dat wij het voor je invullen. ;) We houden op GoT erg veel van elkaar, maar niet zoveel dat we jou al het werk uit de handen nemen.

Een speler is eigenlijk niets anders dan enkele variabelen: z'n huidige score en hoe vaak hij heeft geworpen (0, 1 of 2 keer, daarna wordt het weer gereset). Om voor elke speler een aparte score te hebben, kun je gebruik maken van een array (of van een klasse, maar dat voert wat te ver denk ik).

Grijp google/je boek/je opdrachtomschrijving er maar eens bij om wat meer over arrays en het gebruik ervan op te zoeken. :)

Acties:
  • 0 Henk 'm!

  • vinom
  • Registratie: Augustus 2009
  • Laatst online: 00:10
Nee, ik verwacht ook helemaal niet dat jullie het voor mij invullen. Ik laat zien wat ik momenteel heb. Vaak is een klein stukje begin code meer dan genoeg om mij verder te helpen en ik begrijp hieruit dat ik dus met een array moet gaan werken.

Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
vinom schreef op maandag 04 januari 2010 @ 17:44:
en ik begrijp hieruit dat ik dus met een array moet gaan werken.
...en met code tags ;)

Strip ik de code uit je startpost dan hou ik over:
vinom schreef op maandag 04 januari 2010 @ 17:24:
Goede middag,

Ik maak weer een nieuw topic aan, omdat het vorige terecht op slot is gegaan, maar nu kan ik het wat beter uitleggen:

Voor degene die het nog niet gelezen hadden: Ik heb een opdracht van school en dat is Yahtzee maken in VBA.
Tot nu toe mijn code:
<snip>
Ik hoop dat het een beetje duidelijk is zo en nu moet ik nog 4 spelers toevoegen, maar ik weet niet echt hoe ik dat moet doen.
Strip ik daar weer alle niet-relevante tekst uit dan hou ik over:
vinom schreef op maandag 04 januari 2010 @ 17:24:
Ik heb een opdracht van school en dat is Yahtzee maken in VBA.
*dump lap code*
en nu moet ik nog 4 spelers toevoegen, maar ik weet niet echt hoe ik dat moet doen.
Hoe precies voldoet deze tekst aan wat NMe in "VBA Yahtzee" zegt?

Misschien is het verstandig even onze Quickstart door te nemen.

[ Voor 73% gewijzigd door RobIII op 04-01-2010 21:09 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij

Pagina: 1

Dit topic is gesloten.