>'==============================================================
>Public Shared Sub InitializeGlobals()
> If (s_alreadyInitialized = True) Then Return
> g_blackPen = New Systera.Drawing.Pen(Color.Black)
> g_whitePen = New System.Drawing.Pen(Color.White)
> g_ImageAttribute = New _
> System.Drawing.Imaging.ImageAttributes
> g_ImageAttribute.SetColorKey(Color.White, Color.White)
> g_boldFont = New Font(FontFamily.GenericSerif, _
> 10, FontStyle.Bold)
> g_smallTextFont = New Font(FontFamily.GenericSansSerif, _
> 8, FontStyle.Regular)
> g_blackBrush = New SolidBrush(System.Drawing.Color.Black)
> g_greenBrush = New SolidBrush(System.Drawing.Color.LightGreen)
> g_yellowBrush = New SolidBrush(System.Drawing.Color.Yellow)
> g_redBrush = New SolidBrush(System.Drawing.Color.Red)
> s_alreadyInitialized = True
>End Sub
>'====================================================
>'Подход 3: Возвратить массив связанных ресурсов.
>' Кэшировать ресурсы локально, чтобы при многократных
>' запросах не загружались (напрасно) их дубликаты
>'====================================================
>Private Shared m_CaveMan_Bitmap1 As Bitmap
>Private Shared m_CaveMan_Bitmap2 As Bitmap
>Private Shared m_CaveMan_Bitmap3 As Bitmap
>Private Shared m_CaveMan_Bitmap4 As Bitmap
>Private Shared m_colCaveManBitmaps As _
> System.Collections.ArrayList
>'--------------------------------------------------
>'Создать и загрузить массив изображений для спрайта
>'--------------------------------------------------
>Public Shared Function g_CaveManPictureCollection() As _
> System.Collections.ArrayList
> 'Изображения загружаются лишь в том случае, если мы их еще не загрузили
> If (m_CaveManBitmap1 Is Nothing) Then
> '-----------------------------------------------------------------
> 'Загрузить изображения. Эти изображения хранятся в виде
> 'встроенных ресурсов в нашем двоичном приложении
> '
> 'Загрузка изображений из внешних файлов осуществляется аналогичным
> 'образом, но выполнить ее проще (нам достаточно лишь указать
> 'имя файла в конструкторе растровых изображений).
> '-----------------------------------------------------------------
> 'Получить ссылку на нашу двоичную сборку
> dim thisAssembly as System.Reflection.Assembly = _
> System.Reflection.Assembly.GetExecutingAssembly()
> 'Получить имя сборки
> Dim thisAssemblyName As System.Reflection.AssemblyName = _
> thisAssembly.GetName()
> Dim assemblyName As String = thisAssemblyName.Name
> 'Загрузить изображения в виде двоичных потоков из нашей сборки
> m_CaveMan_Bitmap1 = New System.Drawing.Bitmap( _
> thisAssembly.GetManifestResourceStream( _