我目前正在用Java製作2D平臺變形器。我是初學者,所以放鬆一下。 我在遊戲中遇到重力問題。我正在使用不同的變量來下降和跳躍。我正在使用平鋪地圖。所以讓我們明白。 我跌倒的方法是這樣的 -Java 2D平臺變形器重力
if(collisionDown == false) {
characterY += fall;
fall ++;
{
秋天等於4。如果collisionDown是真的它重置回4
我的跳法幾乎是一樣的:
if(key.E == true && collisionDown == true) {
characterY -= jump;
jump --;
}
跳轉等於16.如果collisonDown爲真,它將重置爲16.
現在的問題是:想象角色正在跳躍。它在空中,而在下降的時候特性+ =下降;可以說characterY = 250,在這個時刻下降等於15。字符下面的下一個實體圖塊從Y位置255開始。字符位於250,並且不檢測碰撞,因此下一幀會將15添加到characterY,即250 + 15 = 265。此時,角色已經「進入」實體圖塊這是在位置Y255.
我有「固定」,讓角色回到固體瓷磚的頂部(這是可見的和煩人的)。這不是一個完美的解決方案,因爲它會減慢字符每幀1幀時間它進入一個堅實的瓷磚(這是因爲它檢測到左右碰撞和角色不能移動)。如果我可以這樣說,這個角色明顯地口吃。
我需要一個解決方案,但不能想到任何問題。 所以,如果你提出一個建議,我會很高興。謝謝。
簡單而有效。謝謝 –