public void disbandActiveUnit() {
        if (!requireOurTurn()) return;

        Unit unit = gui.getActiveUnit();
        if (unit == null) return;
        if (unit.getColony() != null && !gui.tryLeaveColony(unit)) return;

        Tile tile = (gui.isShowingSubPanel()) ? null
            : unit.getTile();
        if (!gui.showConfirmDialog(tile,
                StringTemplate.key("disbandUnit.text"),
                "disbandUnit.yes", "disbandUnit.no")) {
            return;
        }

        // Try to disband
        if (askServer().disbandUnit(unit)) {
            nextActiveUnit();
        }
    }