package games.strategy.triplea.ui.screen.drawable;
import java.awt.Color;
import java.awt.Graphics2D;
import java.awt.Rectangle;
import java.awt.geom.AffineTransform;
import games.strategy.engine.data.GameData;
import games.strategy.engine.data.Territory;
import games.strategy.triplea.attachments.TerritoryAttachment;
import games.strategy.triplea.ui.mapdata.MapData;
public class LandTerritoryDrawable extends TerritoryDrawable implements IDrawable {
private final String m_territoryName;
public LandTerritoryDrawable(final String territoryName) {
m_territoryName = territoryName;
}
@Override
public void draw(final Rectangle bounds, final GameData data, final Graphics2D graphics, final MapData mapData,
final AffineTransform unscaled, final AffineTransform scaled) {
final Territory territory = data.getMap().getTerritory(m_territoryName);
Color territoryColor;
final TerritoryAttachment ta = TerritoryAttachment.get(territory);
if (ta != null && ta.getIsImpassable()) {
territoryColor = mapData.impassableColor();
} else {
territoryColor = mapData.getPlayerColor(territory.getOwner().getName());
}
draw(bounds, graphics, mapData, scaled, territory, territoryColor);
}
@Override
public int getLevel() {
return POLYGONS_LEVEL;
}
}