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


import static VASL.build.module.map.boardPicker.ASLBoard.DEFAULT_HEX_HEIGHT;
import static VASSAL.build.GameModule.getGameModule;
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.command.CommandEncoder;
import VASSAL.tools.swing.SwingUtils;
import VASSAL.configure.BooleanConfigurer;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
            map.addLocalMouseListener(this);
            timer = new Timer (CIRCLE_DURATION, this);
            final BooleanConfigurer Highlightcenter = new BooleanConfigurer("HighlightCentered", "Opponent's Highlight Centered on Your Map", true);
            getGameModule().getPrefs().addOption(preferenceTabName, Highlightcenter);
            final BooleanConfigurer Highlightcircle = new BooleanConfigurer("HighlightShowCircle", "Highlight Shows Red Circle on Map", true);
            getGameModule().getPrefs().addOption(preferenceTabName, Highlightcircle);
        }
    }

    public void startAnimation(boolean isLocal) {

        // do not adjust the view of the player who initiated the command
        if (!isLocal && isHighlightCentered()) {
            map.centerAt(clickPoint);
        }

        active = true;
        timer.restart();
        map.getView().repaint();
    }

    @Override
    public void draw(Graphics g, Map map) {
        if (!active || clickPoint == null) {
          return;
        }

        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/ASLPieceFinder.java
import static VASL.build.module.map.boardPicker.ASLBoard.DEFAULT_HEX_HEIGHT;
import static VASSAL.build.GameModule.getGameModule;
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.command.CommandEncoder;
import VASSAL.tools.swing.SwingUtils;
import VASSAL.configure.BooleanConfigurer;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

            map.addLocalMouseListener(this);
            timer = new Timer (CIRCLE_DURATION, this);
            final BooleanConfigurer Highlightcenter = new BooleanConfigurer("HighlightCentered", "Opponent's Highlight Centered on Your Map", true);
            getGameModule().getPrefs().addOption(preferenceTabName, Highlightcenter);
            final BooleanConfigurer Highlightcircle = new BooleanConfigurer("HighlightShowCircle", "Highlight Shows Red Circle on Map", true);
            getGameModule().getPrefs().addOption(preferenceTabName, Highlightcircle);
        }
    }

    public void startAnimation(boolean isLocal) {

        // do not adjust the view of the player who initiated the command
        if (!isLocal && isHighlightCentered()) {
            map.centerAt(clickPoint);
        }

        active = true;
        timer.restart();
        map.getView().repaint();
    }

    @Override
    public void draw(Graphics g, Map map) {
        if (!active || clickPoint == null) {
          return;
        }

        final Graphics2D g2d = (Graphics2D) g;
        final double os_scale = g2d.getDeviceConfiguration().getDefaultTransform().getScaleX();

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