/** Creates new MapSettings */ private MapSettings() { this(megamek.common.preference.PreferenceManager.getClientPreferences().getBoardWidth(), megamek.common.preference.PreferenceManager.getClientPreferences().getBoardHeight(), megamek.common.preference.PreferenceManager.getClientPreferences().getMapWidth(), megamek.common.preference.PreferenceManager.getClientPreferences().getMapHeight()); }
/** * Called to determine whether the game log should be kept. * <p> * Default implementation delegates to {@code PreferenceManager.getClientPreferences()}. */ protected boolean keepGameLog() { return PreferenceManager.getClientPreferences().keepGameLog(); }
public void actionPerformed(ActionEvent e) { if (!"cancel".equals(e.getActionCommand())) { //$NON-NLS-1$ try { playerName = yourNameF.getText(); serverAddr = serverAddrF.getText(); port = Integer.decode(portF.getText().trim()).intValue(); } catch (NumberFormatException ex) { System.err.println(ex.getMessage()); } // update settings PreferenceManager.getClientPreferences().setLastPlayerName( playerName); PreferenceManager.getClientPreferences().setLastConnectAddr( serverAddr); PreferenceManager.getClientPreferences().setLastConnectPort(port); } setVisible(false); } }
/** * Inserts a date/time stamp into the given filename string just before the * last period. If there is no period in the filename, the stamp is added to * the end. The format of the stamp is dictated by the client option * "StampFormat", which must use the same formatting as Java's * SimpleDateFormat class. * * @param filename the String containing the filename (with extension) * @return the filname with date/time stamp added */ public static String addDateTimeStamp(String filename) { SimpleDateFormat formatter = new SimpleDateFormat(PreferenceManager .getClientPreferences().getStampFormat()); Date current = new Date(); if (filename.lastIndexOf(".") == -1) { return filename + formatter.format(current); } return filename.substring(0, filename.lastIndexOf(".")) + formatter.format(current) + filename.substring(filename.lastIndexOf(".")); }
/** * Perform a dump of the current memory usage. * <p/> * This method is useful in tracking performance issues on various player's * systems. You can activate it by changing the "memorydumpon" setting to * "true" in the clientsettings.xml file. * * @param where * - a <code>String</code> indicating which part of the game is * making this call. */ private void memDump(String where) { if (PreferenceManager.getClientPreferences().memoryDumpOn()) { StringBuffer buf = new StringBuffer(); final long total = Runtime.getRuntime().totalMemory(); final long free = Runtime.getRuntime().freeMemory(); final long used = total - free; buf.append("Memory dump ").append(where); //$NON-NLS-1$ for (int loop = where.length(); loop < 25; loop++) { buf.append(' '); } buf.append(": used (").append(used).append(") + free (").append(free).append(") = ").append(total); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ System.out.println(buf.toString()); } }
/** * Generate the short name for a unit * <p/> * Sub-classes are allowed to override this method. The display name is in * the format [Chassis] [Model]. */ public void generateShortName() { StringBuffer nbuf = new StringBuffer(); nbuf.append(chassis); if ((model != null) && (model.length() > 0)) { nbuf.append(" ").append(model); } // if show unit id is on, append the id if (PreferenceManager.getClientPreferences().getShowUnitId()) { nbuf.append(" ID:").append(getId()); } else if (duplicateMarker > 1) { // if not, and a player has more than one unit with the same name, // append "#N" after the model to differentiate. nbuf.append(" #" + duplicateMarker); } shortName = nbuf.toString(); }
/** * Saves server entity status data to a local file */ private void saveEntityStatus(String sStatus) { try { String sLogDir = PreferenceManager.getClientPreferences().getLogDirectory(); File logDir = new File(sLogDir); if (!logDir.exists()) { logDir.mkdir(); } String fileName = "entitystatus.txt"; if (PreferenceManager.getClientPreferences().stampFilenames()) { fileName = StringUtil.addDateTimeStamp(fileName); } FileWriter fw = new FileWriter(sLogDir + File.separator + fileName); fw.write(sStatus); fw.flush(); fw.close(); } catch (Exception e) { e.printStackTrace(); } }
/** * Creates GameLog named * * @filename */ public GameLog(String filename) { try { File logDir = new File(LOG_DIR); if (!logDir.exists()) { logDir.mkdir(); } // maxFilesize = maxSize; if (PreferenceManager.getClientPreferences().stampFilenames()) { filename = StringUtil.addDateTimeStamp(filename); } logfile = new File(LOG_DIR + File.separator + filename); // writer = new BufferedWriter(new FileWriter(LOG_DIR + // File.separator + filename, append)); writer = new BufferedWriter(new FileWriter(logfile)); append("Log file opened " + new Date().toString()); //$NON-NLS-1$ } catch (IOException ex) { writer = null; System.err.println("GameLog:" + ex.getMessage()); } }
@Override public boolean isCrippled() { double activeTroopPercent = (double)getInternal(LOC_INFANTRY) / getOInternal(LOC_INFANTRY); if (activeTroopPercent < 0.25) { if (PreferenceManager.getClientPreferences().debugOutputOn()) { System.out.println(getDisplayName() + " CRIPPLED: only " + NumberFormat.getPercentInstance().format( activeTroopPercent) + " troops remaining."); } return true; } return false; }
@Override public boolean isCrippled() { double activeTroopPercent = (double) getNumberActiverTroopers() / getSquadSize(); if (activeTroopPercent < 0.5) { if (PreferenceManager.getClientPreferences().debugOutputOn()) { System.out.println(getDisplayName() + " CRIPPLED: only " + NumberFormat.getPercentInstance().format( activeTroopPercent) + " troops remaining."); } return true; } return false; }
private void initGameLog() { // log = new GameLog( // PreferenceManager.getClientPreferences().getGameLogFilename(), // false, // (new // Integer(PreferenceManager.getClientPreferences().getGameLogMaxSize()).longValue() // * 1024 * 1024) ); log = new GameLog(PreferenceManager.getClientPreferences().getGameLogFilename()); log.append("<html><body>"); }
@Override public boolean isCrippled() { if (isMilitary() && !hasViableWeapons()) { if (PreferenceManager.getClientPreferences().debugOutputOn()) { System.out.println(getDisplayName() + " CRIPPLED: no viable weapons left."); } return true; } return false; }
/** * Sends the info associated with the local player. */ public void sendPlayerInfo() { IPlayer player = game.getPlayer(localPlayerNumber); PreferenceManager.getClientPreferences().setLastPlayerColor(player.getColorIndex()); PreferenceManager.getClientPreferences().setLastPlayerCategory(player.getCamoCategory()); PreferenceManager.getClientPreferences().setLastPlayerCamoName(player.getCamoFileName()); send(new Packet(Packet.COMMAND_PLAYER_UPDATE, player)); }
@Override public void gameEntityChange(GameEntityChangeEvent e) { if (PreferenceManager.getClientPreferences() .getPrintEntityChange()) { systemMessage(e.toString()); } } });
@Override public void gameEntityNew(GameEntityNewEvent e) { PlayerListDialog.refreshPlayerList(playerList, client); if (PreferenceManager.getClientPreferences() .getPrintEntityChange()) { systemMessage(e.getNumberOfEntities() + " Entities added."); } }
/** * Receives player information from the message packet. */ protected void receivePlayerInfo(Packet c) { int pindex = c.getIntValue(0); IPlayer newPlayer = (IPlayer) c.getObject(1); if (getPlayer(newPlayer.getId()) == null) { game.addPlayer(pindex, newPlayer); } else { game.setPlayer(pindex, newPlayer); } PreferenceManager.getClientPreferences().setLastPlayerColor(newPlayer.getColorIndex()); PreferenceManager.getClientPreferences().setLastPlayerCategory(newPlayer.getCamoCategory()); PreferenceManager.getClientPreferences().setLastPlayerCamoName(newPlayer.getCamoFileName()); }
@Override public boolean isCrippled() { if ((getCrew() != null) && (getCrew().getHits() >= 4)) { if (PreferenceManager.getClientPreferences().debugOutputOn()) { System.out.println(getDisplayName() + " CRIPPLED: Pilot has taken 4+ damage."); } return true; } for (Mounted weap : getWeaponList()) { if (!weap.isCrippled()) { return false; } } if (PreferenceManager.getClientPreferences().debugOutputOn()) { System.out.println(getDisplayName() + " CRIPPLED: has no more viable weapons."); } return true; }
private static void configureLogging(@Nullable final String logFileName) { final String qualifiedLogFilename = PreferenceManager.getClientPreferences().getLogDirectory() + File.separator + logFileName; resetLogFile(qualifiedLogFilename); configureLegacyLogging(logFileName); configureLog4j(logFileName); }
/** * Receives player information from the message packet. */ private void receivePlayerInfo(Packet c) { int pindex = c.getIntValue(0); IPlayer newPlayer = (IPlayer) c.getObject(1); if (getPlayer(newPlayer.getId()) == null) { getGame().addPlayer(pindex, newPlayer); } else { getGame().setPlayer(pindex, newPlayer); } PreferenceManager.getClientPreferences().setLastPlayerColor( newPlayer.getColorIndex()); PreferenceManager.getClientPreferences().setLastPlayerCategory( newPlayer.getCamoCategory()); PreferenceManager.getClientPreferences().setLastPlayerCamoName( newPlayer.getCamoFileName()); }
private void autoSetSkillsAndName(Entity e) { IClientPreferences cs = PreferenceManager.getClientPreferences(); for (int i = 0; i < e.getCrew().getSlotCount(); i++) { if(cs.useAverageSkills()) { int skills[] = m_client.getRandomSkillsGenerator().getRandomSkills(e, true); int gunnery = skills[0]; int piloting = skills[1]; e.getCrew().setGunnery(gunnery, i); e.getCrew().setPiloting(piloting, i); if (e.getCrew() instanceof LAMPilot) { skills = m_client.getRandomSkillsGenerator().getRandomSkills(e, true); ((LAMPilot)e.getCrew()).setGunneryAero(skills[0]); ((LAMPilot)e.getCrew()).setPilotingAero(skills[1]); } } e.getCrew().sortRandomSkills(); if(cs.generateNames()) { e.getCrew().setName(m_client.getRandomNameGenerator().generate(), i); } } }