我正在为Corona SDK开发一款简单的球型游戏,而且我目前希望每当触摸屏幕上的球时,游戏的分数会增加1。目前,无论何时发生,得分的文本变量都会消失,而不会发生其他任何事如何提高分数? 这是我的代码:
function touchBall(event)
local ball = event.target
local score = 0;
scoreNum.text = score
scoreNum:setReferencePoint(display.CenterLeftReferencePoint);
score = score + 1
ball_h = 5
ball:applyLinearImpulse(0, -0.2, event.x, event.y)
ball_h = ball.y
if ball_h > 50 then
gameover();
end
if event.target == "touch" then
score = score + 1
scoreNum.text = score
end
end
ball:addEventListener("touch", touchBall)
ball2:addEventListener("touch", touchBall)
ball3:addEventListener("touch", touchBall)
end
答案 0 :(得分:1)
创建运行时侦听器以维持分数更改。
local function runtimeListener( event )
scoreNum.text=score
end
Runtime:addEventListener("enterFrame",runtimeListener)
删除第15行并按上面给出的方式插入。
这使得分数根据触摸不断变化..