0

Lua でオブジェクトを自動的に追加して名前を変更するメソッドを構築しようとしています。オブジェクトを追加する add メソッドがありますが、各オブジェクトの名前を変更する方法がわかりません。ステートメントを追加することを考えてifいますが、ループするタイプごとにオブジェクトの名前を変更する方法でステートメントを構築する方法がわかりません。

これが私がこれまでに持っているものです:

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

お世話になりました!

4

1 に答える 1

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)
于 2013-10-21T10:10:20.037 に答える