Я работаю над программированием игры, похожей на Snake. На данный момент я изо всех сил пытаюсь закодировать свои методы move() и Grow(). Суть этой игры заключается в том, что червь начинается с 1 фигуры и увеличивается на 1 часть с каждым ходом, пока не достигнет 3 частей. После того, как он достигнет 3 штук, он сможет вырасти, только съев яблоко. Движение в этой игре осуществляется путем удаления первой фигуры и добавления новой, расположенной в направлении движения червяка. Предполагается, что функция Move() должна переместить червяка на одну часть, а функция Grove() должна увеличить червяка на одну часть. Однако, когда вызывается функция Grove(), червь не должен расти до тех пор, пока не будет вызвана функция move(). Я добавил частную переменную «growPiece», чтобы сохранять фрагмент при вызове метода Groove(), а затем добавлять его при вызове метода move(). Однако я не получаю ожидаемых результатов.
Я работаю над программированием игры, похожей на Snake. На данный момент я изо всех сил пытаюсь закодировать свои методы move() и Grow(). Суть этой игры заключается в том, что червь начинается с 1 фигуры и увеличивается на 1 часть с каждым ходом, пока не достигнет 3 частей. После того, как он достигнет 3 штук, он сможет вырасти, только съев яблоко. Движение в этой игре осуществляется путем удаления первой фигуры и добавления новой, расположенной в направлении движения червяка. Предполагается, что функция Move() должна переместить червяка на одну часть, а функция Grove() должна увеличить червяка на одну часть. Однако, когда вызывается функция Grove(), червь не должен расти до тех пор, пока не будет вызвана функция move(). Я добавил частную переменную «growPiece», чтобы сохранять фрагмент при вызове метода Groove(), а затем добавлять его при вызове метода move(). Однако я не получаю ожидаемых результатов.
[code]public class Worm {
private int x; private int y; private Direction direction; private List pieces; private Piece growPiece;
public Worm(int originalX, int originalY, Direction originalDirection) { this.x = originalX; this.y = originalY; this.direction = originalDirection; this.pieces = new ArrayList(); this.pieces.add(new Piece(this.x, this.y)); this.growPiece = null; }