Libgdx 蛇类游戏,如何根据蛇的方向移动蛇的部位?

Libgdx 蛇类游戏,如何根据蛇的方向移动蛇的部位?,libgdx,Libgdx,我正在Libgdx中制作蛇游戏,但我不知道如何根据蛇的头部方向移动蛇的部分。请帮帮我…只有头部移动,其他部分移动到其父体 想象蛇未来的头部位置,然后下面的每个部分都会移动到它的头部 特别是 设A=零件数组,其中每个零件-1是该零件的“父级” 然后,您可以将除“实际头部”之外的所有零件移动到其“头部”。 此时,两个引导头的位置相同。 将“实际头部”移动到“新头部位置” 我认为这听起来是对的。您将使用一个保存当前运动方向的变量和一个包含所有蛇形部分的列表。 在每个移动阶段,将移动变量与4种可能的状

我正在Libgdx中制作蛇游戏,但我不知道如何根据蛇的头部方向移动蛇的部分。请帮帮我…

只有头部移动,其他部分移动到其父体

想象蛇未来的头部位置,然后下面的每个部分都会移动到它的头部

特别是

设A=零件数组,其中每个零件-1是该零件的“父级” 然后,您可以将除“实际头部”之外的所有零件移动到其“头部”。 此时,两个引导头的位置相同。 将“实际头部”移动到“新头部位置”


我认为这听起来是对的。

您将使用一个保存当前运动方向的变量和一个包含所有蛇形部分的列表。

在每个移动阶段,将移动变量与4种可能的状态(左、上、右、下)进行比较,并递增/递减列表中第一个元素(头部)的x/y。其余部分将占据列表中位于它们前面的元素的位置

for (int i=1 ; i< list.size() ; i++ )
list.get(i).setPosition( list.get(i-1).getX(), list.get(i-1).getY() );
for(int i=1;i
获取一个数组列表,其中必须保存蛇头最后一个x和y位置的x和y位置。使用此arrayList为身体其余部分提供x和Y位置。

更有效的移动方法是只取蛇的最后一部分并将其定位到新的头部位置。