Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

attempt to index a number value (field '?') when trying to write a variable to the screen

edited December 2015 Posts: 2

I'm trying to learn about tables within tables and how to reference variables within.

The following code errors out with main:38 attempt to index a number value (field '?') which is this line: text(globalIndex[x][y].vA, codX, codY) where I'm trying to print the variable vA located in globalIndex[x][y]

I had this working and then started to do other things. then it stopped, and what I thought I understood, now I don't.

Can someone explain what's going on and what I'm doing wrong?

function setup()

math.randomseed( os.time()) -- Generate random seed

w = 20
h = 20

globalIndex = {}

fontSize(10)

-- generate
for x = 1 , w do
globalIndex[x] = {}

for y = 1 , h do

globalIndex[x][y] = populateCell(x,y)

end
end
end

function draw()

-- display
for x = 1 , w do
for y = 1 , h do

local codX = (x * 15)
local codY = (y * 15) + 300

text(globalIndex[x][y].vA, codX, codY)

end
end

end

function populateCell(x,y)
print("Populating:" .. x .." " .. y)
local vA = math.random(0,255)
local vB = math.random(0,255)
local vC = math.random(0,255)
local vD = math.random(0,255)
local vE = math.random(0,255)

return vA, vB, vC, vD, vE
end
Tagged: