私は何時間もかけて理解しようとしてきた問題を抱えていますが、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)を連結しようとするとエラーが発生します。すべてが正しいように見えるか、そう思った。私は完全に明白な何かを逃していますか?ありがとう!