@Override public void update(IPartitionData partitionData) { int amountOf = partitionData != null ? partitionData.getAmountOf(material) : 0; plural = amountOf != 1; } }
private IMaterialDistributionSettings currentDistributionSettingsProvider(IGraphicsGrid grid, ShortPoint2D position) { if (currentTab != null) { if (grid.getPlayerIdAt(position.x, position.y) >= 0) { return grid.getPartitionData(position.x, position.y).getPartitionSettings().getDistributionSettings(currentTab.materialButton.getMaterial()); } } return null; }
private BitSet computeStockStates(IBuilding building) { if (building instanceof IBuilding.IStock && !construction) { BitSet acceptedMaterialsSet = new BitSet(); IStockSettings stockSettings = ((IBuilding.IStock) building).getStockSettings(); for (EMaterialType materialType : EMaterialType.DROPPABLE_MATERIALS) { acceptedMaterialsSet.set(materialType.ordinal, stockSettings.isAccepted(materialType)); } return acceptedMaterialsSet; } else { return null; } }
private void updatePositions() { IPartitionData data = getPartitonData(); if (data == null) { setOrder(null); removeAll(); } else { EMaterialType[] newOrder = new EMaterialType[EMaterialType.DROPPABLE_MATERIALS.length]; BitSet materialsAccepted = new BitSet(); for (int i = 0; i < newOrder.length; i++) { // FIXME: Synchronize! newOrder[i] = data.getPartitionSettings().getMaterialTypeForPriority(i); } IStockSettings stockSettings = data.getPartitionSettings().getStockSettings(); for (EMaterialType materialType : EMaterialType.DROPPABLE_MATERIALS) { materialsAccepted.set(materialType.ordinal, stockSettings.isAccepted(materialType)); } setOrder(newOrder); for (EMaterialType material : newOrder) { SelectionManagedMaterialButton button = buttons[material.ordinal]; AnimatablePosition position = positions[material.ordinal]; button.setDotColor(getColor(materialsAccepted, button)); removeChild(button); addChild(button, position.getX(), position.getY(), position.getX() + BUTTON_WIDTH, position.getY() + BUTTON_HEIGHT); } } }
void update(IMaterialDistributionSettings distributionSettings) { float probability = distributionSettings.getDistributionProbability(buildingType); float userBarValue = distributionSettings.getUserConfiguredDistributionValue(buildingType); lblPercentage.setText(Math.round(probability * 100) + "%"); barFill.setBarFill(userBarValue, probability); } }
@Override public void update(IBuildingCounts buildingCounts) { if (buildingCounts != null) { int constructed = buildingCounts.buildingsInPartition(getBuildingType()); int inConstruction = buildingCounts.buildingsInPartitionUnderConstruction(getBuildingType()); String text = constructed + (inConstruction == 0 ? "" : "\n+" + inConstruction); constructedLabel.setText(text); } else { constructedLabel.setText(""); } } }
public void distributeJobs() { for (int i = 0; i < EMaterialType.NUMBER_OF_DROPPABLE_MATERIALS && !joblessSupplier.isEmpty(); i++) { if (joblessSupplier.isEmpty()) // no jobless? just return break; distributeJobForMaterial(settings.getMaterialTypeForPriority(i)); } }
public int getNumberOfMaterialTypeForPlayer(EMaterialType type, byte playerId) { if (playerStatistics[playerId].materials == null) { return 0; } return playerStatistics[playerId].materials.getAmountOf(type); }
@Override public void update(IPartitionData partitionData) { int amountOf = partitionData != null ? partitionData.getAmountOf(material) : 0; plural = amountOf != 1; setText(amountOf + ""); } }