Visual Basic 控制台 - 每次使用时随机生成的整数

Visual Basic Console - Integer that would randomly generate every times its used

我基本上想在这里做的是创建一个骰子,每次我要求将它用于方程式时都会掷骰子。例如,如果我创建一个 d10 并使用以下代码:

Dim PlayerStr As Integer
PlayerStr = 2
Dim PlayerHit As Integer    
PlayerHit = d10 + PlayerStr

有没有办法让我稍后在代码中再次使用 d10,例如像这样 Enemyhit = d10 + enemystr 并且 d10 两次都是 "rolled"?我试过这样做

Module Module1

    Public RNG As New Random
    Public d10 As Integer
    d10 = RNG.next(1, 11)
Sub Main ()
...
End Sub

End Module

但据我所知,它会在程序启动后滚动 d10,然后在每次被告知使用 d10 时使用该值,还是我弄错了?

与其重新使用 Integer 变量,不如重新使用 returns 随机整数的函数:

Private m_rng As New Random()

Private Function Roll()

    Dim d10 As Integer
    d10 = m_rng.next(1, 11)

    Return d10

End Function

然后像这样使用它:

PlayerHit = Roll() + PlayerStr

并且:

Enemyhit = Roll() + enemystr