Visual Basic .NET 2010 でモノポリー ボードと ludo ゲームを作成したいのですが、ボードを
どのように表現すればよいですか? ピクチャーボックスを考えていたのですが、個別に扱うのが面倒です。画像ボックスの配列を作成できますか?
また、私は初心者のプログラマーなので、このゲームに役立つ Visual Basic の機能を教えてください。
Visual Basic .NET 2010 でモノポリー ボードと ludo ゲームを作成したいのですが、ボードを
どのように表現すればよいですか? ピクチャーボックスを考えていたのですが、個別に扱うのが面倒です。画像ボックスの配列を作成できますか?
また、私は初心者のプログラマーなので、このゲームに役立つ Visual Basic の機能を教えてください。
フォーム デザイナーでコントロールを追加する代わりに、いつでも VB (および C#) でプログラムによって追加できます。これにより、2 次元配列のように好きな場所に自由に格納できます。Form.Controls
それらも必ずプロパティに追加してください。
Dim board as New PictureBox(M-1, N-1) {}
myform.SuspendLayout() ' Diminishes flicker.
For i As Integer = 0 To M - 1
For k As Integer = 0 To N - 1
Dim pic = New PictureBox()
'TODO: set the properties of the PictureBox here
board(i, k) = pic
myForm.Controls.Add(pic)
Next k
Next i
myForm.ResumeLayout()
また、フォームに直接追加するのではなく、に追加するPictureBoxes
ことも検討してください。TableLayoutPanel
Board
また、フォーム イベント ハンドラーでロジックを実行する代わりに、クラスを作成し、そのクラスですべてのボード ロジックを処理することをお勧めします。Player
orのような他のクラスGame
もScore
同様に役立ちます。
PictureBoxes の 2-D 配列を作成するのではなくSquare
、正方形の状態や正方形にとどまる図のリスト、または特別なオブジェクトへの参照などの追加情報を格納できるクラスの配列を作成することをお勧めします。正方形などに適用されるルール。ゲームのデザインには大きな自由があります。ゲーム ロジックを UI の詳細から切り離したスマートなデザインは、はるかに扱いやすく、より簡単に進化させることができます。
PictureBox を使用する代わりに、ボード上の正方形に関連するすべての UI 関連ロジックをカプセル化する UserControl を作成することを検討します。たとえば、ボード上のすべての四角形に特定の右クリック コンテキスト メニューを表示したり、ダブルクリック時に特定の操作を実行したりすることができます。モノポリーでは、各正方形にプロパティ名、価格、色などを付けたい場合があります.