home *** CD-ROM | disk | FTP | other *** search
/ Planet Source Code Jumbo …e CD Visual Basic 1 to 7 / 3_2004-2005.ISO / Data / Zips / Singing_Re18322012222004.psc / blitz.ctl < prev    next >
Text File  |  2004-12-22  |  4KB  |  182 lines

  1. VERSION 5.00
  2. Begin VB.UserControl blitz 
  3.    BackStyle       =   0  'Transparent
  4.    ClientHeight    =   3570
  5.    ClientLeft      =   0
  6.    ClientTop       =   0
  7.    ClientWidth     =   2385
  8.    MaskColor       =   &H000000FF&
  9.    MaskPicture     =   "blitz.ctx":0000
  10.    Picture         =   "blitz.ctx":97C2
  11.    ScaleHeight     =   3570
  12.    ScaleWidth      =   2385
  13.    Windowless      =   -1  'True
  14.    Begin VB.Timer singTimer 
  15.       Enabled         =   0   'False
  16.       Interval        =   10
  17.       Left            =   1680
  18.       Top             =   2520
  19.    End
  20.    Begin VB.Timer eyeTimer 
  21.       Enabled         =   0   'False
  22.       Interval        =   100
  23.       Left            =   1200
  24.       Top             =   2520
  25.    End
  26.    Begin Project1.EyeLids EyeLids1 
  27.       Height          =   375
  28.       Left            =   1090
  29.       TabIndex        =   1
  30.       Top             =   1260
  31.       Width           =   555
  32.       _extentx        =   847
  33.       _extenty        =   661
  34.       stateye         =   2
  35.    End
  36.    Begin Project1.Mouth Mouth1 
  37.       Height          =   1080
  38.       Left            =   900
  39.       TabIndex        =   0
  40.       Top             =   1440
  41.       Visible         =   0   'False
  42.       Width           =   1080
  43.       _extentx        =   1905
  44.       _extenty        =   1905
  45.    End
  46. End
  47. Attribute VB_Name = "blitz"
  48. Attribute VB_GlobalNameSpace = False
  49. Attribute VB_Creatable = True
  50. Attribute VB_PredeclaredId = False
  51. Attribute VB_Exposed = False
  52. Option Explicit
  53. Private bSing             As Boolean
  54. Private lngEyeState       As Long
  55. Private lngMouthState     As Long
  56. Private m_Song            As String
  57.  
  58. Private Sub eyeTimer_Timer()
  59.  
  60.   Select Case lngEyeState
  61.    Case 1
  62.     EyeLids1.State = Int(Rnd * 4) + 1
  63.     eyeTimer.Interval = Int(10001 * Rnd) + 200
  64.    Case 2, 3, 4, 5
  65.     EyeLids1.State = Int(Rnd * 5) + 1
  66.     eyeTimer.Interval = Int(201 * Rnd) + 200
  67.    Case 6
  68.     EyeLids1.State = eClose
  69.     eyeTimer.Interval = 500
  70.   End Select
  71.   DoEvents
  72.   lngEyeState = lngEyeState + 1
  73.   If lngEyeState > 6 Then
  74.     lngEyeState = 1
  75.   End If
  76.  
  77. End Sub
  78.  
  79. Private Sub singTimer_Timer()
  80.  
  81.   DoEvents
  82.   Select Case lngMouthState
  83.    Case 0
  84.     Mouth1.Visible = True
  85.     Mouth1.State = 0
  86.     singTimer.Interval = 2000
  87.     PlaySoundAnyBuffer m_Song, 100
  88.    Case 1
  89.     Mouth1.State = 1
  90.     singTimer.Interval = 2500
  91.    Case 2
  92.     Mouth1.State = 0
  93.     singTimer.Interval = 2000
  94.    Case 3
  95.     Mouth1.State = 1
  96.    Case 4
  97.     Mouth1.Visible = False
  98.     If bSing Then
  99.       singTimer.Interval = Int(2001 * Rnd + 2000)
  100.       '      bSing = False
  101.      Else
  102.       singTimer.Interval = 10
  103.       singTimer.Enabled = False
  104.     End If
  105.   End Select
  106.   lngMouthState = lngMouthState + 1
  107.   If lngMouthState = 5 Then
  108.     lngMouthState = 0
  109.   End If
  110.  
  111. End Sub
  112.  
  113. Public Property Get Song() As String
  114.  
  115.   Song = m_Song
  116.  
  117. End Property
  118.  
  119. Public Property Let Song(ByVal fileName As String)
  120.  
  121.   m_Song = fileName
  122.   PropertyChanged "Song"
  123.  
  124. End Property
  125.  
  126. Public Sub StartMe(Optional ByVal bStartSinging As Boolean = False)
  127.  
  128.  
  129.   eyeTimer.Enabled = True
  130.   Mouth1.Visible = False
  131.   Mouth1.State = 0
  132.   If bStartSinging Then
  133.     bSing = Not bSing
  134.     If bSing Then
  135.       singTimer.Enabled = True
  136.     End If
  137.   End If
  138.  
  139. End Sub
  140.  
  141. Private Sub UserControl_InitProperties()
  142.  
  143.   EyeLids1.Visible = True
  144.   m_Song = "blitz.wav"
  145.   lngEyeState = 1
  146.  
  147. End Sub
  148.  
  149. Private Sub UserControl_MouseDown(Button As Integer, _
  150.                                   Shift As Integer, _
  151.                                   X As Single, _
  152.                                   Y As Single)
  153.  
  154.   bSing = Not bSing
  155.   If bSing Then
  156.     singTimer.Enabled = True
  157.   End If
  158.  
  159. End Sub
  160.  
  161. Private Sub UserControl_ReadProperties(PropBag As PropertyBag)
  162.  
  163.   m_Song = PropBag.ReadProperty("Song", "blitz.wav")
  164.  
  165. End Sub
  166.  
  167. Private Sub UserControl_Resize()
  168.  
  169.   Width = 2285
  170.   Height = 3570
  171.  
  172. End Sub
  173.  
  174. Private Sub UserControl_WriteProperties(PropBag As PropertyBag)
  175.  
  176.   PropBag.WriteProperty "Song", m_Song, "blitz.wav"
  177.  
  178. End Sub
  179.  
  180. ':)Code Fixer V2.8.0 (22/12/2004 2:17:48 AM) 5 + 123 = 128 Lines Thanks Ulli for inspiration and lots of code.
  181.  
  182.