/** * Calculate the entry fee for the guild based on the company value. * @param player for whom to calculate the entry fee * @return entry fee for the player. */ public int getEntryFee(IPlayer player) { long companyValue = player.getCompany().getCompanyValue(); int min = guildSettings.getMinEntryFee(); int max = guildSettings.getMaxEntryFee(); int span = max - min; if (companyValue <= MIN_COMPANY_VALUE) { return min; } if (companyValue >= MAX_COMPANY_VALUE) { return max; } double factor = companyValue * 1.0 / MAX_COMPANY_VALUE; double fee = min + span * factor; return (int)Math.rint(fee); }
@PostConstruct private void initializeDialog() { setTitle(messageSource.getMessage("ch.sahits.game.openpatrician.display.dialog.guild.GuildMediterraneanMapDialog.title", new Object[]{}, locale.getCurrentLocal())); IMediterreanMap map = guildSettings.getMediterreanMap(); Image image = imageUtilities.createMediterraneanMap(city.getPlayer(), map); ImageView imgView = new ImageView(image); imgView.setId("mediterraneanMap"); imgView.setFitWidth(WRAPPING_WIDTH); imgView.setPreserveRatio(true); VBox box = new VBox(imgView); box.setLayoutX(2 * FRAME_BORDER); box.setLayoutY(CLOSE_BTN_Y_POS - 500); getContent().add(box); } }
@PostConstruct private void initializeDialog() { setTitle(messageSource.getMessage("ch.sahits.game.openpatrician.display.dialog.guild.GuildTradeAgreementDialog.title", new Object[]{}, locale.getCurrentLocal())); IMediterreanMap map = guildSettings.getMediterreanMap(); List<ITradeAgreement> agreements = map.getTradeAgreements(city.getPlayer()); VBox box = new VBox(10); for (ITradeAgreement agreement : agreements) { String cityName = agreement.getTradeLocation().getName(); String ware = modelTranslations.getLocalDisplayName((EWare) agreement.getWare()); int price = agreement.getWareAndAmount().getAVGPrice(); int amount = agreement.getWareAndAmount().getAmount(); String till = modelTranslations.toDisplayString(agreement.getValidTill()); String template = messageSource.getMessage("ch.sahits.game.openpatrician.display.dialog.guild.GuildTradeAgreementDialog.agreement", new Object[]{cityName, amount, ware, price, till}, locale.getCurrentLocal()); DecoratedText text = textFactory.createDecoratedText(template, new HashMap<>()); box.getChildren().add(text); } box.setLayoutX(2 * FRAME_BORDER); box.setLayoutY(CLOSE_BTN_Y_POS - 500); getContent().add(box); } }