Я делаю Orthogonal Tiled Map Java-игру, когда мой корабль перемещается к границам x и y, нажимая направление. Key останавливает перемещение (по назначению), но если я продолжаю нажимать клавишу My character выходит из экрана.Java Game - нажатие клавиши
Вот код, я использую:
@Override
public boolean keyDown(int keycode) {
ship = world.getShip();
switch(keycode){
case Keys.W:
if (ship.getPosition().y<28.5f){
ship.getVelocity().y = 1;}
else {
ship.getVelocity().y = 0;
}
break;
case Keys.S:
if (ship.getPosition().y1){
ship.getVelocity().y = -1;}
else {
ship.getVelocity().y = 0;
}
break;
case Keys.A:
if (ship.getPosition().x0)
ship.getVelocity().x = -1.5f;
else{
ship.getVelocity().x = 0;
}
break;
case Keys.D:
if (ship.getPosition().x<39){
ship.getVelocity().x = 1;
}
else{
ship.getVelocity().x = 0;
}
break;
default:
break;
}
return true;
}
@Override
public boolean keyUp(int keycode) {
ship = world.getShip();
switch(keycode){
case Keys.W:
if(ship.getVelocity().y == 1)
ship.getVelocity().y = 0;
break;
case Keys.S:
if(ship.getVelocity().y == -1)
ship.getVelocity().y = 0;
break;
case Keys.A:
if(ship.getVelocity().x == -1.5f)
ship.getVelocity().x = 0;
break;
case Keys.D:
if(ship.getVelocity().x == 1)
ship.getVelocity().x = 0;
break;
default:
break;
}
return true;
}
Что я должен сделать, чтобы сохранить свой корабль на экране, если ключ держит толкнул?
Пожалуйста, используйте форматирование кода для кода, ввода/вывода и структурированных документов, таких как HTML или XML. Для этого выберите образец и нажмите кнопку '{}' над формой отправки сообщений/редактирования. –