Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 10 additions & 1 deletion docs/content/Modpacks/Changes/v8.0.0.md
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,16 @@ A large number of machine feature interfaces have been removed, and have had the
- `IHPCACoolantProvider` - Use `HPCACoolantProviderTrait`



## Other Changes

- `BlastingRecipeBuilder`, `CampfireRecipeBuilder`, `SmeltingRecipeBuilder` and `SmokingRecipeBuilder` have been merged into `SimpleCookingRecipeBuilder`
- Example usage: `SimpleCookingRecipeBuilder.campfireCooking("cooking_chicken").input(new ItemStack(Items.CHICKEN)).output(new ItemStacks(Items.COOKED_CHICKEN)).cookingTime(100).experience(100).save(provider);`
- Example usage: `SimpleCookingRecipeBuilder.campfireCooking("cooking_chicken").input(new ItemStack(Items.CHICKEN)).output(new ItemStacks(Items.COOKED_CHICKEN)).cookingTime(100).experience(100).save(provider);`

### File Structure Changes

- Some item classes have been moved from `api/item` to `common/item`
- All item behaviors have been moved to `common/item/behavior` from `common/item`
- `GTFluidBuilder` is now located at `api/registry/registrate` instead of `api/registry/registrate/forge`
- `GTFluidImpl` has been merged into `GTFluid`
- `TagUtil` is now located at `utils/` instead of `api/data/tag`
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import com.gregtechceu.gtceu.api.addon.events.KJSRecipeKeyEvent;
import com.gregtechceu.gtceu.api.addon.events.MaterialCasingCollectionEvent;
import com.gregtechceu.gtceu.api.data.worldgen.bedrockfluid.BedrockFluidDefinition;
import com.gregtechceu.gtceu.api.data.worldgen.bedrockore.BedrockOreDefinition;
import com.gregtechceu.gtceu.api.registry.registrate.GTRegistrate;
import com.gregtechceu.gtceu.common.data.GTOres;

Expand Down Expand Up @@ -96,7 +97,7 @@ default void registerOreVeins() {}
default void registerFluidVeins() {}

/**
* Use {@link com.gregtechceu.gtceu.api.data.worldgen.bedrockore.BedrockOreDefinition#builder(ResourceLocation)} to
* Use {@link BedrockOreDefinition#builder(ResourceLocation)} to
* register the veins.
*/
default void registerBedrockOreVeins() {}
Expand Down

This file was deleted.

21 changes: 0 additions & 21 deletions src/main/java/com/gregtechceu/gtceu/api/block/IAppearance.java

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
import com.gregtechceu.gtceu.client.model.pipe.PipeModel;
import com.gregtechceu.gtceu.common.data.GTItems;
import com.gregtechceu.gtceu.common.data.GTMaterialBlocks;
import com.gregtechceu.gtceu.common.item.CoverPlaceBehavior;
import com.gregtechceu.gtceu.common.item.behavior.CoverPlaceBehavior;
import com.gregtechceu.gtceu.config.ConfigHolder;
import com.gregtechceu.gtceu.data.recipe.VanillaRecipeHelper;
import com.gregtechceu.gtceu.utils.GTMath;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package com.gregtechceu.gtceu.api.capability.forge;
package com.gregtechceu.gtceu.api.capability;

import com.gregtechceu.gtceu.api.capability.*;
import com.gregtechceu.gtceu.api.machine.feature.multiblock.IMaintenanceMachine;

import net.minecraftforge.common.capabilities.Capability;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package com.gregtechceu.gtceu.api.capability;

import com.gregtechceu.gtceu.api.capability.forge.GTCapability;
import com.gregtechceu.gtceu.api.machine.feature.multiblock.IMaintenanceMachine;

import net.minecraft.core.BlockPos;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package com.gregtechceu.gtceu.api.capability.compat;

import com.gregtechceu.gtceu.api.GTValues;
import com.gregtechceu.gtceu.api.capability.GTCapability;
import com.gregtechceu.gtceu.api.capability.IEnergyContainer;
import com.gregtechceu.gtceu.api.capability.forge.GTCapability;
import com.gregtechceu.gtceu.config.ConfigHolder;
import com.gregtechceu.gtceu.utils.GTMath;
import com.gregtechceu.gtceu.utils.GTUtil;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package com.gregtechceu.gtceu.api.capability.recipe;

