即使碰到墙壁判定,模板移动的回退动作也不会执行。

在移动对象时,使用了“模板移动”中的“左右移动”。
当碰到瓷砖的墙壁判定时,对象会立即折返;但碰到其他对象的墙壁判定时,却不会折返,而是保持朝向该对象的行走动作并停止(由于对象在碰撞状态下停止,说明已识别到墙壁判定)。

若希望即使在碰到其他对象的墙壁判定时也能折返,应如何设置?当前设置中,“忽略其他对象的墙壁判定”已关闭。

我用相同的设置稍微测试了一下,似乎可以正常工作。
是否其中一方的墙壁判定被禁用了,
或者在碰撞层/掩码中设置了不接触?

已确认两者的墙壁判定均未失效。
CollisionObject2D 的图层/掩码如下,是否存在问题?

对象块

模板移动的字符

抱歉,我再次尝试后确实无法运行。
感觉像是个 bug,特此报告!

1 个赞

感谢您的确认,请多关照。

我认为问题可能在于,在模板中移动的物体未能正确识别“与其他物体的碰撞判定发生碰撞”这一触发条件。

这可能是相同的原因:如果在模板中左右移动的角色被放置在单独创建的方块物体上,角色会在原地高速反复折返。
这同样可能是由于未能正确识别“在脚下方向与其他物体的碰撞判定发生接触”所导致的。