[英]Java 2D gravity?
我正在制作一個2D Java游戲,我正在試圖弄清楚如何添加基本的“引力”
我目前的代碼是這樣的:
public void checkCollision() {
Rectangle player_rectangle = new Rectangle(player.getX(),player.getY(),32,32);
for(Wall wall : walls) {
Rectangle wall_rectangle = new Rectangle(wall.getX(), wall.getY(), 32,32);
if(player_rectangle.intersects(wall_rectangle)) {
player.yspeed = 0;
} else {
player.yspeed = 1;
}
}
出於某種原因,即使觸摸它,我的代碼也直接穿過牆壁。 如果有一個人在它下面,如果沒有,那么我希望它能夠撞到牆上然后繼續下降。
你在所有的牆上迭代。 如果相交的牆不是列表中的最后一個牆,則后續牆可能會將您的速度重置為1.當您檢測到交叉點時斷開循環。 特別:
if(player_rectangle.intersects(wall_rectangle)) {
player.yspeed = 0;
break;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.