Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
boolean intentarDibujarBarco(int x, int y, char simbolo, int longitud) {
boolean puedeDibujar = true;
//A la derecha
for (int d = 0; d < longitud; d++) {
puedeDibujar = puedeDibujar && estaVacioEn(x + d, y);
}
if (puedeDibujar) {
for (int d = 0; d < longitud; d++) {
escenario[x + d][y] = simbolo;
}
return true;
}
//Hacia abajo
puedeDibujar = true;
for (int d = 0; d < longitud; d++) {
puedeDibujar = puedeDibujar && estaVacioEn(x, y + d);
}
if (puedeDibujar) {
for (int d = 0; d < longitud; d++) {
escenario[x][y + d] = simbolo;
}
return true;
}
//Hacia la izquierda
puedeDibujar = true;
for (int d = 0; d < longitud; d++) {
puedeDibujar = puedeDibujar && estaVacioEn(x - d, y);
}
if (puedeDibujar) {
for (int d = 0; d < longitud; d++) {
escenario[x - d][y] = simbolo;
}
return true;
}
//Hacia arriba
puedeDibujar = true;
for (int d = 0; d < longitud; d++) {
puedeDibujar = puedeDibujar && estaVacioEn(x, y - d);
}
if (puedeDibujar) {
for (int d = 0; d < longitud; d++) {
escenario[x][y - d] = simbolo;
}
return true;
}
return false;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment