在corona sdk中随机生成随机位置的图像。

我正在使用以下代码在corona中创建随机图像以及随机位置,每次运行我的代码时,但是当我运行代码时,我在屏幕上得到所有随机选定的图像在同一位置。

这是我的代码,请提供建议..先谢谢

---- 在创建场景中,这段代码放置在

letterHolder = {}
numOfImages = 10

for i=1,numOfImages do
   letterHolder[i] = display.newImageRect("images/myImage.png", 20, 20)
   letterHolder[i].x = math.random(0, display.contentWidth)
   letterHolder[i].y = math.random(0, display.contentHeight)
end
点赞
用户1979583
用户1979583

尝试下面的方法,这可能有助于您:

local letterHolder = {}
local numOfImages = 10
local xPosArray = {}
local yPosArray = {}
local randX,randY = 0,0
local xExists,yExists = 0,0

local function positionImages(i)
  randX = math.random(display.contentWidth)
  randY = math.random(display.contentHeight)

  if(i==1)then
    xPosArray[i] = randX
    yPosArray[i] = randY
  else
    xExists = table.indexOf( xPosArray, randX )
    yExists = table.indexOf( yPosArray, randY )
    if(xExists~=nil and yExists~=nil and xExists==yExists)then
      print("该位置已有图像")
      positionImages(i)
    else
      print("可在此放置")
      xPosArray[i] = randX
      yPosArray[i] = randY
    end
  end
end

for i=1,numOfImages do
  letterHolder[i] = display.newImageRect("images/myImage.png", 20, 20)
  positionImages(i)
end
2013-07-15 12:28:07