У меня есть проблема, которую я часами пытался выяснить, но, поскольку Lua все еще относительно нов для меня, я не могу понять, почему она не работает.
Вот что я пытаюсь сделать. Если я добавляю элемент в первый раз, он не будет отображаться в таблице spikeRates, поэтому мне нужно добавить его. Если раньше я добавил элемент, но никогда не использовал элемент, с которым добавлял, то мне нужно отразить это в таблице spikeRates [itemSpiked]. Код, который я написал, выглядит следующим образом, но не заполняет таблицу.
spikeRates={}
itemSpiked = "leather"
mySpike = "iron"
if not spikeRates[itemSpiked] then
spikeRates[itemSpiked]={}
spikeRates[itemSpiked][mySpike]={}
print("This is your first time spiking "..itemSpiked.."!")
elseif not spikeRates[itemSpiked][mySpike] then
spikeRates[itemSpiked][mySpike]={Failure=0,Success=0}
print("This is your first time spiking "..itemSpiked.." with "..mySpike.."!")
end
for i,v in pairs(spikeRates) do
print(i .. ": " .. v)
end
При запуске я получаю сообщение об ошибке при попытке объединить значение nil (v) для печати базы данных. Все выглядит правильно, или я так думал. Я что-то упускаю совершенно очевидное? Спасибо!