自学一周Godot尝试完全用单位格移动大败而归
合集 · Godot学习日志 (3)
Parts
Description
灯光是用来提示交互地块的 本来打算根据教程自己代码重构一个农场游戏 但是突然小巧思了一下不用平滑移动而是单位格移动来更适配种地游戏 于是完全弃用引擎本来的物理系统把所有逻辑放到瓦片单位格上 虽然成功按单位格移动了但是出现了一堆问题 代码在2P 不用物理系统做起来还是太累了,后续难以进行 但是还是记录下初学时候的小巧思
灯光是用来提示交互地块的 本来打算根据教程自己代码重构一个农场游戏 但是突然小巧思了一下不用平滑移动而是单位格移动来更适配种地游戏 于是完全弃用引擎本来的物理系统把所有逻辑放到瓦片单位格上 虽然成功按单位格移动了但是出现了一堆问题 代码在2P 不用物理系统做起来还是太累了,后续难以进行 但是还是记录下初学时候的小巧思
Comments
网格移动需要记录地图单位格尺寸的,这个尺寸扔管理器或者是用常量都行。然后移动到目的最后一帧需要检测是否还有移动指令输入,有就在同帧赋值新坐标继续移动,没有就直接赋值目标坐标
♥ 2
就算用引擎物理也可以用tween去实现移动
♥ 2 ↩ 2
[25年新收藏集表情包静态_奸笑]
♥ 2
格子移动这个挺简单的,直接Position移动格子size就可以了啊,碰撞直接Areas2D,你去找一下推箱子的教程,参考里面的移动就明白了。只需要在输入时移动,加判断是否有碰撞就行了。 如果你是根据Tile移动,那也简单,自带有这个方法的。获取输入,判断下一个(TileID+方向输入)是否存在,判断一下其他层的TileId是否有作物。
♥ 1
如果用move_and_collide()得话应该就不会这么麻烦了
♥ 1 ↩ 1