图像数组在顶部角落创建了不需要的图像。

我在main.lua文件中设置了以下内容:

images = {
   display.newImageRect("images/player3.png", 45,35),
   display.newImageRect("images/player4.png", 45,35),
   display.newImageRect("images/player5.png", 45,35)
}

然后在我的game.lua文件中使用以下代码调用它:

bird = images[math.random(1,3)]
bird.x, bird.y = -80, 140
bird.name = "bird"
physics.addBody( bird, "static")
bird.isFixedRotation = true
birdIntro = transition.to(bird,{time=1000, x=100, onComplete= birdReady})

会生成一个随机图像(应该在中间),但问题是会生成第二个图像并停留在屏幕的左上角(略微超出屏幕)。我似乎无法将其移除并保留仅一个正确的图像,是否有解决方案?

非常感谢您的帮助。

谢谢

点赞
用户756383
用户756383

我认为问题出在你的图像数组上。我发现通过调用 display.newImageRect,它会创建对象并把它放在屏幕上。即使您不想马上显示该对象。通常,在我应该将其放在显示组中时,我会看到这种情况(不确定您是否在这样做)。

我觉得解决办法可能是将图像数组设置为图像路径,然后在该点将 bird 设置为新的图像矩形,从而只创建 1 个图像矩形,而不是 3 个。

images = {
   "images/player3.png",
   "images/player4.png",
   "images/player5.png",
}

bird = display.newImageRect(images[math.random(1,3)],45,35)

如果这有效,请告诉我。

2014-03-20 16:40:59