mirror of
https://github.com/guezoloic/racing-game.git
synced 2026-03-28 18:03:50 +00:00
feat: fusion Circuit et CircuitCell
This commit is contained in:
32
src/Map.java
32
src/Map.java
@@ -6,7 +6,7 @@ import java.util.function.Function;
|
||||
* <p> <code>Map</code> représente le circuit de course.</p>
|
||||
* <p>Cette classe contient: </p>
|
||||
* <ul>
|
||||
* <li>Un tableau 2D de CircuitCell</li>
|
||||
* <li>Un tableau 2D de Circuit.Cell</li>
|
||||
* <li>Une liste de Points qui représente le chemin pour la voiture entre <code>START</code> et <code>FINISH</code></li>
|
||||
* </ul>
|
||||
*/
|
||||
@@ -65,11 +65,11 @@ public class Map
|
||||
public static Map fromInts(Integer[][] map)
|
||||
{
|
||||
return create((i) -> switch (i) {
|
||||
case 0 -> new Circuit(CircuitCell.EMPTY);
|
||||
case -1 -> new Circuit(CircuitCell.ROAD);
|
||||
case -2 -> new Circuit(CircuitCell.START);
|
||||
case -3 -> new Circuit(CircuitCell.FINISH);
|
||||
default -> new Circuit(CircuitCell.YROAD, i);
|
||||
case 0 -> new Circuit(Circuit.Cell.EMPTY);
|
||||
case -1 -> new Circuit(Circuit.Cell.ROAD);
|
||||
case -2 -> new Circuit(Circuit.Cell.START);
|
||||
case -3 -> new Circuit(Circuit.Cell.FINISH);
|
||||
default -> new Circuit(Circuit.Cell.YROAD, i);
|
||||
}, map);
|
||||
}
|
||||
|
||||
@@ -89,12 +89,12 @@ public class Map
|
||||
public static Map fromChars(Character[][] map)
|
||||
{
|
||||
return create((i) -> switch (i) {
|
||||
case '#' -> new Circuit(CircuitCell.ROAD);
|
||||
case 'S' -> new Circuit(CircuitCell.START);
|
||||
case 'F' -> new Circuit(CircuitCell.FINISH);
|
||||
case '#' -> new Circuit(Circuit.Cell.ROAD);
|
||||
case 'S' -> new Circuit(Circuit.Cell.START);
|
||||
case 'F' -> new Circuit(Circuit.Cell.FINISH);
|
||||
case '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'
|
||||
-> new Circuit(CircuitCell.YROAD, i - '0');
|
||||
default -> new Circuit(CircuitCell.EMPTY);
|
||||
-> new Circuit(Circuit.Cell.YROAD, i - '0');
|
||||
default -> new Circuit(Circuit.Cell.EMPTY);
|
||||
}, map);
|
||||
}
|
||||
|
||||
@@ -152,11 +152,11 @@ public class Map
|
||||
{
|
||||
switch (map[i][j].getType())
|
||||
{
|
||||
case CircuitCell.START:
|
||||
case Circuit.Cell.START:
|
||||
if (start == null) start = new Point(j, i);
|
||||
else return null;
|
||||
break;
|
||||
case CircuitCell.FINISH:
|
||||
case Circuit.Cell.FINISH:
|
||||
if (end == null) end = new Point(j, i);
|
||||
else return null;
|
||||
break;
|
||||
@@ -249,13 +249,13 @@ public class Map
|
||||
}
|
||||
|
||||
/**
|
||||
* Retourne le type de cellule (CircuitCell) à la position (x, y).
|
||||
* Retourne le type de cellule (Circuit.Cell) à la position (x, y).
|
||||
*
|
||||
* @param x Coordonnée X
|
||||
* @param y Coordonnée Y
|
||||
* @return Le type de cellule <code>CircuitCell</code>
|
||||
* @return Le type de cellule <code>Circuit.Cell</code>
|
||||
*/
|
||||
public CircuitCell getCell(int x, int y)
|
||||
public Circuit.Cell getCell(int x, int y)
|
||||
{
|
||||
return getElement(x, y).getType();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user