我正在開發一個遊戲,角色反彈很像「Flappy Bird」角色。Corona SDK,飛揚的鳥反彈效果
我把它運行良好,但我用touch event
遞交彈跳效果,當用戶double touches
真的很快它在播放器後面doubles the force
。
而且,舉個例子,如果玩家是從higher height
dropping
那麼gravity
似乎是太多了,我必須touch
很多倍帶給玩家回來了,我似乎無法弄清楚如何使每個touch
的字符數與bounces
一致。
這裏是我的彈跳效果功能:
function flyUp(event)
if event.phase == "began" then
if gameStarted == false then
player.bodyType = "dynamic"
instructions.alpha = 0
tb.alpha = 1
addColumnTimer = timer.performWithDelay(1000, addColumns, -1)
moveColumnTimer = timer.performWithDelay(2, moveColumns, -1)
gameStarted = true
player:applyForce(0, -300, player.x, player.y)
else
player:applyForce(0, -460, player.x, player.y)
end
end
end
...這是我的球員被定義爲一個物理體:
physics.addBody(player, "static",
{ density=.106, bounce=.1, friction=1, radius = 30 })
任何幫助將非常讚賞,我只是希望玩家總是能夠以同樣的數量上升,無論他點擊多少次以及投下多少錢。
由於
感謝您的回答!我發現如果我簡單地將applyForce更改爲setLinearVelocity並將重力向下調整一點,那麼玩家在他的漂浮上就會一致。 – siegs