2015-07-13 165 views
1

我把我所有的朋友的武器统计列表中的一个RP运行并将其转换为一个生成器,但我遇到的问题排除了基于其他值的问题。例如,我不想要辅助自动步枪。有没有一种方法可以根据另一个输出排除某些值?从表中选择一个随机值,基于另一个随机值

local myclasses = { 'Primary', 'Secondary', 'Heavy' } 
local myprimaries = { 'Auto Rifle', 'Scout Rifle', 'Pulse Rifle', 'Sniper  Rifle', 'Hand Cannon' } 
local mysecondaries = { 'Shotgun', 'Sidearm', 'SMG/SEG' } 
print(myclasses[ math.random(#myclasses) ]) 
if 'Primary' then 
    print(myprimaries[ math.random(#myprimaries) ]) 
elseif 'Secondary' then 
    print(mysecondaries[ math.random(#mysecondaries) ]) 
end 

回答

3

问题是与条件:

if 'Primary' then 

将赋值为真,因为任何价值判断为真时,除了falsenil

你想要的是:

local rand_class = myclasses[math.random(#myclasses)] 
print(rand_class) 
if rand_class == 'Primary' then 
    print(myprimaries[math.random(#myprimaries)]) 
elseif rand_class == 'Secondary' then 
    print(mysecondaries[math.random(#mysecondaries)]) 
end 

而且不要忘了种子随机。

+0

会做。万分感谢。 – Ruckified