mirror of
https://github.com/TibiNonEst/cauldron-dyeing.git
synced 2025-04-29 13:04:08 -05:00
Port to 1.18.2
This commit is contained in:
parent
147186d089
commit
5e49440291
8 changed files with 35 additions and 63 deletions
|
@ -1,24 +0,0 @@
|
|||
package me.tibinonest.mods.cauldron_dyeing.block;
|
||||
|
||||
import net.minecraft.block.BlockEntityProvider;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.LeveledCauldronBlock;
|
||||
import net.minecraft.block.cauldron.CauldronBehavior;
|
||||
import net.minecraft.block.entity.BlockEntity;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.biome.Biome;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.function.Predicate;
|
||||
|
||||
public class WaterCauldronBlock extends LeveledCauldronBlock implements BlockEntityProvider {
|
||||
public WaterCauldronBlock(Settings settings, Predicate<Biome.Precipitation> precipitationPredicate, Map<Item, CauldronBehavior> behaviorMap) {
|
||||
super(settings, precipitationPredicate, behaviorMap);
|
||||
}
|
||||
|
||||
@Override
|
||||
public BlockEntity createBlockEntity(BlockPos pos, BlockState state) {
|
||||
return new WaterCauldronBlockEntity(pos, state);
|
||||
}
|
||||
}
|
|
@ -79,9 +79,7 @@ public class WaterCauldronBlockEntity extends BlockEntity {
|
|||
|
||||
@Override
|
||||
public NbtCompound toInitialChunkDataNbt() {
|
||||
var nbt = new NbtCompound();
|
||||
nbt.putIntArray("color", color);
|
||||
return nbt;
|
||||
return createNbt();
|
||||
}
|
||||
|
||||
@Nullable
|
||||
|
|
|
@ -1,19 +0,0 @@
|
|||
package me.tibinonest.mods.cauldron_dyeing.mixin;
|
||||
|
||||
import me.tibinonest.mods.cauldron_dyeing.block.WaterCauldronBlock;
|
||||
import net.minecraft.block.AbstractBlock;
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.Blocks;
|
||||
import net.minecraft.block.cauldron.CauldronBehavior;
|
||||
import net.minecraft.util.registry.Registry;
|
||||
import org.spongepowered.asm.mixin.Mixin;
|
||||
import org.spongepowered.asm.mixin.injection.At;
|
||||
import org.spongepowered.asm.mixin.injection.Redirect;
|
||||
|
||||
@Mixin(Blocks.class)
|
||||
public class BlocksMixin {
|
||||
@Redirect(method = "<clinit>", at = @At(value = "INVOKE", target = "Lnet/minecraft/block/Blocks;register(Ljava/lang/String;Lnet/minecraft/block/Block;)Lnet/minecraft/block/Block;", ordinal = 271))
|
||||
private static Block redirectWaterCauldron(String id, Block block) {
|
||||
return Registry.register(Registry.BLOCK, id, new WaterCauldronBlock(AbstractBlock.Settings.copy(Blocks.CAULDRON), WaterCauldronBlock.RAIN_PREDICATE, CauldronBehavior.WATER_CAULDRON_BEHAVIOR));
|
||||
}
|
||||
}
|
|
@ -0,0 +1,19 @@
|
|||
package me.tibinonest.mods.cauldron_dyeing.mixin;
|
||||
|
||||
import me.tibinonest.mods.cauldron_dyeing.block.WaterCauldronBlockEntity;
|
||||
import net.minecraft.block.BlockEntityProvider;
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.block.LeveledCauldronBlock;
|
||||
import net.minecraft.block.entity.BlockEntity;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.spongepowered.asm.mixin.Mixin;
|
||||
|
||||
@Mixin(LeveledCauldronBlock.class)
|
||||
public class LeveledCauldronBlockMixin implements BlockEntityProvider {
|
||||
@Nullable
|
||||
@Override
|
||||
public BlockEntity createBlockEntity(BlockPos pos, BlockState state) {
|
||||
return state.getBlock().getLootTableId().getPath().equals("blocks/water_cauldron") ? new WaterCauldronBlockEntity(pos, state) : null;
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue