diff options
Diffstat (limited to 'src/main/java/gtPlusPlus/api')
-rw-r--r-- | src/main/java/gtPlusPlus/api/recipe/GTPPRecipeMaps.java | 2 | ||||
-rw-r--r-- | src/main/java/gtPlusPlus/api/recipe/QuantumForceTransformerFrontend.java | 39 |
2 files changed, 40 insertions, 1 deletions
diff --git a/src/main/java/gtPlusPlus/api/recipe/GTPPRecipeMaps.java b/src/main/java/gtPlusPlus/api/recipe/GTPPRecipeMaps.java index 86ad9e879c..6958f71080 100644 --- a/src/main/java/gtPlusPlus/api/recipe/GTPPRecipeMaps.java +++ b/src/main/java/gtPlusPlus/api/recipe/GTPPRecipeMaps.java @@ -51,7 +51,7 @@ public class GTPPRecipeMaps { .minInputs(1, 0) .progressBar(GT_UITextures.PROGRESSBAR_ARROW_MULTIPLE) .neiSpecialInfoFormatter(new SimpleSpecialValueFormatter("GT5U.nei.tier")) - .frontend(LargeNEIFrontend::new) + .frontend(QuantumForceTransformerFrontend::new) .disableOptimize() .build(); public static final RecipeMap<RecipeMapBackend> chemicalDehydratorRecipes = RecipeMapBuilder diff --git a/src/main/java/gtPlusPlus/api/recipe/QuantumForceTransformerFrontend.java b/src/main/java/gtPlusPlus/api/recipe/QuantumForceTransformerFrontend.java new file mode 100644 index 0000000000..93f19af9e8 --- /dev/null +++ b/src/main/java/gtPlusPlus/api/recipe/QuantumForceTransformerFrontend.java @@ -0,0 +1,39 @@ +package gtPlusPlus.api.recipe; + +import javax.annotation.ParametersAreNonnullByDefault; + +import codechicken.nei.PositionedStack; +import gregtech.api.recipe.BasicUIPropertiesBuilder; +import gregtech.api.recipe.NEIRecipePropertiesBuilder; +import gregtech.api.recipe.maps.LargeNEIFrontend; +import gregtech.api.util.MethodsReturnNonnullByDefault; +import gregtech.nei.GT_NEI_DefaultHandler; +import gtPlusPlus.xmod.gregtech.common.tileentities.machines.multi.production.GregtechMetaTileEntity_QuantumForceTransformer; + +@ParametersAreNonnullByDefault +@MethodsReturnNonnullByDefault +public class QuantumForceTransformerFrontend extends LargeNEIFrontend { + + public QuantumForceTransformerFrontend(BasicUIPropertiesBuilder uiPropertiesBuilder, + NEIRecipePropertiesBuilder neiPropertiesBuilder) { + super(uiPropertiesBuilder, neiPropertiesBuilder); + } + + public String getChanceFormat(int chance) { + return GT_NEI_DefaultHandler.FixedPositionedStack.chanceFormat.format((float) chance / 10000); + } + + @Override + public void drawNEIOverlays(GT_NEI_DefaultHandler.CachedDefaultRecipe neiCachedRecipe) { + // Replicates the default behaviour, but since we cannot actually modify the mChance variable we need to + // essentially re-implement it. + int chance = GregtechMetaTileEntity_QuantumForceTransformer.getBaseOutputChance(neiCachedRecipe.mRecipe); + String chanceFormat = getChanceFormat(chance); + for (PositionedStack stack : neiCachedRecipe.mOutputs) { + if (stack instanceof GT_NEI_DefaultHandler.FixedPositionedStack) { + super.drawNEIOverlayText(chanceFormat, stack); + } + } + super.drawNEIOverlays(neiCachedRecipe); + } +} |