import com.gregtechceu.gtceu.api.codec.DispatchedMapCodec;
import com.gregtechceu.gtceu.api.recipe.GTRecipe;
import com.gregtechceu.gtceu.api.recipe.GTRecipeType;
import com.gregtechceu.gtceu.api.recipe.content.Content;
Expand All @@ -9,6 +8,7 @@
import com.gregtechceu.gtceu.api.recipe.lookup.ingredient.AbstractMapIngredient;
import com.gregtechceu.gtceu.api.recipe.ui.GTRecipeTypeUI;
import com.gregtechceu.gtceu.api.registry.GTRegistries;
import com.gregtechceu.gtceu.utils.codec.DispatchedMapCodec;

import com.lowdragmc.lowdraglib.gui.widget.Widget;
import com.lowdragmc.lowdraglib.gui.widget.WidgetGroup;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@
import com.gregtechceu.gtceu.api.data.chemical.material.stack.MaterialEntry;
import com.gregtechceu.gtceu.api.data.chemical.material.stack.MaterialStack;
import com.gregtechceu.gtceu.api.data.tag.TagPrefix;
import com.gregtechceu.gtceu.api.data.tag.TagUtil;
import com.gregtechceu.gtceu.api.fluids.store.FluidStorageKey;
import com.gregtechceu.gtceu.common.data.GTMaterials;
import com.gregtechceu.gtceu.utils.TagUtil;

import net.minecraft.MethodsReturnNonnullByDefault;
import net.minecraft.core.Holder;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@
import com.gregtechceu.gtceu.api.data.chemical.material.stack.MaterialStack;
import com.gregtechceu.gtceu.api.data.medicalcondition.MedicalCondition;
import com.gregtechceu.gtceu.api.data.tag.TagPrefix;
import com.gregtechceu.gtceu.api.data.tag.TagUtil;
import com.gregtechceu.gtceu.api.fluids.FluidBuilder;
import com.gregtechceu.gtceu.api.fluids.FluidState;
import com.gregtechceu.gtceu.api.fluids.store.FluidStorageKey;
Expand All @@ -22,6 +21,7 @@
import com.gregtechceu.gtceu.integration.kjs.helpers.MaterialStackWrapper;
import com.gregtechceu.gtceu.utils.FormattingUtil;
import com.gregtechceu.gtceu.utils.GTMath;
import com.gregtechceu.gtceu.utils.TagUtil;

import net.minecraft.network.chat.Component;
import net.minecraft.network.chat.MutableComponent;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@
import com.gregtechceu.gtceu.api.data.chemical.material.stack.MaterialEntry;
import com.gregtechceu.gtceu.api.data.medicalcondition.MedicalCondition;
import com.gregtechceu.gtceu.api.data.tag.TagPrefix;
import com.gregtechceu.gtceu.api.item.GTBucketItem;
import com.gregtechceu.gtceu.api.item.TagPrefixItem;
import com.gregtechceu.gtceu.api.item.armor.ArmorComponentItem;
import com.gregtechceu.gtceu.common.data.GTMaterials;
import com.gregtechceu.gtceu.common.item.GTBucketItem;
import com.gregtechceu.gtceu.config.ConfigHolder;
import com.gregtechceu.gtceu.data.recipe.CustomTags;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package com.gregtechceu.gtceu.api.data.tag;

import com.gregtechceu.gtceu.api.data.chemical.material.Material;
import com.gregtechceu.gtceu.utils.TagUtil;

