'Importsステートメントで名前空間の参照を簡単にします。
Imports System.Drawing
Imports System.Windows.Forms
Imports Wakaba
Module Game
'オブジェクト変数を宣言します。
Private w As Wakaba.Helper
Sub Main()
Try
'オブジェクト変数をインスタンス化します。
w = New Wakaba.Helper
'若葉ヘルパーを初期化します。
w.Initialize()
'背景用スプライトを設定する
w.SpriteCreate("背景用", My.Resources.wall, Helper.TransparentColor.None)
w.SpritePosition("背景用", 1, 0, 0)
w.SpriteShow("背景用")
'描画用スプライトを設定する
w.SpriteCreate("描画用", 640, 480)
w.SpritePosition("描画用", 0, 0, 0)
w.SpriteShow("描画用")
'ウィンドウを閉じるまで画面を更新します。
Do
'乱数のシード値を設定します。
Dim objRnd As New Random(DateTime.Now.Millisecond)
'スプライトをロックしてビットマップオブジェクトを取得します。
Dim objBmp As Bitmap = w.SpriteLock("描画用")
Dim objGrp As Graphics = Graphics.FromImage(objBmp)
For i As Integer = 0 To 49
'GDI+で線をランダムに描画します。
Dim objPen As New Pen(Color.FromArgb(objRnd.[Next](256), objRnd.[Next](256), objRnd.[Next](256)), 4)
objGrp.DrawLine(objPen, objRnd.[Next](640), objRnd.[Next](480), objRnd.[Next](640), objRnd.[Next](480))
objPen.Dispose()
Next
objGrp.Dispose()
'スプライトをアンロックします。
w.SpriteUnlock("描画用", objBmp)
For j As Byte = 0 To 254
'スプライトを回転させます。
If w.WindowClosing Then
Exit For
End If
w.SpriteRotation("描画用", j)
w.SpriteTransparent("描画用", CByte((255 - j)))
w.ScreenRefresh(True)
Next
'スプライトを透明で塗りつぶします。
w.SpriteFillColor("描画用")
Loop While Not w.WindowClosing
Catch ex As Exception
'エラーメッセージを表示します。
MessageBox.Show(ex.Message & ex.StackTrace)
End Try
'若葉ヘルパーのオブジェクトを破棄します。
w.Dispose()
End Sub
End Module