Search in sources :

Example 1 with Aero

use of megamek.common.Aero in project megameklab by MegaMek.

the class MenuBarCreator method loadUnit.

private void loadUnit() {
    UnitLoadingDialog unitLoadingDialog = new UnitLoadingDialog(parentFrame);
    unitLoadingDialog.setVisible(true);
    UnitSelectorDialog viewer = new UnitSelectorDialog(parentFrame, unitLoadingDialog, true);
    Entity newUnit = viewer.getChosenEntity();
    viewer.setVisible(false);
    viewer.dispose();
    if (null == newUnit) {
        return;
    }
    if (UnitUtil.validateUnit(newUnit).trim().length() > 0) {
        JOptionPane.showMessageDialog(parentFrame, String.format("Warning:Invalid unit, it might load incorrectly!\n%1$s", UnitUtil.validateUnit(newUnit)));
    }
    if (newUnit.getEntityType() != parentFrame.getEntity().getEntityType()) {
        MegaMekLabMainUI newUI = null;
        if (newUnit.hasETypeFlag(Entity.ETYPE_SMALL_CRAFT)) {
            newUI = new megameklab.com.ui.Dropship.MainUI(((Aero) newUnit).isPrimitive());
        } else if (newUnit.hasETypeFlag(Entity.ETYPE_AERO) && !(newUnit.hasETypeFlag(Entity.ETYPE_JUMPSHIP) || newUnit.hasETypeFlag(Entity.ETYPE_FIXED_WING_SUPPORT))) {
            newUI = new megameklab.com.ui.Aero.MainUI(((Aero) newUnit).isPrimitive());
        } else if (newUnit.hasETypeFlag(Entity.ETYPE_BATTLEARMOR)) {
            newUI = new megameklab.com.ui.BattleArmor.MainUI();
        } else if (newUnit.hasETypeFlag(Entity.ETYPE_INFANTRY)) {
            newUI = new megameklab.com.ui.Infantry.MainUI();
        } else if (newUnit.hasETypeFlag(Entity.ETYPE_MECH)) {
            newUI = new megameklab.com.ui.Mek.MainUI();
        } else if (newUnit.hasETypeFlag(Entity.ETYPE_TANK) && !newUnit.hasETypeFlag(Entity.ETYPE_GUN_EMPLACEMENT)) {
            newUI = new megameklab.com.ui.Vehicle.MainUI();
        }
        if (null == newUI) {
            JOptionPane.showMessageDialog(parentFrame, "Warning: Could not create new UI, aborting unit load!" + System.lineSeparator() + "Probable cause: Unsupported unit type.");
            return;
        }
        parentFrame.dispose();
        UnitUtil.updateLoadedUnit(newUnit);
        newUI.setEntity(newUnit);
        newUI.reloadTabs();
        newUI.repaint();
        newUI.refreshAll();
        return;
    }
    CConfig.updateSaveFiles("");
    UnitUtil.updateLoadedUnit(newUnit);
    if (viewer.getChosenMechSummary().getSourceFile().getName().endsWith(".zip")) {
        String fileName = viewer.getChosenMechSummary().getSourceFile().getAbsolutePath();
        fileName = fileName.substring(0, fileName.lastIndexOf(File.separatorChar) + 1);
        fileName = fileName + viewer.getChosenMechSummary().getName() + ".mtf";
        CConfig.updateSaveFiles(fileName);
    } else {
        CConfig.updateSaveFiles(viewer.getChosenMechSummary().getSourceFile().getAbsolutePath());
    }
    parentFrame.setEntity(newUnit);
    reload();
    refresh();
    parentFrame.setVisible(true);
}
Also used : MegaMekLabMainUI(megameklab.com.ui.MegaMekLabMainUI) Entity(megamek.common.Entity) UnitLoadingDialog(megamek.client.ui.swing.UnitLoadingDialog) UnitSelectorDialog(megamek.client.ui.swing.UnitSelectorDialog) MegaMek(megamek.MegaMek) MegaMekLabMainUI(megameklab.com.ui.MegaMekLabMainUI) Aero(megamek.common.Aero) BattleArmor(megamek.common.BattleArmor)

Example 2 with Aero

use of megamek.common.Aero in project megameklab by MegaMek.

the class MenuBarCreator method jMenuResetEntity_actionPerformed.

public void jMenuResetEntity_actionPerformed(ActionEvent event) {
    CConfig.updateSaveFiles("Reset Unit");
    CConfig.setParam(CConfig.CONFIG_SAVE_FILE_1, "");
    Entity en = parentFrame.getEntity();
    if (en instanceof Tank) {
        parentFrame.createNewUnit(Entity.ETYPE_TANK);
    } else if (en instanceof Mech) {
        parentFrame.createNewUnit(Entity.ETYPE_BIPED_MECH, ((Mech) en).isPrimitive(), ((Mech) en).isIndustrial());
    } else if (en.hasETypeFlag(Entity.ETYPE_DROPSHIP)) {
        parentFrame.createNewUnit(Entity.ETYPE_DROPSHIP);
    } else if (en.hasETypeFlag(Entity.ETYPE_SMALL_CRAFT)) {
        parentFrame.createNewUnit(Entity.ETYPE_SMALL_CRAFT, ((Aero) en).isPrimitive());
    } else if (parentFrame.getEntity() instanceof Aero) {
        parentFrame.createNewUnit(Entity.ETYPE_AERO, ((Aero) en).isPrimitive());
    } else if (parentFrame.getEntity() instanceof BattleArmor) {
        parentFrame.createNewUnit(Entity.ETYPE_BATTLEARMOR);
    } else if (parentFrame.getEntity() instanceof Infantry) {
        parentFrame.createNewUnit(Entity.ETYPE_INFANTRY);
    } else {
        System.out.println("util.MenuBarCreatoer: " + "Received unknown entityType!");
    }
    setVisible(true);
    reload();
    refresh();
    parentFrame.setVisible(true);
    parentFrame.repaint();
}
Also used : Entity(megamek.common.Entity) Infantry(megamek.common.Infantry) Mech(megamek.common.Mech) Tank(megamek.common.Tank) Aero(megamek.common.Aero) BattleArmor(megamek.common.BattleArmor)

Example 3 with Aero

use of megamek.common.Aero in project megameklab by MegaMek.

the class UnitUtil method removeMounted.