import net.minecraft.tags.TagKey;
import net.minecraft.world.item.Item;
Expand Down
63 changes: 62 additions & 1 deletion src/main/java/com/gregtechceu/gtceu/api/fluids/GTFluid.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
import net.minecraft.MethodsReturnNonnullByDefault;
import net.minecraft.core.BlockPos;
import net.minecraft.core.Direction;
import net.minecraft.sounds.SoundEvent;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.Items;
import net.minecraft.world.level.BlockGetter;
Expand All @@ -17,15 +18,19 @@
import net.minecraft.world.level.block.LiquidBlock;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.StateDefinition;
import net.minecraft.world.level.material.FlowingFluid;
import net.minecraft.world.level.material.Fluid;
import net.minecraft.world.level.material.Fluids;
import net.minecraftforge.common.SoundActions;
import net.minecraftforge.fluids.FluidType;

import it.unimi.dsi.fastutil.objects.ObjectLinkedOpenHashSet;
import lombok.Getter;
import org.jetbrains.annotations.NotNull;

import java.util.Collection;
import java.util.Optional;
import java.util.function.Supplier;

import javax.annotation.ParametersAreNonnullByDefault;
Expand All @@ -44,17 +49,19 @@ public abstract class GTFluid extends FlowingFluid implements IAttributedFluid {
private final Supplier<? extends LiquidBlock> block;
@Getter
private final int burnTime;
private final Supplier<FluidType> fluidType;

public GTFluid(@NotNull FluidState state, Supplier<? extends Fluid> stillFluid,
Supplier<? extends Fluid> flowingFluid, Supplier<? extends LiquidBlock> block,
Supplier<? extends Item> bucket, int burnTime) {
Supplier<? extends Item> bucket, int burnTime, Supplier<FluidType> fluidType) {
super();
this.state = state;
this.stillFluid = stillFluid;
this.flowingFluid = flowingFluid;
this.block = block;
this.bucketItem = bucket;
this.burnTime = burnTime;
this.fluidType = fluidType;
}

@Override
Expand Down Expand Up @@ -127,4 +134,58 @@ public boolean isSame(Fluid fluid) {
boolean flowing = this.getFlowing() == fluid;
return still || flowing;
}

@Override
public FluidType getFluidType() {
return fluidType.get();
}

@Override
public Optional<SoundEvent> getPickupSound() {
return fluidType != null && fluidType.get() != null ?
Optional.ofNullable(fluidType.get().getSound(SoundActions.BUCKET_FILL)) : Optional.empty();
}

public static class Source extends GTFluid {

public Source(@NotNull FluidState state, Supplier<? extends Fluid> stillFluid,
Supplier<? extends Fluid> flowingFluid, Supplier<? extends LiquidBlock> block,
Supplier<? extends Item> bucket, int burnTime, Supplier<FluidType> fluidType) {
super(state, stillFluid, flowingFluid, block, bucket, burnTime, fluidType);
}

@Override
public int getAmount(net.minecraft.world.level.material.FluidState state) {
return 8;
}

@Override
public boolean isSource(net.minecraft.world.level.material.FluidState state) {
return true;
}
}

public static class Flowing extends GTFluid {

public Flowing(@NotNull FluidState state, Supplier<? extends Fluid> stillFluid,
Supplier<? extends Fluid> flowingFluid, Supplier<? extends LiquidBlock> block,
Supplier<? extends Item> bucket, int burnTime, Supplier<FluidType> fluidType) {
super(state, stillFluid, flowingFluid, block, bucket, burnTime, fluidType);
}

protected void createFluidStateDefinition(StateDefinition.@NotNull Builder<Fluid, net.minecraft.world.level.material.FluidState> builder) {
super.createFluidStateDefinition(builder);
builder.add(LEVEL);
}

@Override
public int getAmount(net.minecraft.world.level.material.FluidState state) {
return state.getValue(LEVEL);
}

@Override
public boolean isSource(net.minecraft.world.level.material.FluidState state) {
return false;
}
}
}

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@

import com.gregtechceu.gtceu.api.data.chemical.material.Material;
import com.gregtechceu.gtceu.api.data.chemical.material.info.MaterialIconType;
import com.gregtechceu.gtceu.api.data.tag.TagUtil;
import com.gregtechceu.gtceu.api.fluids.FluidState;
import com.gregtechceu.gtceu.utils.TagUtil;

import net.minecraft.resources.ResourceLocation;
import net.minecraft.tags.TagKey;
Expand Down
Loading