2011-08-13 10 views
2

私はそれがここで複数の弾丸を撮影する機能に取り組んでいます:この関数が複数の箇条書きを作成しないのはなぜですか?

local function shootBullets (event) 
    local bullet = display.newImageRect("images/Bullet.png", 12, 12) --Create the bullet image 
    physics.addBody(bullet, "kinematic", {bounce = 0}) --Allow physics stuff to work on it 
    bullets:insert(bullet) --Add it to a global group called "bullets" 
    bullet:setLinearVelocity(20, 40) --Give it a velocity 

end 

そして、私はこのタイマーでそれを呼び出しています:

timer.performWithDelay(10, shootBullets) 

これは、1つの弾丸を移動し、それは作っていません新しいもの。 shootBullets (event)と呼ぶたびに、どのように新しい弾を発動させることができますか?私はLuaに精通していないので、明らかに間違っていることや、十分な情報を提供していないと(申し訳ありませんが、もっと情報が必要な場合は質問してください)、ごめんなさい。

答えて

3

おっと、私はAPIに近い注意を払う必要があります。

timer.performWithDelay(time, function, times)のデフォルトの3のパラメータは、それが永遠に繰り返されるようにするには1です。私はそれを0にする必要がありだから私は変更:

timer.performWithDelay(10, shootBullets) 

これまで:

timer.performWithDelay(10, shootBullets, 0) 

今弾丸があります。

関連する問題