Lua随机函数混乱



我正在尝试用lua设计一个游戏(这是我的第一次尝试)。现在我只能使用math.random和math.randomseed()函数。我浏览了数学图书馆,但它更让我困惑。我想随机化3个函数(意味着我想随机调用3个函数)。如何使用math.random()函数实现此操作?

此外,使用哪个随机函数更好、更安全?math.random()还是math.randomseed()?

请帮助

第一次澄清。函数random.randomseed()初始化随机数生成器。这意味着您应该在程序开始时的某个地方调用它,通常是在第一次调用random.random()之前。

现在,为了解决您的问题并随机调用三个函数,您必须使用random.random()生成的数字来调用这些函数(数字从0到1)。这是一种方法:

local function first()
    …
end
local function second()
    …
end
local function third()
    …
end
random.randomseed(os.time()) -- initialize random number generator with time
local number = random.random()
if number < 0.3333 then
    first()
elseif number < 0.6666 then
    second()
else
    third()

现在,您可以在循环中执行此操作,这样您的函数将被多次调用。您也可以更改概率(在上面的代码中,从长远来看,调用first()的频率将类似于second()third())。如果需要更频繁地调用其中一个函数,只需调整If条件中的数字即可)。

最新更新