[英]In corona sdk how can I reference / specify all indexes of a spawned object on the screen?
嗨,我一直想知道這已經有一段時間了,這引起了很多問題,使我一次又一次不知道如何參考/指定屏幕上生成的敵人的所有索引。
假設角色死亡時,我希望屏幕上的所有敵人在屏幕逐漸消失時遠離死者。 簡單地叫“ enemy1”只能使一個(我認為是最后一個生成的)按照所告訴的那樣進行。
這是我的敵人生成腳本:
local spawnTable2 = {}
local function spawnEnemy()
enemy1 = display.newSprite( group, sheetE, sequenceData2 )
enemy1.x=math.random(100,1300)
enemy1.y=math.random(360,760)
enemy1.gravityScale = 0
enemy1:play()
enemy1.type="coin"
enemy1.objTable = spawnTable2
enemy1.index = #enemy1.objTable + 1
enemy1.myName = "enemy" .. enemy1.index
physics.addBody( enemy1, "kinematic",{ density = 0, friction = 0, bounce = 1 })
enemy1.isFixedRotation = true
enemy1.type = "enemy1"
enemy1.timer = nil
enemy1.enterFrame = moveEnemy
Runtime:addEventListener("enterFrame",enemy1)
enemy1.objTable[enemy1.index] = enemy1
hudGroup:toFront()
return enemy1
end
要引用所有對象,您將需要做兩件事。
首先做一個櫃台:
counter = 0
每次調用該功能時,都有一個計數器:
counter = counter + 1
對於表,您將執行以下操作:
spawnTable2[counter].x=math.random(100,1300)
然后,當您要刪除對象時,只需執行以下操作:
display.remove(spawnTable2[counter])
請記住,您操作該對象的所有操作都必須在該函數內。 祝你好運,希望這能幫到你。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.