我正在尝试用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条件中的数字即可)。