Make your own free website on Tripod.com

Animated Dice

This is similar to the dice program except that I have added animation to the program. To add the animated effect, you need to include the timer control into your program. In the timer's properties windows, set the timer enabled to false and the  interval to 10. You can change the interval to any number you want. Under the roll dice command, set the timer to enabled. You also need to create a subroutine and name it as roll. Under the roll subroutine, enter the codes that display the different faces of the dice. To create the animated effect,  you need to declare a global variable x and assign an initial value of 0 to it, then include the statement  x=x+10 so that the value of x increase 10 units after an interval of 10 milliseconds. Finally, type in the statement

If x < 1000 Then
roll
Else
Timer1.Enabled = False
End If


under the timer subroutine to stop the timer. When you click the button roll dice, you will see that faces of the dice will be  changing and the come to a stop.

 

The Interface

 

 

The Codes


Dim x As Integer

Sub roll( )
x = x + 10
Randomize Timer
n = Int(1 + Rnd * 6)
For i = 0 To 6
Shape1(i).Visible = False
Next
If n = 1 Then
Shape1(3).Visible = True
Shape2.FillColor = &HC0C0C0

End If
If n = 2 Then
Shape1(2).Visible = True
Shape1(4).Visible = True
Shape2.FillColor = &H8080FF
End If
If n = 3 Then
Shape1(2).Visible = True
Shape1(3).Visible = True
Shape1(4).Visible = True
Shape2.FillColor = &H80FF&
End If
If n = 4 Then
Shape1(0).Visible = True
Shape1(2).Visible = True
Shape1(4).Visible = True
Shape1(6).Visible = True
Shape2.FillColor = &HFFFF00
End If
If n = 5 Then
Shape1(0).Visible = True
Shape1(2).Visible = True
Shape1(3).Visible = True
Shape1(4).Visible = True
Shape1(6).Visible = True
Shape2.FillColor = &HFFFF&
End If
If n = 6 Then
Shape1(0).Visible = True
Shape1(1).Visible = True
Shape1(2).Visible = True
Shape1(4).Visible = True
Shape1(5).Visible = True
Shape1(6).Visible = True
Shape2.FillColor = &HFF00FF
End If
End Sub
Private Sub Command1_Click()
Timer1.Enabled = True
x = 0
End Sub

Private Sub Form Load()

End Sub

Private Sub Timer1_Timer()
If x < 1000 Then
roll
Else
Timer1.Enabled = False
End If

End Sub

 

The Interface when you run the program and click the roll die button


[Back  to Games Page]