Loops 循环与特定键匹配的Lua表,然后将值设置为变量

Loops 循环与特定键匹配的Lua表,然后将值设置为变量,loops,lua,lua-table,Loops,Lua,Lua Table,我有一张桌子,看起来像这样: local weapons = {[46]= "Megapositron", [173]= "Sunflare", [702]= "raven"} 我还有一个变量: weaponid 可变武器ID将包含来自武器46173702的一个密钥 我搞不懂的是如何检查武器id是否匹配其中一个键,当武器id匹配一个键时,我需要它将键值分配给另一个名为weaponname的变量 那么假设武器ID=173 武器名称='Sunflare' local weaponname =

我有一张桌子,看起来像这样:

local weapons = {[46]= "Megapositron", [173]= "Sunflare", [702]= "raven"}
我还有一个变量:

weaponid 
可变武器ID将包含来自武器46173702的一个密钥

我搞不懂的是如何检查武器id是否匹配其中一个键,当武器id匹配一个键时,我需要它将键值分配给另一个名为weaponname的变量

那么假设武器ID=173 武器名称='Sunflare'

local weaponname = weapons[weaponid]
如果id与任何密钥都不匹配,weaponname将为零

weaponname = weapons[weaponid] or weaponname

这样,如果没有与新id关联的武器,则旧武器名称将保留。

哇,这么简单吗?谢谢约翰和简!我花了几个小时试图在一个for循环中完成这项工作。你可能会想使用未知武器,而不是最后一种武器的名称。