Visual Basic Console -每次使用都会随机生成的整数



我在这里要做的是创建一个骰子,每次我要求它在方程中使用时都会滚动。例如,如果我创建一个d10并使用以下代码:

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

是否有办法让我在代码中再次使用d10,例如,对于类似于Enemyhit = d10 + enemystr的东西,并使d10两次"滚动"?我已经试过这样做了

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变量,而是重用返回一个随机整数的函数:

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

最新更新