我在Libgdx制作Snake游戏,但我不知道如何根据其头部方向移动Snake部分。请帮帮我......
答案 0 :(得分:2)
只有头部移动,其他人移动到其父部。
想象一下蛇的未来位置作为头部,然后每个后续部分将移动到它的头部。
特别是
设A =部分数组,其中每个部分-1是该部分的“父” 然后你可以移动除“实际头部”以外的所有部分到它的“头部”。 此时,两个前导头具有相同的位置。 将“实际头部”移动到“新头部位置”
我认为这听起来是正确的。
答案 1 :(得分:0)
您将使用保存当前移动方向的变量和包含所有蛇形部分的列表。
在每个运动阶段,您将运动变量与4种可能状态(LEFT,UP,RIGHT,BOTTOM)进行比较,并递增/递减列表中第一个元素(Head)的x / y。其余部分采用位于列表前面的元素的位置
for (int i=1 ; i< list.size() ; i++ )
list.get(i).setPosition( list.get(i-1).getX(), list.get(i-1).getY() );
答案 2 :(得分:0)
获取一个arrayList,你必须在其中保存snakeHead的最后x和y位置的x和y位置。使用此arrayList将x和Y位置赋予bodypart的其余部分。