В процессе создания игры Snake не может понять, как сделать движение правильноJAVA

Программисты JAVA общаются здесь
Anonymous
В процессе создания игры Snake не может понять, как сделать движение правильно

Сообщение Anonymous »

В настоящее время я делаю игру Snake в JGrasp только с использованием стандартного движения Draw и статических методов для создания этой игры, пока это код, который я имею, потому что я только начал вчера. Но в настоящее время я застрял в том, как сделать движения змей, чтобы они могли быть только вверх и вниз и вниз в сторону и для постоянного движения. На данный момент у меня есть то, что клавиши со стрелками перемещают змею, но она все еще может двигаться по диагонали и не постоянно < /p>

import java.awt.event.KeyEvent;
public class snake
{
static double squareX = .5;
static double squareY = .5;
static double squareR = .02;

public static void drawScene()
{
StdDraw.clear();
StdDraw.filledSquare(squareX, squareY, squareR);
StdDraw.show(1000/24);

}

public static void updateMotion()
{

if (StdDraw.isKeyPressed(KeyEvent.VK_UP))
{
squareY += .01;
}
if (StdDraw.isKeyPressed(KeyEvent.VK_DOWN))
{
squareY -= .01;
}
if (StdDraw.isKeyPressed(KeyEvent.VK_LEFT))
{
squareX -= .01;
}
if (StdDraw.isKeyPressed(KeyEvent.VK_RIGHT))
{
squareX += .01;

}
}

public static void main(String[] args)
{
while(true)
{
snake.drawScene();
snake.updateMotion();
if (squareX + squareR >= 1 )
{
//TODO: show "you lose" message / stop on edge of square
break;
}
if (squareX - squareR = 1 )
{
//TODO: show "you lose" message / stop on edge of square
break;
}
if (squareY - squareR

Подробнее здесь: https://stackoverflow.com/questions/340 ... ment-right

Вернуться в «JAVA»