public static void removeMounted(Entity unit, Mounted mount) {
    UnitUtil.removeCriticals(unit, mount);
    // Some special checks for BA
    if (unit instanceof BattleArmor) {
        // to detach the weapon
        if (mount.getType().hasFlag(MiscType.F_DETACHABLE_WEAPON_PACK) && (mount.getLinked() != null)) {
            Mounted link = mount.getLinked();
            link.setDWPMounted(false);
            link.setLinked(null);
            link.setLinkedBy(null);
        }
        // to clear the mounted status of the DWP
        if ((mount.getLinkedBy() != null) && mount.getLinkedBy().getType().hasFlag(MiscType.F_DETACHABLE_WEAPON_PACK)) {
            Mounted dwp = mount.getLinkedBy();
            dwp.setLinked(null);
            dwp.setLinkedBy(null);
        }
        // to detach the weapon
        if (mount.getType().hasFlag(MiscType.F_AP_MOUNT) && (mount.getLinked() != null)) {
            Mounted link = mount.getLinked();
            link.setAPMMounted(false);
            link.setLinked(null);
            link.setLinkedBy(null);
        }
        // to clear the mounted status of the AP Mount
        if ((mount.getLinkedBy() != null) && mount.getLinkedBy().getType().hasFlag(MiscType.F_AP_MOUNT)) {
            Mounted apm = mount.getLinkedBy();
            apm.setLinked(null);
            apm.setLinkedBy(null);
        }
    }
    // Some special checks for Aeros
    if (unit instanceof Aero) {
        if (mount.getType() instanceof WeaponType) {
            // Aeros have additional weapon lists that need to be cleared
            ((Aero) unit).getTotalWeaponList().remove(mount);
            ((Aero) unit).getWeaponBayList().remove(mount);
            ((Aero) unit).getWeaponGroupList().remove(mount);
        }
    }
    // We will need to reset the equipment numbers of the bay ammo and weapons
    Map<Mounted, List<Mounted>> bayWeapons = new HashMap<>();
    Map<Mounted, List<Mounted>> bayAmmo = new HashMap<>();
    for (Mounted bay : unit.getWeaponBayList()) {
        List<Mounted> list = bay.getBayWeapons().stream().map(n -> unit.getEquipment(n)).collect(Collectors.toList());
        bayWeapons.put(bay, list);
        list = bay.getBayAmmo().stream().map(n -> unit.getEquipment(n)).collect(Collectors.toList());
        bayAmmo.put(bay, list);
    }
    unit.getEquipment().remove(mount);
    if (mount.getType() instanceof MiscType) {
        unit.getMisc().remove(mount);
    } else if (mount.getType() instanceof AmmoType) {
        unit.getAmmo().remove(mount);
    } else {
        unit.getWeaponList().remove(mount);
        unit.getTotalWeaponList().remove(mount);
    }
    for (Mounted bay : bayWeapons.keySet()) {
        bay.getBayWeapons().clear();
        for (Mounted w : bayWeapons.get(bay)) {
            if (mount != w) {
                bay.getBayWeapons().add(unit.getEquipmentNum(w));
            }
        }
    }
    for (Mounted bay : bayAmmo.keySet()) {
        bay.getBayAmmo().clear();
        for (Mounted a : bayAmmo.get(bay)) {
            if (mount != a) {
                bay.getBayAmmo().add(unit.getEquipmentNum(a));
            }
        }
    }
    // An example of this would be removing a linked Artemis IV FCS
    for (Mounted m : unit.getEquipment()) {
        if (mount.equals(m.getLinkedBy())) {
            m.setLinkedBy(null);
        }
    }
}
Also used : CapitalMissileWeapon(megamek.common.weapons.capitalweapons.CapitalMissileWeapon) Arrays(java.util.Arrays) Dropship(megamek.common.Dropship) RLWeapon(megamek.common.weapons.missiles.RLWeapon) CriticalSlot(megamek.common.CriticalSlot) TestTank(megamek.common.verifier.TestTank) StopSwarmAttack(megamek.common.weapons.StopSwarmAttack) Vector(java.util.Vector) BattleArmor(megamek.common.BattleArmor) HVACWeapon(megamek.common.weapons.autocannons.HVACWeapon) Map(java.util.Map) SRTWeapon(megamek.common.weapons.srms.SRTWeapon) BigInteger(java.math.BigInteger) SmallCraft(megamek.common.SmallCraft) AmmoWeapon(megamek.common.weapons.AmmoWeapon) JFrame(javax.swing.JFrame) Infantry(megamek.common.Infantry) LegAttack(megamek.common.weapons.LegAttack) StreakLRMWeapon(megamek.common.weapons.lrms.StreakLRMWeapon) EnergyWeapon(megamek.common.weapons.lasers.EnergyWeapon) Mech(megamek.common.Mech) GaussWeapon(megamek.common.weapons.gaussrifles.GaussWeapon) VTOL(megamek.common.VTOL) ISAPDS(megamek.common.weapons.other.ISAPDS) Protomech(megamek.common.Protomech) WeaponType(megamek.common.WeaponType) MPodWeapon(megamek.common.weapons.defensivepods.MPodWeapon) Tank(megamek.common.Tank) Entity(megamek.common.Entity) ISC3M(megamek.common.weapons.other.ISC3M) HAGWeapon(megamek.common.weapons.gaussrifles.HAGWeapon) LogLevel(megamek.common.logging.LogLevel) ThunderBoltWeapon(megamek.common.weapons.missiles.ThunderBoltWeapon) VehicleFlamerWeapon(megamek.common.weapons.flamers.VehicleFlamerWeapon) ArrayList(java.util.ArrayList) HTMLEditorKit(javax.swing.text.html.HTMLEditorKit) EquipmentType(megamek.common.EquipmentType) MegaMekLab(megameklab.com.MegaMekLab) JEditorPane(javax.swing.JEditorPane) JTextPane(javax.swing.JTextPane) ITechManager(megamek.common.ITechManager) TechConstants(megamek.common.TechConstants) TestMech(megamek.common.verifier.TestMech) Nullable(megamek.common.annotations.Nullable) ISC3MBS(megamek.common.weapons.other.ISC3MBS) SwarmAttack(megamek.common.weapons.SwarmAttack) File(java.io.File) JScrollPane(javax.swing.JScrollPane) PPCWeapon(megamek.common.weapons.ppc.PPCWeapon) EntityVerifier(megamek.common.verifier.EntityVerifier) JDialog(javax.swing.JDialog) DecimalFormatSymbols(java.text.DecimalFormatSymbols) Aero(megamek.common.Aero) ISAMS(megamek.common.weapons.other.ISAMS) EntityWeightClass(megamek.common.EntityWeightClass) ISTAG(megamek.common.weapons.tag.ISTAG) ISLaserAMS(megamek.common.weapons.other.ISLaserAMS) ISBALightTAG(megamek.common.weapons.battlearmor.ISBALightTAG) CLLightTAG(megamek.common.weapons.tag.CLLightTAG) TestEntity(megamek.common.verifier.TestEntity) StreakSRMWeapon(megamek.common.weapons.srms.StreakSRMWeapon) Bay(megamek.common.Bay) TestAero(megamek.common.verifier.TestAero) TestBattleArmor(megamek.common.verifier.TestBattleArmor) SwarmWeaponAttack(megamek.common.weapons.SwarmWeaponAttack) CLBALightTAG(megamek.common.weapons.battlearmor.CLBALightTAG) ScrollPaneConstants(javax.swing.ScrollPaneConstants) LocationFullException(megamek.common.LocationFullException) Font(java.awt.Font) MRMWeapon(megamek.common.weapons.missiles.MRMWeapon) TestInfantry(megamek.common.verifier.TestInfantry) BPodWeapon(megamek.common.weapons.defensivepods.BPodWeapon) TestSmallCraft(megamek.common.verifier.TestSmallCraft) Collectors(java.util.stream.Collectors) LBXACWeapon(megamek.common.weapons.autocannons.LBXACWeapon) Dimension(java.awt.Dimension) List(java.util.List) MiscType(megamek.common.MiscType) TripodMech(megamek.common.TripodMech) Optional(java.util.Optional) UACWeapon(megamek.common.weapons.autocannons.UACWeapon) SRMWeapon(megamek.common.weapons.srms.SRMWeapon) CLBALBX(megamek.common.weapons.battlearmor.CLBALBX) ConcurrentLinkedQueue(java.util.concurrent.ConcurrentLinkedQueue) CLChemicalLaserWeapon(megamek.common.weapons.lasers.CLChemicalLaserWeapon) CLTAG(megamek.common.weapons.tag.CLTAG) ISPlasmaRifle(megamek.common.weapons.ppc.ISPlasmaRifle) TestSupportVehicle(megamek.common.verifier.TestSupportVehicle) InfantryRifleAutoRifleWeapon(megamek.common.weapons.infantry.InfantryRifleAutoRifleWeapon) MGWeapon(megamek.common.weapons.mgs.MGWeapon) HashMap(java.util.HashMap) CLAMS(megamek.common.weapons.other.CLAMS) CLLaserAMS(megamek.common.weapons.other.CLLaserAMS) Graphics2D(java.awt.Graphics2D) BipedMech(megamek.common.BipedMech) Mounted(megamek.common.Mounted) MechView(megamek.common.MechView) AmmoType(megamek.common.AmmoType) ITechnology(megamek.common.ITechnology) CLPlasmaCannon(megamek.common.weapons.ppc.CLPlasmaCannon) LRTWeapon(megamek.common.weapons.lrms.LRTWeapon) DecimalFormat(java.text.DecimalFormat) LRMWeapon(megamek.common.weapons.lrms.LRMWeapon) FileInputStream(java.io.FileInputStream) LandAirMech(megamek.common.LandAirMech) JOptionPane(javax.swing.JOptionPane) InfantryWeapon(megamek.common.weapons.infantry.InfantryWeapon) ACWeapon(megamek.common.weapons.autocannons.ACWeapon) MMLogger(megamek.common.logging.MMLogger) DefaultCaret(javax.swing.text.DefaultCaret) QuadMech(megamek.common.QuadMech) InputStream(java.io.InputStream) AmmoType(megamek.common.AmmoType) HashMap(java.util.HashMap) Mounted(megamek.common.Mounted) WeaponType(megamek.common.WeaponType) MiscType(megamek.common.MiscType) ArrayList(java.util.ArrayList) List(java.util.List) Aero(megamek.common.Aero) TestAero(megamek.common.verifier.TestAero) BattleArmor(megamek.common.BattleArmor) TestBattleArmor(megamek.common.verifier.TestBattleArmor)

