[英]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.