Trying to spawn multiple Display Images within a class

When I spawn a new block, the image doesn’t appear, but through debugging I can see that It has the correct x and y coordinates.  What is happening??

I am trying to make a stacking game for some summer fun.  I am very new to Corona SDK and am been working on this for several hours.  

–testtt

local physics = require “physics”

physics.start()

physics.setGravity( 0, 0 )

local mydata = require( “mydata” )

local storyboard = require (“storyboard”)

local scene = storyboard.newScene()

local block = require (“block”)

counter =18

mydata.score = 0

gameStarted = false

direction = 5

scale = 0

function scene:createScene(event)

local screenGroup = self.view

local background = display.newImage(“bg.png”)

screenGroup:insert(background)

    bg = display.newImageRect(‘bg.png’,900,1425)

bg.anchorX = 0

bg.anchorY = 1

bg.x = 0

bg.y = display.contentHeight

bg.speed = 4

screenGroup:insert(bg)

blocks = display.newImage(“block16.png”, 320, 40)

blocks.anchorX = 0

blocks.x = 390

blocks.y = 1183

objectb = blocks

objectb.size = 320

screenGroup:insert(blocks)

block16 = display.newImage(“block16.png”, 320, 40)

block16.anchorX = 0

block16.x = 0

block16.y = blocks.y - 40

block16.speed = 4

object = block16

object.size = 320

screenGroup:insert(block16)

end

function moveBlock(object)

print(object.x)

print(“size”, object.size)

object.x = object.x + direction

if object.x > 900 then

direction = direction * -1

end

if object.x < 0 then

direction = direction * -1

end

–if object.x < 160 then

end

move = function() return moveBlock(object) end

function SpawnBlock()

local tempBlock = block.new(object.size - difference, objectb)

objectb = object

objectb.y = object.y

objectb.size = object.size - difference

object = tempBlock

object.size = tempBlock.getSize()

object.y = tempBlock.getY()

–print(tempBlock)

print(tempBlock.size)

print(“objbsize”,objectb.size)

print(object.size)

movtimer = timer.performWithDelay( 1,move, 0 )

end

function getDiff()

if (object.x < objectb.x) then

difference = objectb.x - object.x

newsize = object.size - difference

object.xScale = newsize / objectb.size

object.x = object.x + difference

SpawnBlock()

end

end

function stopBlock(event)

if(event.phase == “began”) then

timer.cancel(movtimer)

getDiff()

end

end

local function checkMemory()

   collectgarbage( “collect” )

   local memUsage_str = string.format( “MEMORY = %.3f KB”, collectgarbage( “count” ) )

   print( memUsage_str, "TEXTURE = "…(system.getInfo(“textureMemoryUsed”) / (1024 * 1024) ) )

end

function scene:enterScene(event)

Runtime:addEventListener( “touch”, stopBlock )

storyboard.removeScene(“start”)

movtimer = timer.performWithDelay( 1,move, 0 )

   –

   memTimer = timer.performWithDelay( 1000, checkMemory, 0 )

end

function scene:exitScene(event)

end

function scene:destroyScene(checkMemory)

end

scene:addEventListener(“createScene”, scene)

scene:addEventListener(“enterScene”, scene)

scene:addEventListener(“exitScene”, scene)

scene:addEventListener(“destroyScene”, scene)

return scene

BLOCK.LUA


– block.lua

– Example “block” class for Corona SDK tutorial.


local block = {}

–local block_mt = { __index = block } – metatable


– PRIVATE FUNCTIONS



– PUBLIC FUNCTIONS


function block.new( size , objectb) – constructor

local blockGroup = display.newGroup()

local block = display.newImage(“block16.png”, size, 40)

block.anchorX = 0

block.x = 0

block.y = object.y - 40

print(“block.y”,block.y)

block.size = size

block.xScale = size / objectb.size

print(block.size)

blockGroup:insert(block)

function blockGroup:getSize(size)

  

return block.size

end

function blockGroup:getY()

return block.y

end

block.blockGroup = blockGroup

return blockGroup

end


return block