Example 4 with Aero

use of megamek.common.Aero in project megameklab by MegaMek.

the class ImageHelper method getRecordSheet.

public static Image getRecordSheet(Entity unit, boolean advanced) {
    Image recordSheet = null;
    String path = new File(recordSheetPath).getAbsolutePath() + File.separatorChar;
    if (unit instanceof BipedMech) {
        if (advanced) {
            recordSheet = new ImageIcon(path + "tobiped.png").getImage();
        } else {
            recordSheet = new ImageIcon(path + "twbiped.png").getImage();
        }
    } else if (unit instanceof QuadMech) {
        if (advanced) {
            recordSheet = new ImageIcon(path + "toquad.png").getImage();
        } else {
            recordSheet = new ImageIcon(path + "twquad.png").getImage();
        }
    } else if (unit instanceof VTOL) {
        recordSheet = new ImageIcon(path + "twvee-vtol.png").getImage();
    } else if ((unit instanceof LargeSupportTank) || ((unit instanceof Tank) && ((Tank) unit).isSuperHeavy())) {
        if (unit.getOInternal(LargeSupportTank.LOC_TURRET) > 0) {
            recordSheet = new ImageIcon(path + "twvee-lgsupground-turret.png").getImage();
        } else {
            recordSheet = new ImageIcon(path + "twvee-lgsupground.png").getImage();
        }
    } else if (unit instanceof Tank) {
        if ((unit.getMovementMode() == EntityMovementMode.NAVAL) || (unit.getMovementMode() == EntityMovementMode.SUBMARINE) || (unit.getMovementMode() == EntityMovementMode.HYDROFOIL)) {
            if (unit.getOInternal(((Tank) unit).getLocTurret()) > 0) {
                recordSheet = new ImageIcon(path + "twnaval-turret.png").getImage();
            } else {
                recordSheet = new ImageIcon(path + "twnaval.png").getImage();
            }
        } else if (advanced) {
            String imageName = "twvee-" + unit.getMovementModeAsString().toLowerCase().trim() + "-dualturret.png";
            recordSheet = new ImageIcon(path + imageName).getImage();
        } else {
            String imageName = "twvee-" + unit.getMovementModeAsString().toLowerCase().trim() + ".png";
            recordSheet = new ImageIcon(path + imageName).getImage();
        }
    } else if (unit instanceof Aero) {
        if (unit instanceof Dropship) {
            if (unit.getMovementMode() == EntityMovementMode.AERODYNE) {
                recordSheet = new ImageIcon(path + "twaerodyneds.png").getImage();
            } else {
                recordSheet = new ImageIcon(path + "twspheroidds.png").getImage();
            }
        } else if (unit instanceof ConvFighter) {
            recordSheet = new ImageIcon(path + "twconventionalfighter.png").getImage();
        } else if (unit instanceof SmallCraft) {
            if (unit.getMovementMode() == EntityMovementMode.AERODYNE) {
                recordSheet = new ImageIcon(path + "twaero-smallcraft.png").getImage();
            } else {
                recordSheet = new ImageIcon(path + "twspheroid-smallcraft.png").getImage();
            }
        } else {
            recordSheet = new ImageIcon(path + "twaero.png").getImage();
        }
    } else if (unit instanceof BattleArmor) {
        recordSheet = new ImageIcon(path + "twba.png").getImage();
    } else if (unit instanceof Protomech) {
        recordSheet = new ImageIcon(path + "twproto.png").getImage();
    }
    return recordSheet;
}
Also used : QuadMech(megamek.common.QuadMech) ImageIcon(javax.swing.ImageIcon) LargeSupportTank(megamek.common.LargeSupportTank) Dropship(megamek.common.Dropship) ConvFighter(megamek.common.ConvFighter) Image(java.awt.Image) LargeSupportTank(megamek.common.LargeSupportTank) Tank(megamek.common.Tank) SmallCraft(megamek.common.SmallCraft) VTOL(megamek.common.VTOL) Protomech(megamek.common.Protomech) BipedMech(megamek.common.BipedMech) File(java.io.File) Aero(megamek.common.Aero) BattleArmor(megamek.common.BattleArmor)

