如何在函数外部更改变量(在我的情况下,它是一个eventListener)?我有一个目标,这是一个圆圈,当分数超过10时,我希望它的半径发生变化。如何更新变量以检查半径是多少?
local goal
local goalRadius = 40
local function checkScore()
if(score>10)then
goalRadius = 20
--UPDATE THE VARIABLE?
end
goal = display.newCircle(0,0,goalRadius)
goal:addEventListener("touch", checkScore)
答案 0 :(得分:1)
我为解决这个问题所做的是:我使用removeSelf()来删除目标然后重新创建它。
local goal
local goalRadius = 40
local function checkScore()
if(score>10)then
goal:removeSelf()
goalRadius = 20
goal = display.newCircle(0,0,goalRadius)
end
end
goal = display.newCircle(0,0,goalRadius)
goal:addEventListener("touch", checkScore)
答案 1 :(得分:0)
如果您需要更改圆圈半径,请使用goal.width
和goal.height
。请记住goal.width == goal.height == two radii
代表圈子。