クリップボード履歴ソフトCliborを公開中!

VBでゲームを作ろう4

Visual Basicでゲームを作ろう4

メイン画面の作成

次に、敵をクリックして倒すメイン画面の作成になります。
スタートボタンを押すと複数の敵が表示され、制限時間までクリックし倒していきます。倒すとポイントが加算され、制限時間を迎えると終了です。

まず新しいフォームをプロジェクトに追加します。
メニューの「プロジェクト」→「Windows フォームの追加」をクリックします。

ファイル名は「Form2.vb」のまま追加ボタンをクリックします。

ソリューションエクスプローラのForm2.vbをクリックするとデザインが表示されます。

以下のようにフォームのプロパティを設定します。

プロパティ 備考
Name F_Main フォームなのでF_とした
FormBorderStyle FixedSingle フォームのサイズを変更させない
MaximizeBox False 最大化はさせない
Size 400, 520 大体これくらい
StartPosition CenterScreen 画面の中央に表示されるようにする
Text ClickBuster (メイン画面) 任意

次に以下のコンポーネントを追加します。

スタートボタンの追加(Button)

プロパティ 備考
Name B_Start
Text スタート

「残り時間」ラベルの追加(Label)

プロパティ 備考
Name L_Jikan
Text 残り時間
Font->Size 12

「得点」ラベルの追加(Label)

プロパティ 備考
Name L_Tokuten
Text 得点
Font->Size 12

「合計得点」ラベルの追加(Label) 得点なので右寄せで表示します。

プロパティ 備考
Name L_Sum
Text 0
AutoSize False
Font->Size 12
TextAlign TopRight
Size 130, 20

「残り時間」プログレスバーの追加(ProgressBar)

プロパティ 備考
Name PG_Jikan
Maximum 10 とりあえず10に指定
Value 10 とりあえず10に指定

敵が表示される範囲のパネルを追加(Panel) 敵はこのパネル上でしか動きません。

プロパティ 備考
Name P_Enemy
BackColor White
BorderStyle Fixed3DFixed3D

ここでVBゲーム3で作ったメニュー画面(F_Menu)の初級ボタンのクリックイベントに以下を記述します。

    ' 初級ボタンクリック
    Private Sub B_Syokyu_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles B_Syokyu.Click
        ' メイン画面の表示
        F_Main.Show()
        ' メニュー画面を隠します
        Me.Hide()
    End Sub

次にメイン画面(F_Main)のFormClosedイベントに以下を記述します。
閉じられた場合にメニュー画面を表示します。

    ' フォームが閉じられる際のイベント
    Private Sub F_Main_FormClosed(ByVal sender As System.Object, 
    	ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed
        ' メニュー画面の表示
        F_Menu.Show()
    End Sub

ここで一度実行しましょう。
トップ画面の初級ボタンを押すとメイン画面が表示されます。
メイン画面を×ボタンで閉じると
トップ画面に戻ります。
トップ画面では終了ボタンを押すとゲームが終了になります。

これで基本的な流れはできました。
次は敵を作っていきましょう。

  • Facebook
  • Hatena
  • twitter
  • Google+

サイトについて

Cliborに関する匿名のアンケートやご要望はこちらからCliborアンケート


Amunsへ直接のお問い合わせはこちらからContact

寄付のお願い

Cliborはフリーソフトですが寄付歓迎です。 →寄付のお願い
PAGETOP
Copyright © amuns:code All Rights Reserved.
Powered by WordPress & BizVektor Theme by Vektor,Inc. technology.