2013-02-20 115 views
0

如何增加movementSpeed减少star1.movementSpeed = 10000; -1每 10秒。降低速度值LUA

我已经试过了,但无法弄清我做错了

function initStar() 
local star1 = {} 
star1.imgpath = "Star1.png"; --Set Image Path for Star 
star1.movementSpeed = 10000; --Determines the movement speed of star 
table.insert(starTable, star1); --Insert Star into starTable 
end --END initStar()  


local function star1incr() -- increments Speed value every time it is called 
movementSpeed = movementSpeed - 1 
star1.movementSpeed = "movementSpeed: " .. movementSpeed 
end 

timer.performWithDelay(10000, star1incr, 0) 

回答

2

固定使用

local function star1incr() 
     starTable[1].movementSpeed = starTable[1].movementSpeed - 1 
     print("- 1") 
    end 
1

你需要有一个变量,你可以initStar()star1incr()(顺便说一句,“增量movementSpeed之间共享通过降低...movementSpeed没有按“T右声音);这样的事情可能工作:

local star1 = {} 

function initStar() 
    star1.imgpath = "Star1.png" --Set Image Path for Star 
    star1.movementSpeed = 10000 --Determines the movement speed of star 
end --END initStar()  


local function star1incr() 
    star1.movementSpeed = star1.movementSpeed - 1 
end 

timer.performWithDelay(10000, star1incr, 0) 

star1变量将initStarstar1incr和功能之间共享(在Lua它被称为upvalue)。