gpt4 book ai didi

java - 玩家移动方向逻辑

转载 作者:行者123 更新时间:2023-11-30 03:23:14 30 4
gpt4 key购买 nike

将 A 点和 B 点视为墙壁,将 O 点视为墙壁内的玩家。

所以它们看起来像 A O B。

我希望玩家在触摸 rightPoint B 时向左移动。在触摸 leftPoint A 时向右移动。

屏幕正在渲染,玩家位置向右增加 5,向左增加 -5。

我尝试做的事情:我把它放在 if else if 语句中。如果 A 和 O 之间的距离为零,则玩家位置将增加 +5。如果 O 和 B 之间的距离为零,则玩家位置增量为 -5。但一旦他碰到墙(比如右墙),他就会向后移动 -5,然后 5,再次移动 -5,然后 5。

我明白为什么会发生这种情况,但我没有任何逻辑来实现这一点。

代码:抱歉,我无法发布实际代码。我正在使用移动互联网。我没有电脑互联网。

假设左墙位于 50, 0,右墙位于 550, 0,玩家位于 50, 0。

//这一切都正在渲染。

If (rightWall - PlayerPos <=0){
PosIncrement = -5;
}
If (leftWall - PlayerPos <=0){
PosIncrement = 5;
}
translateX (PlayerPos);

最佳答案

如果玩家应该墙壁之间,则意味着左墙的位置应始终低于玩家的位置。玩家位置应等于或大于 50 且等于或小于 550

所以正确的逻辑是

If (rightWall - PlayerPos <=0){
PosIncrement = -5;
}
If (PlayerPos - leftWall <=0){
PosIncrement = 5;
}

关于java - 玩家移动方向逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30827030/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com