aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/common/fluid/GT_Fluid.java
diff options
context:
space:
mode:
authorNotAPenguin <michiel.vandeginste@gmail.com>2024-09-02 23:17:17 +0200
committerGitHub <noreply@github.com>2024-09-02 23:17:17 +0200
commit1b820de08a05070909a267e17f033fcf58ac8710 (patch)
tree02831a025986a06b20f87e5bcc69d1e0c639a342 /src/main/java/gregtech/common/fluid/GT_Fluid.java
parentafd3fd92b6a6ab9ab0d0dc3214e6bc8ff7a86c9b (diff)
downloadGT5-Unofficial-1b820de08a05070909a267e17f033fcf58ac8710.tar.gz
GT5-Unofficial-1b820de08a05070909a267e17f033fcf58ac8710.tar.bz2
GT5-Unofficial-1b820de08a05070909a267e17f033fcf58ac8710.zip
The Great Renaming (#3014)
* move kekztech to a single root dir * move detrav to a single root dir * move gtnh-lanthanides to a single root dir * move tectech and delete some gross reflection in gt++ * remove more reflection inside gt5u * delete more reflection in gt++ * fix imports * move bartworks and bwcrossmod * fix proxies * move galactigreg and ggfab * move gtneioreplugin * try to fix gt++ bee loader * apply the rename rules to BW * apply rename rules to bwcrossmod * apply rename rules to detrav scanner mod * apply rename rules to galacticgreg * apply rename rules to ggfab * apply rename rules to goodgenerator * apply rename rules to gtnh-lanthanides * apply rename rules to gt++ * apply rename rules to kekztech * apply rename rules to kubatech * apply rename rules to tectech * apply rename rules to gt apply the rename rules to gt * fix tt import * fix mui hopefully * fix coremod except intergalactic * rename assline recipe class * fix a class name i stumbled on * rename StructureUtility to GTStructureUtility to prevent conflict with structurelib * temporary rename of GTTooltipDataCache to old name * fix gt client/server proxy names
Diffstat (limited to 'src/main/java/gregtech/common/fluid/GT_Fluid.java')
-rw-r--r--src/main/java/gregtech/common/fluid/GT_Fluid.java209
1 files changed, 0 insertions, 209 deletions
diff --git a/src/main/java/gregtech/common/fluid/GT_Fluid.java b/src/main/java/gregtech/common/fluid/GT_Fluid.java
deleted file mode 100644
index 6ba8d7d23a..0000000000
--- a/src/main/java/gregtech/common/fluid/GT_Fluid.java
+++ /dev/null
@@ -1,209 +0,0 @@
-package gregtech.common.fluid;
-
-import static gregtech.api.recipe.RecipeMaps.fluidCannerRecipes;
-
-import javax.annotation.Nonnull;
-
-import net.minecraft.item.ItemStack;
-import net.minecraft.util.ResourceLocation;
-import net.minecraftforge.fluids.Fluid;
-import net.minecraftforge.fluids.FluidContainerRegistry;
-import net.minecraftforge.fluids.FluidRegistry;
-import net.minecraftforge.fluids.FluidStack;
-
-import gregtech.api.GregTech_API;
-import gregtech.api.enums.FluidState;
-import gregtech.api.enums.GT_Values;
-import gregtech.api.enums.Materials;
-import gregtech.api.interfaces.fluid.IGT_Fluid;
-import gregtech.api.interfaces.fluid.IGT_RegisteredFluid;
-import gregtech.api.util.GT_LanguageManager;
-import gregtech.api.util.GT_Utility;
-
-public class GT_Fluid extends Fluid implements IGT_Fluid, IGT_RegisteredFluid, Runnable {
-
- private final String localizedName;
- private final ResourceLocation stillIconResourceLocation;
- private final ResourceLocation flowingIconResourceLocation;
- private final short[] colorRGBA;
- private final FluidState fluidState;
- private final Fluid iconsFrom;
- private Fluid registeredFluid;
-
- /**
- * Constructs this {@link IGT_Fluid} implementation from an {@link GT_FluidBuilder} instance
- *
- * @param builder The {@link GT_FluidBuilder} instance to construct this {@link IGT_Fluid} implementation
- */
- protected GT_Fluid(@Nonnull final GT_FluidBuilder builder) {
- super(builder.fluidName);
- this.localizedName = builder.localizedName;
- this.stillIconResourceLocation = builder.stillIconResourceLocation;
- this.flowingIconResourceLocation = builder.flowingIconResourceLocation;
- this.iconsFrom = builder.iconsFrom;
- this.block = builder.fluidBlock;
- this.colorRGBA = builder.colorRGBA;
- this.fluidState = builder.fluidState;
- this.temperature = builder.temperature;
- configureFromStateTemperature();
- }
-
- /**
- * Adjusts this {@link Fluid}'s settings based on this {@link IGT_Fluid}'s state
- */
- protected void configureFromStateTemperature() {
- switch (fluidState) {
- case SLURRY:
- setGaseous(false).setViscosity(10000);
- break;
- case GAS:
- setGaseous(true).setDensity(-100)
- .setViscosity(200);
- break;
- case PLASMA:
- setGaseous(true).setDensity(55536)
- .setViscosity(10)
- .setLuminosity(15);
- break;
- case MOLTEN:
- final int luminosity;
- if (temperature >= 3500) {
- luminosity = 15;
- } else {
- luminosity = temperature < 1000 ? 0 : 14 * (temperature - 1000) / 2500 + 1;
- }
- setLuminosity(luminosity);
- case LIQUID:
- default:
- setGaseous(false).setViscosity(1000);
- break;
- }
- }
-
- // ----- Fluid implementations -----
-
- /**
- * @inheritDoc
- */
- @Override
- public int getColor() {
- return (Math.max(0, Math.min(255, colorRGBA[0])) << 16) | (Math.max(0, Math.min(255, colorRGBA[1])) << 8)
- | Math.max(0, Math.min(255, colorRGBA[2]));
- }
-
- // ----- IGT_Fluid interface implementations -----
-
- public IGT_RegisteredFluid addFluid() {
- if (FluidRegistry.registerFluid(GT_Fluid.this)) {
- // Registered as a new Fluid
- registeredFluid = this;
- // Adds a server-side localized-name
- GT_LanguageManager.addStringLocalization(getUnlocalizedName(), localizedName);
- } else {
- // Fluid already registered, get it from the registry
- registeredFluid = FluidRegistry.getFluid(GT_Fluid.this.fluidName);
- // Sets temperature of already registered fluids if they use the default (temperature = 300)
- if (registeredFluid.getTemperature() == new Fluid("test").getTemperature()) {
- registeredFluid.setTemperature(GT_Fluid.this.temperature);
- }
- }
- // Schedules the fluid for the block icons loader run() tasks
- GregTech_API.sGTBlockIconload.add(this);
- return this;
- }
-
- // ----- IGT_RegisteredFluid interface implementations -----
-
- /**
- * @inheritDoc
- */
- @Override
- public IGT_RegisteredFluid registerContainers(final ItemStack fullContainer, final ItemStack emptyContainer,
- final int containerSize) {
- if (fullContainer != null && emptyContainer != null) {
- final FluidStack fluidStack = new FluidStack(registeredFluid, containerSize);
- if (!FluidContainerRegistry.registerFluidContainer(fluidStack, fullContainer, emptyContainer)) {
- GT_Values.RA.stdBuilder()
- .itemInputs(fullContainer)
- .itemOutputs(GT_Utility.getContainerItem(fullContainer, false))
- .fluidOutputs(fluidStack)
- .duration(fluidStack.amount / 62)
- .eut(1)
- .addTo(fluidCannerRecipes);
- }
- }
- return this;
- }
-
- /**
- * @inheritDoc
- */
- @Override
- public IGT_RegisteredFluid registerBContainers(final ItemStack fullContainer, final ItemStack emptyContainer) {
- return registerContainers(fullContainer, emptyContainer, 1000);
- }
-
- /**
- * @inheritDoc
- */
- @Override
- public IGT_RegisteredFluid registerPContainers(final ItemStack fullContainer, final ItemStack emptyContainer) {
- return registerContainers(fullContainer, emptyContainer, 250);
- }
-
- /**
- * @inheritDoc
- */
- @Override
- public IGT_RegisteredFluid configureMaterials(final Materials material) {
- if (material != null) {
- switch (fluidState) {
- case SLURRY -> material.mSolid = registeredFluid;
- case GAS -> material.mGas = registeredFluid;
- case PLASMA -> material.mPlasma = registeredFluid;
- case MOLTEN -> material.mStandardMoltenFluid = registeredFluid;
- default -> material.mFluid = registeredFluid;
- }
- Materials.FLUID_MAP.put(registeredFluid, material);
- }
- return this;
- }
-
- /**
- * @inheritDoc
- */
- @Override
- public Fluid asFluid() {
- return registeredFluid;
- }
-
- // ----- Runnable interface implementations -----
-
- /**
- * This {@link Runnable#run()} implementation is scheduled within the {@link GregTech_API#sGTBlockIconload} to load
- * this {@link IGT_Fluid}'s texture icons.
- *
- * @see Runnable#run()
- */
- @Override
- public void run() {
- if (iconsFrom instanceof GT_Fluid) {
- // Needs the GT_Fluid to have registered its icons
- ((GT_Fluid) iconsFrom).run();
- stillIcon = iconsFrom.getStillIcon();
- flowingIcon = iconsFrom.getFlowingIcon();
- } else {
- if (stillIconResourceLocation != null) {
- stillIcon = GregTech_API.sBlockIcons.registerIcon(stillIconResourceLocation.toString());
- }
- if (flowingIconResourceLocation != null) {
- flowingIcon = GregTech_API.sBlockIcons.registerIcon(flowingIconResourceLocation.toString());
- }
- }
- }
-
- @Override
- public String toString() {
- return "GT_Fluid{" + "fluidName='" + fluidName + '\'' + '}';
- }
-}