Example 5 with Aero

use of megamek.common.Aero in project megameklab by MegaMek.

the class CriticalTransferHandler method importData.

/**
 */
@Override
public boolean importData(TransferSupport info) {
    if (!info.isDrop() || !((getUnit() instanceof Mech) || (getUnit() instanceof Aero) || (getUnit() instanceof BattleArmor))) {
        return false;
    }
    int trooper = 0;
    if (info.getComponent() instanceof DropTargetCriticalList) {
        DropTargetCriticalList<?> list = (DropTargetCriticalList<?>) info.getComponent();
        if (getUnit() instanceof BattleArmor) {
            String[] split = list.getName().split(":");
            if (split.length != 2) {
                return false;
            }
            location = Integer.parseInt(split[0]);
            trooper = Integer.parseInt(split[1]);
        } else {
            location = Integer.parseInt(list.getName());
        }
        Transferable t = info.getTransferable();
        int slotNumber = list.getDropLocation().getIndex();
        try {
            Mounted eq = getUnit().getEquipment(Integer.parseInt((String) t.getTransferData(DataFlavor.stringFlavor)));
            if (getUnit() instanceof BattleArmor) {
                if ((location == eq.getBaMountLoc()) && (trooper == eq.getLocation())) {
                    return false;
                }
            } else {
                // the criticals its mounted in
                if (eq.getLocation() != Entity.LOC_NONE || eq.getSecondLocation() != Entity.LOC_NONE) {
                    UnitUtil.removeCriticals(getUnit(), eq);
                    changeMountStatus(eq, Entity.LOC_NONE, false);
                } else {
                    eq.setOmniPodMounted(UnitUtil.canPodMount(getUnit(), eq));
                }
            }
            if (!UnitUtil.isValidLocation(getUnit(), eq.getType(), location)) {
                JOptionPane.showMessageDialog(null, eq.getName() + " can't be placed in " + getUnit().getLocationName(location) + "!", "Invalid Location", JOptionPane.INFORMATION_MESSAGE);
                return false;
            }
            if (getUnit() instanceof Aero) {
                return addEquipmentAero((Aero) getUnit(), eq);
            } else if (getUnit() instanceof Mech) {
                // superheavies can put 2 ammobins or heatsinks in one crit
                if ((getUnit() instanceof Mech) && ((Mech) getUnit()).isSuperHeavy()) {
                    CriticalSlot cs = getUnit().getCritical(location, slotNumber);
                    if ((cs != null) && (cs.getType() == CriticalSlot.TYPE_EQUIPMENT) && (cs.getMount2() == null)) {
                        EquipmentType etype = cs.getMount().getType();
                        EquipmentType etype2 = eq.getType();
                        boolean canDouble = false;
                        if ((etype instanceof AmmoType) && (etype2 instanceof AmmoType)) {
                            canDouble = (((AmmoType) etype).getAmmoType() == ((AmmoType) etype2).getAmmoType()) && (((AmmoType) etype).getRackSize() == ((AmmoType) etype2).getRackSize());
                        } else if (etype.equals(etype2) && UnitUtil.isHeatSink(etype)) {
                            canDouble = etype.getCriticals(getUnit()) == 1;
                        }
                        if (canDouble) {
                            cs.setMount2(eq);
                            changeMountStatus(eq, location, false);
                            return true;
                        }
                    }
                }
                return addEquipmentMech((Mech) getUnit(), eq, slotNumber);
            } else if (getUnit() instanceof BattleArmor) {
                return addEquipmentBA((BattleArmor) getUnit(), eq, trooper);
            }
        } catch (LocationFullException lfe) {
            JOptionPane.showMessageDialog(null, lfe.getMessage(), "Location Full", JOptionPane.INFORMATION_MESSAGE);
            return false;
        } catch (Exception ex) {
            ex.printStackTrace();
        }
        return true;
    }
    return false;
}
Also used : CriticalSlot(megamek.common.CriticalSlot) Transferable(java.awt.datatransfer.Transferable) EquipmentType(megamek.common.EquipmentType) EntityLoadingException(megamek.common.loaders.EntityLoadingException) UnsupportedFlavorException(java.awt.datatransfer.UnsupportedFlavorException) LocationFullException(megamek.common.LocationFullException) IOException(java.io.IOException) AmmoType(megamek.common.AmmoType) LocationFullException(megamek.common.LocationFullException) Mounted(megamek.common.Mounted) Mech(megamek.common.Mech) LandAirMech(megamek.common.LandAirMech) Aero(megamek.common.Aero) TestAero(megamek.common.verifier.TestAero) BattleArmor(megamek.common.BattleArmor) TestBattleArmor(megamek.common.verifier.TestBattleArmor)

Aggregations

Aero (megamek.common.Aero)11 BattleArmor (megamek.common.BattleArmor)9 Tank (megamek.common.Tank)8 Mech (megamek.common.Mech)7 Entity (megamek.common.Entity)6 Infantry (megamek.common.Infantry)6 File (java.io.File)4 SmallCraft (megamek.common.SmallCraft)4 ActionEvent (java.awt.event.ActionEvent)2 ActionListener (java.awt.event.ActionListener)2 DecimalFormat (java.text.DecimalFormat)2 ArrayList (java.util.ArrayList)2 List (java.util.List)2 Vector (java.util.Vector)2 Collectors (java.util.stream.Collectors)2 JFrame (javax.swing.JFrame)2 JMenu (javax.swing.JMenu)2 JMenuItem (javax.swing.JMenuItem)2 JOptionPane (javax.swing.JOptionPane)2 AmmoType (megamek.common.AmmoType)2