// Path: src/VASL/build/module/map/boardPicker/ASLBoard.java
// public static final double DEFAULT_HEX_HEIGHT = BoardArchive.GEO_HEX_HEIGHT;


import VASSAL.counters.GamePiece;
import VASSAL.counters.PieceIterator;
import java.awt.*;
import java.util.ArrayList;
import static VASL.build.module.map.boardPicker.ASLBoard.DEFAULT_HEX_HEIGHT;
import VASSAL.build.AbstractConfigurable;
import VASSAL.build.Buildable;
import VASSAL.build.GameModule;
import VASSAL.build.module.GameComponent;
import VASSAL.build.module.Map;
import VASSAL.build.module.documentation.HelpFile;
import VASSAL.build.module.map.Drawable;
import VASSAL.command.Command;
import VASSAL.configure.PropertyExpression;
import VASSAL.counters.BasicPiece;
import VASSAL.counters.Decorator;
    }

    @Override
    public void setAttribute(String key, Object value) {
    }

    @Override
    public void addTo(Buildable parent) {

        // add this component to the game and register a mouse listener
        if (parent instanceof Map) 
        {
            this.m_objMap = (Map) parent;
            m_objMap.addDrawComponent(this);
            
            m_piecePropertiesFilter.setExpression("InvisibleToOthers != true && BRK_Active = true || PieceName = DM || PieceName = Disrupt");
        }
    }

    @Override
    public void draw(Graphics g, Map map) {
        if (m_bVisible) 
        {
            LoadBrokenPiecesPosition();
            
            if (mar_objPointList.size() > 0)
            {
                final Graphics2D g2d = (Graphics2D) g;
                final double os_scale = g2d.getDeviceConfiguration().getDefaultTransform().getScaleX();

// Path: src/VASL/build/module/map/boardPicker/ASLBoard.java
// public static final double DEFAULT_HEX_HEIGHT = BoardArchive.GEO_HEX_HEIGHT;


// Path: src/VASL/build/module/map/ASLBrokenFinder.java
import VASSAL.counters.GamePiece;
import VASSAL.counters.PieceIterator;
import java.awt.*;
import java.util.ArrayList;
import static VASL.build.module.map.boardPicker.ASLBoard.DEFAULT_HEX_HEIGHT;
import VASSAL.build.AbstractConfigurable;
import VASSAL.build.Buildable;
import VASSAL.build.GameModule;
import VASSAL.build.module.GameComponent;
import VASSAL.build.module.Map;
import VASSAL.build.module.documentation.HelpFile;
import VASSAL.build.module.map.Drawable;
import VASSAL.command.Command;
import VASSAL.configure.PropertyExpression;
import VASSAL.counters.BasicPiece;
import VASSAL.counters.Decorator;

    }

    @Override
    public void setAttribute(String key, Object value) {
    }

    @Override
    public void addTo(Buildable parent) {

        // add this component to the game and register a mouse listener
        if (parent instanceof Map) 
        {
            this.m_objMap = (Map) parent;
            m_objMap.addDrawComponent(this);
            
            m_piecePropertiesFilter.setExpression("InvisibleToOthers != true && BRK_Active = true || PieceName = DM || PieceName = Disrupt");
        }
    }

    @Override
    public void draw(Graphics g, Map map) {
        if (m_bVisible) 
        {
            LoadBrokenPiecesPosition();
            
            if (mar_objPointList.size() > 0)
            {
                final Graphics2D g2d = (Graphics2D) g;
                final double os_scale = g2d.getDeviceConfiguration().getDefaultTransform().getScaleX();

                final int diam = (int)(os_scale * map.getZoom() * DEFAULT_HEX_HEIGHT);