2013-10-21 24 views
0

我想構建一個方法,自動添加和重命名Lua中的對象。我有添加方法添加對象,但我不知道如何使它重命名每個對象。我正在考慮添加一個if聲明,但我不知道如何構建它,以便它將重命名每個類型的循環對象。如何在Lua中自動添加和重命名對象?

這是我到目前爲止有:

frogBody = {density = .8, friction = 0.3, bounce = 0.1, radius = 10} -- body Type 
local onPlayerSpawnObject = function(object) -- method to spawn object 
     local layer = map:getTileLayer("Enemies") 
     local frog = movieclip.newAnim{ "FrogMini.png", "frogMiniRed.png" } -- object that spawns 
     frog.x = object.x ; frog.y = object.y 
     frog.myName = "frog" 
     frog.isHit = false 
     physics.addBody(frog, frogBody) 
end 

謝謝所有您的幫助!

+1

我想我們在這裏需要更多的信息。你打算通過重命名完成什麼?這將如何觸發? – Zeksie

回答

0

我認爲你的意思是你想從你的例子中明顯地訪問青蛙對象?

如果是這種情況,您可以將add函數的返回值分配給lua表,或者直接分配給函數中的表。

local frogs = {} 
frogBody = {density = .8, friction = 0.3, bounce = 0.1, radius = 10} -- body Type 
local onPlayerSpawnObject = function(object) -- method to spawn object 
    local layer = map:getTileLayer("Enemies") 
    local frog = movieclip.newAnim{ "FrogMini.png", "frogMiniRed.png" } -- object that spawns 
    frog.x = object.x ; frog.y = object.y 
    frog.myName = "frog" 
    frog.isHit = false 
    physics.addBody(frog, frogBody) 
    table.insert(frogs, frog) 
end 

-- To print a distinct frog from the collection, replace 1 by your index 
print (frogs[1].myName)