如何更新 corona sdk 函数外的变量?

How to update a variable outside a function in corona sdk?

如何更改函数外的变量(在我的例子中它是一个 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)

如果您需要更改圆的半径,请使用 goal.widthgoal.height。请记住 goal.width == goal.height == two radii 表示圆圈。

我解决这个问题的方法是:我使用 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)