在结构组中为变量创建List(Of)或Index

时间:2013-04-16 20:15:55

标签: vb.net dynamic

Player1HandGroup(Number).QuantityInteger是玩家在我的游戏中每张特定牌的牌数。

Player1handgroup有28个索引。这场比赛有5名球员。

目前我还有

Player1HandGroup(Number).QuantityInteger
Player1HandGroup(Number).QuantityInteger2
Player1HandGroup(Number).QuantityInteger3
Player1HandGroup(Number).QuantityInteger4
Player1HandGroup(Number).QuantityInteger5

代表游戏中的每个玩家。

每次我处理不同的播放器时代码都是明智的,我必须经常重复相同的代码,才能使用正确的播放器。

我想知道是否可以在Quantity整数中添加索引,或者动态地将数字添加到代表每个玩家的数量整数的末尾,以便我可以清理我的代码。

Structure Group
        Public CardNameString, CardType As String
        Public QuantityInteger2, QuantityInteger3, QuantityInteger4, QuantityInteger5, DamageInteger, ID, HitPoints As Integer
        Public QuantityInteger() As Integer
    End Structure

Private Sub LunchMoneyMainForm_load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

DeckGroup(0).QuantityInteger(0) = 4
    DeckGroup(1).QuantityInteger(0) = 1
    DeckGroup(2).QuantityInteger(0) = 4
    DeckGroup(3).QuantityInteger(0) = 4
    DeckGroup(4).QuantityInteger(0) = 4
    DeckGroup(5).QuantityInteger(0) = 4
    DeckGroup(6).QuantityInteger(0) = 4
    DeckGroup(7).QuantityInteger(0) = 4
    DeckGroup(8).QuantityInteger(0) = 1
    DeckGroup(9).QuantityInteger(0) = 1
    DeckGroup(10).QuantityInteger(0) = 1
    DeckGroup(11).QuantityInteger(0) = 1
    DeckGroup(12).QuantityInteger(0) = 8
    DeckGroup(13).QuantityInteger(0) = 4
    DeckGroup(14).QuantityInteger(0) = 10
    DeckGroup(15).QuantityInteger(0) = 1
    DeckGroup(16).QuantityInteger(0) = 4
    DeckGroup(17).QuantityInteger(0) = 8
    DeckGroup(18).QuantityInteger(0) = 4
    DeckGroup(19).QuantityInteger(0) = 8
    DeckGroup(20).QuantityInteger(0) = 1
    DeckGroup(21).QuantityInteger(0) = 4
    DeckGroup(22).QuantityInteger(0) = 4
    DeckGroup(23).QuantityInteger(0) = 4
    DeckGroup(24).QuantityInteger(0) = 4
    DeckGroup(25).QuantityInteger(0) = 4
    DeckGroup(26).QuantityInteger(0) = 4
    DeckGroup(27).QuantityInteger(0) = 1


 Private Sub StartButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles StartButton.Click

For StartHands = 0 To 4
            Call RandomNumberGenerator()
            'Cardslots Player1
            If CardTypeArray(StartHands) = "" Then
                If DeckGroup(Number).QuantityInteger(0) > 0 Then
                    DeckGroup(Number).QuantityInteger(0) -= 1
                    Player1HandGroup(Number).QuantityInteger(0) += 1
                    CardCheckBoxArray(StartHands).Text = Player1HandGroup(Number).CardNameString
                    CardTypeArray(StartHands) = Player1HandGroup(Number).CardType
                    Me.NumberArray(StartHands) = Number
                Else
                    'Recall Procedure if Generated Random Number is not allowed due to QuantityInteger <= 0
                    Call StartButton_Click(sender, e)
                End If
            End If
        Next StartHands

这些是与此相关的代码的主要部分。我包括了事件程序部分,以显示每件作品属于哪些程序。

0 个答案:

没有答案