所以我正在做一个游戏,我需要关闭一个门与我的球员,而他正在关闭,他有一个关闭动画。在我当前的循环中,检查每个房间的每个门。只有当有一扇门且该扇门位于环路中的第一个房间时,该代码才起作用。如果不是,则关闭动画仅对一帧触发,然后返回空闲状态,因此在关闭时在两帧之间闪烁。
我真的很感激你的帮助。
for (Room r : rooms) {
for (Door d : Doors) {
if (r.closed(d)) {
close();
d.closing=false;
} else {
d.closing=true;
r.closed=false;
r.locked=false;
}
}
1条答案
按热度按时间rkkpypqq1#
代码中的这两行很可能导致问题:
当有物体开始下落时,它们就会被执行。通常情况下,这个秋天是由玩家发起的,所以在这里可能会有一些意义,尽管可能有一个更合适的地方放这些线。
真正的问题是你如何判断一个物体是否开始坠落:你检查每个平台,一旦你找到一个物体没有落在上面的平台,你就让它开始坠落。如果稍后找到对象所在的平台,则取消坠落,但播放器动画已停止。