package org.mafagafogigante.dungeon.map;
import org.mafagafogigante.dungeon.game.Location;
import org.jetbrains.annotations.NotNull;
import java.awt.Color;
/**
* A symbol in a WorldMap.
*/
class WorldMapSymbol {
private static final WorldMapSymbol HERO_SYMBOL = new WorldMapSymbol('@', Color.WHITE);
private static final WorldMapSymbol NOT_YET_GENERATED_SYMBOL = new WorldMapSymbol('~', Color.GRAY);
private final String character;
private final Color color;
private WorldMapSymbol(char character, @NotNull Color color) {
this.character = String.valueOf(character);
this.color = color;
}
public static WorldMapSymbol makeSymbol(@NotNull Location location) {
return new WorldMapSymbol(location.getDescription().getSymbol(), location.getDescription().getColor());
}
public static WorldMapSymbol getHeroSymbol() {
return HERO_SYMBOL;
}
public static WorldMapSymbol getNotYetGeneratedSymbol() {
return NOT_YET_GENERATED_SYMBOL;
}
public String getCharacterAsString() {
return character;
}
public Color getColor() {
return color;
}
@Override
public String toString() {
return "WorldMapSymbol{" +
"character='" + character + '\'' +
", color=" + color +
'}';
}
}