Merge branch '1.19' into 1.19.3

# Conflicts:
#	gradle.properties
#	src/main/java/org/betterx/bclib/BCLib.java
#	src/main/java/org/betterx/bclib/api/v2/generator/BCLChunkGenerator.java
#	src/main/java/org/betterx/worlds/together/mixin/common/WorldPresetsBootstrapMixin.java
#	src/main/java/org/betterx/worlds/together/worldPreset/WorldPresets.java
#	src/main/resources/bclib.accesswidener
This commit is contained in:
Frank 2022-11-29 09:41:10 +01:00
commit 0dcb7809b8
41 changed files with 1586 additions and 75 deletions

View file

@ -10,6 +10,7 @@ import net.minecraft.core.BlockPos.MutableBlockPos;
import net.minecraft.core.Vec3i;
import net.minecraft.world.InteractionResult;
import net.minecraft.world.item.BoneMealItem;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.context.UseOnContext;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.Block;
@ -33,7 +34,7 @@ public class BoneMealItemMixin {
@Inject(method = "useOn", at = @At("HEAD"), cancellable = true)
private void bclib_onUse(UseOnContext context, CallbackInfoReturnable<InteractionResult> info) {
Level world = context.getLevel();
BlockPos blockPos = context.getClickedPos();
final BlockPos blockPos = context.getClickedPos();
if (!world.isClientSide()) {
if (BonemealAPI.isTerrain(world.getBlockState(blockPos).getBlock())) {
boolean consume = false;
@ -65,6 +66,21 @@ public class BoneMealItemMixin {
}
}
@Inject(method = "growCrop", at = @At("HEAD"), cancellable = true)
private static void bcl_growCrop(
ItemStack itemStack,
Level level,
BlockPos blockPos,
CallbackInfoReturnable<Boolean> cir
) {
if (org.betterx.bclib.api.v3.bonemeal.BonemealAPI
.INSTANCE
.runSpreaders(itemStack, level, blockPos)
) {
cir.setReturnValue(true);
}
}
@Unique
private boolean bclib_growLandGrass(Level level, BlockPos pos) {
int y1 = pos.getY() + 3;

View file

@ -0,0 +1,36 @@
package org.betterx.bclib.mixin.common;
import org.betterx.bclib.api.v2.generator.BCLChunkGenerator;
import net.minecraft.core.Holder;
import net.minecraft.core.Registry;
import net.minecraft.resources.ResourceKey;
import net.minecraft.world.level.levelgen.NoiseGeneratorSettings;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
@Mixin(NoiseGeneratorSettings.class)
public abstract class NoiseGeneratorSettingsMixin {
@Shadow
static protected Holder<NoiseGeneratorSettings> register(
Registry<NoiseGeneratorSettings> registry,
ResourceKey<NoiseGeneratorSettings> resourceKey,
NoiseGeneratorSettings noiseGeneratorSettings
) {
return null;
}
;
@Inject(method = "bootstrap", at = @At("HEAD"))
private static void bcl_addNoiseGenerators(
Registry<NoiseGeneratorSettings> registry,
CallbackInfoReturnable<Holder<NoiseGeneratorSettings>> cir
) {
register(registry, BCLChunkGenerator.AMPLIFIED_NETHER, BCLChunkGenerator.amplifiedNether());
}
}