private void scaleImages(Game game) { for (Player player : game.getAllPlayers()) { Color color = player.getColors().getMeepleColor(); scaleFigureImages(player, color, player.getFollowers()); scaleFigureImages(player, color, player.getSpecialMeeples()); if (game.hasCapability(TunnelCapability.class)) { Image tunnelA = rm.getLayeredImage( new LayeredImageDescriptor( "player-meeples/tunnel", player.getColors().getMeepleColor())); Image tunnelB = rm.getLayeredImage( new LayeredImageDescriptor( "player-meeples/tunnel", player.getColors().getTunnelBColor())); scaledImages.put(player.getIndex() + "tunnelA", scaleImage(tunnelA)); scaledImages.put(player.getIndex() + "tunnelB", scaleImage(tunnelB)); } } if (game.hasCapability(TowerCapability.class)) { scaledImages.put("towerpiece", scaleImage(rm.getImage("neutral/towerpiece"))); } if (game.hasCapability(KingAndRobberBaronCapability.class)) { scaledImages.put("king", scaleImage(rm.getImage("neutral/king"))); scaledImages.put("robber", scaleImage(rm.getImage("neutral/robber"))); } if (game.hasCapability(BazaarCapability.class)) { scaledImages.put("bridge", scaleImage(rm.getImage("neutral/bridge"))); scaledImages.put("castle", scaleImage(rm.getImage("neutral/castle"))); } if (game.hasCapability(ClothWineGrainCapability.class)) { scaledImages.put("cloth", rm.getImage("neutral/cloth")); scaledImages.put("grain", rm.getImage("neutral/grain")); scaledImages.put("wine", rm.getImage("neutral/wine")); } if (game.hasCapability(BarnCapability.class)) { scaledImages.put("abbey", scaleImage(rm.getAbbeyImage(Rotation.R0).getImage())); } if (game.hasCapability(LittleBuildingsCapability.class)) { scaledImages.put("lb-tower", scaleImage(rm.getImage("neutral/lb-tower"))); scaledImages.put("lb-house", scaleImage(rm.getImage("neutral/lb-house"))); scaledImages.put("lb-shed", scaleImage(rm.getImage("neutral/lb-shed"))); } if (game.hasCapability(GoldminesCapability.class)) { scaledImages.put("gold", scaleImage(rm.getImage("neutral/gold"))); } if (game.hasCapability(DragonCapability.class)) { Image scaled = new ImageIcon(rm.getImage("neutral/dragon").getScaledInstance(42, 42, Image.SCALE_SMOOTH)) .getImage(); scaledImages.put("dragon", scaled); } if (game.hasCapability(FairyCapability.class)) { scaledImages.put("fairy", scaleImage(rm.getImage("neutral/fairy"))); } if (game.hasCapability(MageAndWitchCapability.class)) { scaledImages.put("mage", scaleImage(rm.getImage("neutral/mage"))); scaledImages.put("witch", scaleImage(rm.getImage("neutral/witch"))); } }
protected double meepleRating() { double rating = 0; for (Player p : getGame().getAllPlayers()) { double meeplePoints = 0; int limit = 0; for (Follower f : p.getFollowers()) { if (f.isDeployed()) { if (f instanceof SmallFollower) { meeplePoints += 0.15; } else if (f instanceof BigFollower) { meeplePoints += 0.25; } if (++limit == myTurnsLeft) break; } } rating += reducePoints(meeplePoints, p); } return rating; }