diff --git a/src/main/java/ru/betterend/interfaces/BetterEndRecipe.java b/src/main/java/ru/betterend/interfaces/BetterEndRecipe.java new file mode 100644 index 00000000..9f939661 --- /dev/null +++ b/src/main/java/ru/betterend/interfaces/BetterEndRecipe.java @@ -0,0 +1,3 @@ +package ru.betterend.interfaces; + +public interface BetterEndRecipe {} diff --git a/src/main/java/ru/betterend/mixin/client/AnvilScreenMixin.java b/src/main/java/ru/betterend/mixin/client/AnvilScreenMixin.java index afde9812..1e2d76ce 100644 --- a/src/main/java/ru/betterend/mixin/client/AnvilScreenMixin.java +++ b/src/main/java/ru/betterend/mixin/client/AnvilScreenMixin.java @@ -41,7 +41,7 @@ public class AnvilScreenMixin extends ForgingScreen { } @Inject(method = "setup", at = @At("TAIL")) - protected void setup(CallbackInfo info) { + protected void be_setup(CallbackInfo info) { this.be_buttons.clear(); int x = (width - backgroundWidth) / 2; int y = (height - backgroundHeight) / 2; @@ -51,14 +51,14 @@ public class AnvilScreenMixin extends ForgingScreen { } @Inject(method = "renderForeground", at = @At("TAIL")) - protected void renderForeground(MatrixStack matrices, int mouseX, int mouseY, float delta, CallbackInfo info) { + protected void be_renderForeground(MatrixStack matrices, int mouseX, int mouseY, float delta, CallbackInfo info) { if (anvilHandler.be_getRecipes().size() > 1) { this.be_buttons.forEach(button -> button.render(matrices, mouseX, mouseY, delta)); } } @Inject(method = "onSlotUpdate", at = @At("HEAD"), cancellable = true) - public void onSlotUpdate(ScreenHandler handler, int slotId, ItemStack stack, CallbackInfo info) { + public void be_onSlotUpdate(ScreenHandler handler, int slotId, ItemStack stack, CallbackInfo info) { AnvilScreenHandlerExtended anvilHandler = AnvilScreenHandlerExtended.class.cast(handler); if (anvilHandler.be_getCurrentRecipe() != null) { this.nameField.setText(""); diff --git a/src/main/java/ru/betterend/mixin/client/BackgroundRendererMixin.java b/src/main/java/ru/betterend/mixin/client/BackgroundRendererMixin.java index 9b53ff68..26d59d3a 100644 --- a/src/main/java/ru/betterend/mixin/client/BackgroundRendererMixin.java +++ b/src/main/java/ru/betterend/mixin/client/BackgroundRendererMixin.java @@ -42,7 +42,7 @@ public class BackgroundRendererMixin { private static float blue; @Inject(method = "render", at = @At("RETURN")) - private static void onRender(Camera camera, float tickDelta, ClientWorld world, int i, float f, CallbackInfo info) { + private static void be_onRender(Camera camera, float tickDelta, ClientWorld world, int i, float f, CallbackInfo info) { long l = Util.getMeasuringTimeMs() - time; time += l; lerp += l * 0.001F; @@ -69,7 +69,7 @@ public class BackgroundRendererMixin { } @Inject(method = "applyFog", at = @At("HEAD"), cancellable = true) - private static void fogDensity(Camera camera, BackgroundRenderer.FogType fogType, float viewDistance, boolean thickFog, CallbackInfo info) { + private static void be_fogDensity(Camera camera, BackgroundRenderer.FogType fogType, float viewDistance, boolean thickFog, CallbackInfo info) { Entity entity = camera.getFocusedEntity(); Biome biome = entity.world.getBiome(entity.getBlockPos()); FluidState fluidState = camera.getSubmergedFluidState(); diff --git a/src/main/java/ru/betterend/mixin/client/BiomeColorsMixin.java b/src/main/java/ru/betterend/mixin/client/BiomeColorsMixin.java index 6ad1f324..15bc3b69 100644 --- a/src/main/java/ru/betterend/mixin/client/BiomeColorsMixin.java +++ b/src/main/java/ru/betterend/mixin/client/BiomeColorsMixin.java @@ -20,7 +20,7 @@ public class BiomeColorsMixin { private static final int STREAM_COLOR = MHelper.color(105, 213, 244); @Inject(method = "getWaterColor", at = @At("RETURN"), cancellable = true) - private static void beGetWaterColor(BlockRenderView world, BlockPos pos, CallbackInfoReturnable info) { + private static void be_getWaterColor(BlockRenderView world, BlockPos pos, CallbackInfoReturnable info) { int color = info.getReturnValue(); boolean scanDeep = true; diff --git a/src/main/java/ru/betterend/mixin/client/ClientPlayNetworkHandlerMixin.java b/src/main/java/ru/betterend/mixin/client/ClientPlayNetworkHandlerMixin.java index 540f8128..b4166ed1 100644 --- a/src/main/java/ru/betterend/mixin/client/ClientPlayNetworkHandlerMixin.java +++ b/src/main/java/ru/betterend/mixin/client/ClientPlayNetworkHandlerMixin.java @@ -29,7 +29,7 @@ public class ClientPlayNetworkHandlerMixin private ClientWorld world; @Inject(method = "onSignEditorOpen", at = @At(value = "HEAD"), cancellable = true) - public void openSignEditor(SignEditorOpenS2CPacket packet, CallbackInfo info) { + public void be_openSignEditor(SignEditorOpenS2CPacket packet, CallbackInfo info) { NetworkThreadUtils.forceMainThread(packet, (ClientPlayNetworkHandler) (Object) this, (ThreadExecutor) client); BlockEntity blockEntity = this.world.getBlockEntity(packet.getPos()); @@ -41,7 +41,7 @@ public class ClientPlayNetworkHandlerMixin } @Inject(method = "onBlockEntityUpdate", at = @At(value = "HEAD"), cancellable = true) - public void onEntityUpdate(BlockEntityUpdateS2CPacket packet, CallbackInfo info) { + public void be_onEntityUpdate(BlockEntityUpdateS2CPacket packet, CallbackInfo info) { NetworkThreadUtils.forceMainThread(packet, (ClientPlayNetworkHandler) (Object) this, (ThreadExecutor) client); BlockPos blockPos = packet.getPos(); diff --git a/src/main/java/ru/betterend/mixin/client/ClientRecipeBookMixin.java b/src/main/java/ru/betterend/mixin/client/ClientRecipeBookMixin.java index 1ef0fa79..d4185133 100644 --- a/src/main/java/ru/betterend/mixin/client/ClientRecipeBookMixin.java +++ b/src/main/java/ru/betterend/mixin/client/ClientRecipeBookMixin.java @@ -8,15 +8,17 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; import net.minecraft.client.recipebook.ClientRecipeBook; import net.minecraft.client.recipebook.RecipeBookGroup; import net.minecraft.recipe.Recipe; +import ru.betterend.interfaces.BetterEndRecipe; import ru.betterend.recipe.builders.AlloyingRecipe; @Mixin(ClientRecipeBook.class) public abstract class ClientRecipeBookMixin { @Inject(method = "getGroupForRecipe", at = @At("HEAD"), cancellable = true) - private static void getGroupForRecipe(Recipe recipe, CallbackInfoReturnable cinfo) { + private static void be_getGroupForRecipe(Recipe recipe, CallbackInfoReturnable cinfo) { if (recipe instanceof AlloyingRecipe) { cinfo.setReturnValue(RecipeBookGroup.BLAST_FURNACE_MISC); - cinfo.cancel(); + } else if (recipe instanceof BetterEndRecipe) { + cinfo.setReturnValue(RecipeBookGroup.UNKNOWN); } } } diff --git a/src/main/java/ru/betterend/mixin/client/EnchantingTableBlockMixin.java b/src/main/java/ru/betterend/mixin/client/EnchantingTableBlockMixin.java index 113e3c27..ee3c03aa 100644 --- a/src/main/java/ru/betterend/mixin/client/EnchantingTableBlockMixin.java +++ b/src/main/java/ru/betterend/mixin/client/EnchantingTableBlockMixin.java @@ -22,7 +22,7 @@ public abstract class EnchantingTableBlockMixin extends Block { } @Inject(method = "randomDisplayTick", at = @At(value = "TAIL")) - private void beOnRandomDisplayTick(BlockState state, World world, BlockPos pos, Random random, CallbackInfo info) { + private void be_onRandomDisplayTick(BlockState state, World world, BlockPos pos, Random random, CallbackInfo info) { for (int px = -2; px <= 2; ++px) { for (int pz = -2; pz <= 2; ++pz) { if (px > -2 && px < 2 && pz == -1) { diff --git a/src/main/java/ru/betterend/mixin/client/MinecraftClientMixin.java b/src/main/java/ru/betterend/mixin/client/MinecraftClientMixin.java index 28a02e22..48a734f9 100644 --- a/src/main/java/ru/betterend/mixin/client/MinecraftClientMixin.java +++ b/src/main/java/ru/betterend/mixin/client/MinecraftClientMixin.java @@ -48,7 +48,7 @@ public class MinecraftClientMixin { private ItemColors itemColors; @Inject(method = "*", at = @At("TAIL")) - private void onInit(RunArgs args, CallbackInfo info) { + private void be_onInit(RunArgs args, CallbackInfo info) { Registry.BLOCK.forEach(block -> { if (block instanceof IColorProvider) { IColorProvider provider = (IColorProvider) block; @@ -59,7 +59,7 @@ public class MinecraftClientMixin { } @Inject(method = "getMusicType", at = @At("HEAD"), cancellable = true) - private void getEndMusic(CallbackInfoReturnable info) { + private void be_getEndMusic(CallbackInfoReturnable info) { if (!(this.currentScreen instanceof CreditsScreen) && this.player != null) { if (this.player.world.getRegistryKey() == World.END) { if (this.inGameHud.getBossBarHud().shouldPlayDragonMusic() && MHelper.lengthSqr(this.player.getX(), this.player.getZ()) < 250000) { diff --git a/src/main/java/ru/betterend/mixin/client/ModelLoaderMixin.java b/src/main/java/ru/betterend/mixin/client/ModelLoaderMixin.java index c28b1dd3..b2688d0b 100644 --- a/src/main/java/ru/betterend/mixin/client/ModelLoaderMixin.java +++ b/src/main/java/ru/betterend/mixin/client/ModelLoaderMixin.java @@ -32,7 +32,7 @@ public class ModelLoaderMixin { private ResourceManager resourceManager; @Inject(method = "loadModelFromJson", at = @At("HEAD"), cancellable = true) - private void loadModelPattern(Identifier id, CallbackInfoReturnable info) { + private void be_loadModelPattern(Identifier id, CallbackInfoReturnable info) { if (id.getNamespace().equals(BetterEnd.MOD_ID)) { Identifier modelId = new Identifier(id.getNamespace(), "models/" + id.getPath() + ".json"); JsonUnbakedModel model; diff --git a/src/main/java/ru/betterend/mixin/client/ModelVariantMapMixin.java b/src/main/java/ru/betterend/mixin/client/ModelVariantMapMixin.java index 2c982d31..5b3cf1dc 100644 --- a/src/main/java/ru/betterend/mixin/client/ModelVariantMapMixin.java +++ b/src/main/java/ru/betterend/mixin/client/ModelVariantMapMixin.java @@ -20,7 +20,7 @@ import ru.betterend.patterns.BlockPatterned; public abstract class ModelVariantMapMixin { @Inject(method = "deserialize", at = @At("HEAD"), cancellable = true) - private static void deserializeBlockState(ModelVariantMap.DeserializationContext context, Reader reader, CallbackInfoReturnable info) { + private static void be_deserializeBlockState(ModelVariantMap.DeserializationContext context, Reader reader, CallbackInfoReturnable info) { Block block = context.getStateFactory().getDefaultState().getBlock(); if (block instanceof BlockPatterned) { String pattern = ((BlockPatterned) block).getStatesPattern(reader); diff --git a/src/main/java/ru/betterend/mixin/client/MusicTrackerMixin.java b/src/main/java/ru/betterend/mixin/client/MusicTrackerMixin.java index 0e93e7c9..afae2d88 100644 --- a/src/main/java/ru/betterend/mixin/client/MusicTrackerMixin.java +++ b/src/main/java/ru/betterend/mixin/client/MusicTrackerMixin.java @@ -39,7 +39,7 @@ public class MusicTrackerMixin { private static long time; @Inject(method = "tick", at = @At("HEAD"), cancellable = true) - public void beOnTick(CallbackInfo info) { + public void be_onTick(CallbackInfo info) { if (ClientOptions.blendBiomeMusic()) { MusicSound musicSound = client.getMusicType(); if (volume > 0 && beIsInEnd() && beShouldChangeSound(musicSound)) { diff --git a/src/main/java/ru/betterend/mixin/client/NamespaceResourceManagerMixin.java b/src/main/java/ru/betterend/mixin/client/NamespaceResourceManagerMixin.java index 8152e707..64c8f889 100644 --- a/src/main/java/ru/betterend/mixin/client/NamespaceResourceManagerMixin.java +++ b/src/main/java/ru/betterend/mixin/client/NamespaceResourceManagerMixin.java @@ -30,7 +30,7 @@ public abstract class NamespaceResourceManagerMixin { value = "NEW", target = "java/io/FileNotFoundException", shift = Shift.BEFORE)) - public void getStatesPattern(Identifier id, CallbackInfoReturnable> info) { + public void be_getStatesPattern(Identifier id, CallbackInfoReturnable> info) { if (id.getNamespace().equals(BetterEnd.MOD_ID)) { String[] data = id.getPath().split("/"); if (data.length > 1) { diff --git a/src/main/java/ru/betterend/mixin/client/WorldRendererMixin.java b/src/main/java/ru/betterend/mixin/client/WorldRendererMixin.java index d5a9911d..75f78bca 100644 --- a/src/main/java/ru/betterend/mixin/client/WorldRendererMixin.java +++ b/src/main/java/ru/betterend/mixin/client/WorldRendererMixin.java @@ -76,8 +76,8 @@ public class WorldRendererMixin { private int ticks; @Inject(method = "*", at = @At("TAIL")) - private void onInit(MinecraftClient client, BufferBuilderStorage bufferBuilders, CallbackInfo info) { - initStars(); + private void be_onInit(MinecraftClient client, BufferBuilderStorage bufferBuilders, CallbackInfo info) { + be_initStars(); Random random = new Random(131); axis1 = new Vector3f(random.nextFloat(), random.nextFloat(), random.nextFloat()); axis2 = new Vector3f(random.nextFloat(), random.nextFloat(), random.nextFloat()); @@ -92,7 +92,7 @@ public class WorldRendererMixin { } @Inject(method = "renderSky", at = @At("HEAD"), cancellable = true) - private void renderBetterEndSky(MatrixStack matrices, float tickDelta, CallbackInfo info) { + private void be_renderBetterEndSky(MatrixStack matrices, float tickDelta, CallbackInfo info) { if (ClientOptions.isCustomSky() && client.world.getSkyProperties().getSkyType() == SkyProperties.SkyType.END) { time = (ticks % 360000) * 0.000017453292F; time2 = time * 2; @@ -121,31 +121,31 @@ public class WorldRendererMixin { matrices.push(); matrices.multiply(new Quaternion(0, time, 0, false)); textureManager.bindTexture(HORIZON); - renderBuffer(matrices, horizon, VertexFormats.POSITION_TEXTURE, 0.77F, 0.31F, 0.73F, 0.7F * blindA); + be_renderBuffer(matrices, horizon, VertexFormats.POSITION_TEXTURE, 0.77F, 0.31F, 0.73F, 0.7F * blindA); matrices.pop(); matrices.push(); matrices.multiply(new Quaternion(0, -time, 0, false)); textureManager.bindTexture(NEBULA_1); - renderBuffer(matrices, nebulas1, VertexFormats.POSITION_TEXTURE, 0.77F, 0.31F, 0.73F, blind02); + be_renderBuffer(matrices, nebulas1, VertexFormats.POSITION_TEXTURE, 0.77F, 0.31F, 0.73F, blind02); matrices.pop(); matrices.push(); matrices.multiply(new Quaternion(0, time2, 0, false)); textureManager.bindTexture(NEBULA_2); - renderBuffer(matrices, nebulas2, VertexFormats.POSITION_TEXTURE, 0.77F, 0.31F, 0.73F, blind02); + be_renderBuffer(matrices, nebulas2, VertexFormats.POSITION_TEXTURE, 0.77F, 0.31F, 0.73F, blind02); matrices.pop(); textureManager.bindTexture(STARS); matrices.push(); matrices.multiply(axis3.getRadialQuaternion(time)); - renderBuffer(matrices, stars3, VertexFormats.POSITION_TEXTURE, 0.77F, 0.31F, 0.73F, blind06); + be_renderBuffer(matrices, stars3, VertexFormats.POSITION_TEXTURE, 0.77F, 0.31F, 0.73F, blind06); matrices.pop(); matrices.push(); matrices.multiply(axis4.getRadialQuaternion(time2)); - renderBuffer(matrices, stars4, VertexFormats.POSITION_TEXTURE, 1F, 1F, 1F, blind06); + be_renderBuffer(matrices, stars4, VertexFormats.POSITION_TEXTURE, 1F, 1F, 1F, blind06); matrices.pop(); } @@ -153,7 +153,7 @@ public class WorldRendererMixin { if (a > 0) { if (a > 1) a = 1; textureManager.bindTexture(FOG); - renderBuffer(matrices, fog, VertexFormats.POSITION_TEXTURE, BackgroundInfo.red, BackgroundInfo.green, BackgroundInfo.blue, a); + be_renderBuffer(matrices, fog, VertexFormats.POSITION_TEXTURE, BackgroundInfo.red, BackgroundInfo.green, BackgroundInfo.blue, a); } RenderSystem.disableTexture(); @@ -161,12 +161,12 @@ public class WorldRendererMixin { if (blindA > 0) { matrices.push(); matrices.multiply(axis1.getRadialQuaternion(time3)); - renderBuffer(matrices, stars1, VertexFormats.POSITION, 1, 1, 1, blind06); + be_renderBuffer(matrices, stars1, VertexFormats.POSITION, 1, 1, 1, blind06); matrices.pop(); matrices.push(); matrices.multiply(axis2.getRadialQuaternion(time2)); - renderBuffer(matrices, stars2, VertexFormats.POSITION, 0.95F, 0.64F, 0.93F, blind06); + be_renderBuffer(matrices, stars2, VertexFormats.POSITION, 0.95F, 0.64F, 0.93F, blind06); matrices.pop(); } @@ -177,7 +177,7 @@ public class WorldRendererMixin { } } - private void renderBuffer(MatrixStack matrices, VertexBuffer buffer, VertexFormat format, float r, float g, float b, float a) { + private void be_renderBuffer(MatrixStack matrices, VertexBuffer buffer, VertexFormat format, float r, float g, float b, float a) { RenderSystem.color4f(r, g, b, a); buffer.bind(); format.startDrawing(0L); @@ -186,84 +186,84 @@ public class WorldRendererMixin { format.endDrawing(); } - private void initStars() { + private void be_initStars() { BufferBuilder buffer = Tessellator.getInstance().getBuffer(); - stars1 = buildBufferStars(buffer, stars1, 0.1, 0.30, 3500, 41315); - stars2 = buildBufferStars(buffer, stars2, 0.1, 0.35, 2000, 35151); - stars3 = buildBufferUVStars(buffer, stars3, 0.4, 1.2, 1000, 61354); - stars4 = buildBufferUVStars(buffer, stars4, 0.4, 1.2, 1000, 61355); - nebulas1 = buildBufferFarFog(buffer, nebulas1, 40, 60, 30, 11515); - nebulas2 = buildBufferFarFog(buffer, nebulas2, 40, 60, 10, 14151); - horizon = buildBufferHorizon(buffer, horizon); - fog = buildBufferFog(buffer, fog); + stars1 = be_buildBufferStars(buffer, stars1, 0.1, 0.30, 3500, 41315); + stars2 = be_buildBufferStars(buffer, stars2, 0.1, 0.35, 2000, 35151); + stars3 = be_buildBufferUVStars(buffer, stars3, 0.4, 1.2, 1000, 61354); + stars4 = be_buildBufferUVStars(buffer, stars4, 0.4, 1.2, 1000, 61355); + nebulas1 = be_buildBufferFarFog(buffer, nebulas1, 40, 60, 30, 11515); + nebulas2 = be_buildBufferFarFog(buffer, nebulas2, 40, 60, 10, 14151); + horizon = be_buildBufferHorizon(buffer, horizon); + fog = be_buildBufferFog(buffer, fog); } - private VertexBuffer buildBufferStars(BufferBuilder bufferBuilder, VertexBuffer buffer, double minSize, double maxSize, int count, long seed) { + private VertexBuffer be_buildBufferStars(BufferBuilder bufferBuilder, VertexBuffer buffer, double minSize, double maxSize, int count, long seed) { if (buffer != null) { buffer.close(); } buffer = new VertexBuffer(VertexFormats.POSITION); - makeStars(bufferBuilder, minSize, maxSize, count, seed); + be_makeStars(bufferBuilder, minSize, maxSize, count, seed); bufferBuilder.end(); buffer.upload(bufferBuilder); return buffer; } - private VertexBuffer buildBufferUVStars(BufferBuilder bufferBuilder, VertexBuffer buffer, double minSize, double maxSize, int count, long seed) { + private VertexBuffer be_buildBufferUVStars(BufferBuilder bufferBuilder, VertexBuffer buffer, double minSize, double maxSize, int count, long seed) { if (buffer != null) { buffer.close(); } buffer = new VertexBuffer(VertexFormats.POSITION_TEXTURE); - makeUVStars(bufferBuilder, minSize, maxSize, count, seed); + be_makeUVStars(bufferBuilder, minSize, maxSize, count, seed); bufferBuilder.end(); buffer.upload(bufferBuilder); return buffer; } - private VertexBuffer buildBufferFarFog(BufferBuilder bufferBuilder, VertexBuffer buffer, double minSize, double maxSize, int count, long seed) { + private VertexBuffer be_buildBufferFarFog(BufferBuilder bufferBuilder, VertexBuffer buffer, double minSize, double maxSize, int count, long seed) { if (buffer != null) { buffer.close(); } buffer = new VertexBuffer(VertexFormats.POSITION_TEXTURE); - makeFarFog(bufferBuilder, minSize, maxSize, count, seed); + be_makeFarFog(bufferBuilder, minSize, maxSize, count, seed); bufferBuilder.end(); buffer.upload(bufferBuilder); return buffer; } - private VertexBuffer buildBufferHorizon(BufferBuilder bufferBuilder, VertexBuffer buffer) { + private VertexBuffer be_buildBufferHorizon(BufferBuilder bufferBuilder, VertexBuffer buffer) { if (buffer != null) { buffer.close(); } buffer = new VertexBuffer(VertexFormats.POSITION_TEXTURE); - makeCylinder(bufferBuilder, 16, 50, 100); + be_makeCylinder(bufferBuilder, 16, 50, 100); bufferBuilder.end(); buffer.upload(bufferBuilder); return buffer; } - private VertexBuffer buildBufferFog(BufferBuilder bufferBuilder, VertexBuffer buffer) { + private VertexBuffer be_buildBufferFog(BufferBuilder bufferBuilder, VertexBuffer buffer) { if (buffer != null) { buffer.close(); } buffer = new VertexBuffer(VertexFormats.POSITION_TEXTURE); - makeCylinder(bufferBuilder, 16, 50, 70); + be_makeCylinder(bufferBuilder, 16, 50, 70); bufferBuilder.end(); buffer.upload(bufferBuilder); return buffer; } - private void makeStars(BufferBuilder buffer, double minSize, double maxSize, int count, long seed) { + private void be_makeStars(BufferBuilder buffer, double minSize, double maxSize, int count, long seed) { Random random = new Random(seed); buffer.begin(7, VertexFormats.POSITION); @@ -306,7 +306,7 @@ public class WorldRendererMixin { } } - private void makeUVStars(BufferBuilder buffer, double minSize, double maxSize, int count, long seed) { + private void be_makeUVStars(BufferBuilder buffer, double minSize, double maxSize, int count, long seed) { Random random = new Random(seed); buffer.begin(7, VertexFormats.POSITION_TEXTURE); @@ -354,7 +354,7 @@ public class WorldRendererMixin { } } - private void makeFarFog(BufferBuilder buffer, double minSize, double maxSize, int count, long seed) { + private void be_makeFarFog(BufferBuilder buffer, double minSize, double maxSize, int count, long seed) { Random random = new Random(seed); buffer.begin(7, VertexFormats.POSITION_TEXTURE); @@ -405,7 +405,7 @@ public class WorldRendererMixin { } } - private void makeCylinder(BufferBuilder buffer, int segments, double height, double radius) { + private void be_makeCylinder(BufferBuilder buffer, int segments, double height, double radius) { buffer.begin(7, VertexFormats.POSITION_TEXTURE); for (int i = 0; i < segments; i ++) { double a1 = (double) i * Math.PI * 2.0 / (double) segments; diff --git a/src/main/java/ru/betterend/mixin/common/AbstractBlockMixin.java b/src/main/java/ru/betterend/mixin/common/AbstractBlockMixin.java index fa06fe62..4f00cf95 100644 --- a/src/main/java/ru/betterend/mixin/common/AbstractBlockMixin.java +++ b/src/main/java/ru/betterend/mixin/common/AbstractBlockMixin.java @@ -26,7 +26,7 @@ import ru.betterend.util.MHelper; public abstract class AbstractBlockMixin { @Inject(method = "getDroppedStacks", at = @At("HEAD"), cancellable = true) - public void getDroppedStacks(BlockState state, LootContext.Builder builder, CallbackInfoReturnable> info) { + public void be_getDroppedStacks(BlockState state, LootContext.Builder builder, CallbackInfoReturnable> info) { if (state.isOf(Blocks.GLOWSTONE)) { ItemStack tool = builder.get(LootContextParameters.TOOL); if (tool != null && tool.getItem() instanceof EndHammerItem) { @@ -39,12 +39,10 @@ public abstract class AbstractBlockMixin { min = MathHelper.clamp(min + fortune, min, max); if (min == max) { info.setReturnValue(Lists.newArrayList(new ItemStack(Items.GLOWSTONE_DUST, max))); - info.cancel(); } } count = MHelper.randRange(min, max, MHelper.RANDOM); info.setReturnValue(Lists.newArrayList(new ItemStack(Items.GLOWSTONE_DUST, count))); - info.cancel(); } } } diff --git a/src/main/java/ru/betterend/mixin/common/AnvilScreenHandlerMixin.java b/src/main/java/ru/betterend/mixin/common/AnvilScreenHandlerMixin.java index 9552ca91..28ecb95c 100644 --- a/src/main/java/ru/betterend/mixin/common/AnvilScreenHandlerMixin.java +++ b/src/main/java/ru/betterend/mixin/common/AnvilScreenHandlerMixin.java @@ -40,7 +40,7 @@ public abstract class AnvilScreenHandlerMixin extends ForgingScreenHandler imple public abstract void updateResult(); @Inject(method = "canTakeOutput", at = @At("HEAD"), cancellable = true) - protected void canTakeOutput(PlayerEntity player, boolean present, CallbackInfoReturnable info) { + protected void be_canTakeOutput(PlayerEntity player, boolean present, CallbackInfoReturnable info) { if (be_currentRecipe != null) { ItemStack output = this.be_currentRecipe.craft(input, player); if (!output.isEmpty()) { @@ -50,7 +50,7 @@ public abstract class AnvilScreenHandlerMixin extends ForgingScreenHandler imple } @Inject(method = "onTakeOutput", at = @At("HEAD"), cancellable = true) - protected void onTakeOutput(PlayerEntity player, ItemStack stack, CallbackInfoReturnable info) { + protected void be_onTakeOutput(PlayerEntity player, ItemStack stack, CallbackInfoReturnable info) { if (be_currentRecipe != null) { this.input.getStack(0).decrement(1); this.onContentChanged(input); @@ -74,7 +74,7 @@ public abstract class AnvilScreenHandlerMixin extends ForgingScreenHandler imple } @Inject(method = "updateResult", at = @At("HEAD"), cancellable = true) - public void updateOutput(CallbackInfo info) { + public void be_updateOutput(CallbackInfo info) { RecipeManager recipeManager = this.player.world.getRecipeManager(); this.be_recipes = recipeManager.getAllMatches(AnvilRecipe.TYPE, input, player.world); if (be_recipes.size() > 0) { @@ -85,7 +85,7 @@ public abstract class AnvilScreenHandlerMixin extends ForgingScreenHandler imple } @Inject(method = "setNewItemName", at = @At("HEAD"), cancellable = true) - public void setNewItemName(String string, CallbackInfo info) { + public void be_setNewItemName(String string, CallbackInfo info) { if (be_currentRecipe != null) { info.cancel(); } diff --git a/src/main/java/ru/betterend/mixin/common/BoneMealItemMixin.java b/src/main/java/ru/betterend/mixin/common/BoneMealItemMixin.java index c133c80a..78618504 100644 --- a/src/main/java/ru/betterend/mixin/common/BoneMealItemMixin.java +++ b/src/main/java/ru/betterend/mixin/common/BoneMealItemMixin.java @@ -31,7 +31,7 @@ public class BoneMealItemMixin { private static final Mutable POS = new Mutable(); @Inject(method = "useOnBlock", at = @At("HEAD"), cancellable = true) - private void beOnUse(ItemUsageContext context, CallbackInfoReturnable info) { + private void be_onUse(ItemUsageContext context, CallbackInfoReturnable info) { World world = context.getWorld(); BlockPos blockPos = context.getBlockPos(); if (!world.isClient) { diff --git a/src/main/java/ru/betterend/mixin/common/ChorusPlantFeatureMixin.java b/src/main/java/ru/betterend/mixin/common/ChorusPlantFeatureMixin.java index 4f696af9..7742405a 100644 --- a/src/main/java/ru/betterend/mixin/common/ChorusPlantFeatureMixin.java +++ b/src/main/java/ru/betterend/mixin/common/ChorusPlantFeatureMixin.java @@ -23,7 +23,7 @@ import ru.betterend.util.MHelper; @Mixin(ChorusPlantFeature.class) public class ChorusPlantFeatureMixin { @Inject(method = "generate", at = @At("HEAD"), cancellable = true) - private void onGenerate(StructureWorldAccess structureWorldAccess, ChunkGenerator chunkGenerator, Random random, BlockPos blockPos, DefaultFeatureConfig defaultFeatureConfig, CallbackInfoReturnable info) { + private void be_onGenerate(StructureWorldAccess structureWorldAccess, ChunkGenerator chunkGenerator, Random random, BlockPos blockPos, DefaultFeatureConfig defaultFeatureConfig, CallbackInfoReturnable info) { if (structureWorldAccess.isAir(blockPos) && structureWorldAccess.getBlockState(blockPos.down()).isOf(EndBlocks.CHORUS_NYLIUM)) { ChorusFlowerBlock.generate(structureWorldAccess, blockPos, random, MHelper.randRange(8, 16, random)); BlockState bottom = structureWorldAccess.getBlockState(blockPos); @@ -31,7 +31,6 @@ public class ChorusPlantFeatureMixin { BlocksHelper.setWithoutUpdate(structureWorldAccess, blockPos, bottom.with(BlocksHelper.ROOTS, true).with(ConnectingBlock.DOWN, true)); } info.setReturnValue(true); - info.cancel(); } } } diff --git a/src/main/java/ru/betterend/mixin/common/CraftingScreenHandlerMixin.java b/src/main/java/ru/betterend/mixin/common/CraftingScreenHandlerMixin.java index ded3676d..7e533fa9 100644 --- a/src/main/java/ru/betterend/mixin/common/CraftingScreenHandlerMixin.java +++ b/src/main/java/ru/betterend/mixin/common/CraftingScreenHandlerMixin.java @@ -20,7 +20,7 @@ public abstract class CraftingScreenHandlerMixin private ScreenHandlerContext context; @Inject(method = "canUse", at = @At("HEAD"), cancellable = true) - private void canUse(PlayerEntity player, CallbackInfoReturnable info) { + private void be_canUse(PlayerEntity player, CallbackInfoReturnable info) { if (context.run((world, pos) -> { return world.getBlockState(pos).getBlock() instanceof CraftingTableBlock; }, true)) { diff --git a/src/main/java/ru/betterend/mixin/common/EndPortalFeatureMixin.java b/src/main/java/ru/betterend/mixin/common/EndPortalFeatureMixin.java index c0592b43..32841385 100644 --- a/src/main/java/ru/betterend/mixin/common/EndPortalFeatureMixin.java +++ b/src/main/java/ru/betterend/mixin/common/EndPortalFeatureMixin.java @@ -20,7 +20,6 @@ public class EndPortalFeatureMixin { private void bePortalGenerate(StructureWorldAccess structureWorldAccess, ChunkGenerator chunkGenerator, Random random, BlockPos blockPos, DefaultFeatureConfig defaultFeatureConfig, CallbackInfoReturnable info) { if (!GeneratorOptions.hasPortal()) { info.setReturnValue(false); - info.cancel(); } } } diff --git a/src/main/java/ru/betterend/mixin/common/EndSpikeFeatureMixin.java b/src/main/java/ru/betterend/mixin/common/EndSpikeFeatureMixin.java index 0b1a8eb1..662e3ef4 100644 --- a/src/main/java/ru/betterend/mixin/common/EndSpikeFeatureMixin.java +++ b/src/main/java/ru/betterend/mixin/common/EndSpikeFeatureMixin.java @@ -20,7 +20,6 @@ public class EndSpikeFeatureMixin { private void beSpikeGenerate(StructureWorldAccess structureWorldAccess, ChunkGenerator chunkGenerator, Random random, BlockPos blockPos, EndSpikeFeatureConfig endSpikeFeatureConfig, CallbackInfoReturnable info) { if (!GeneratorOptions.hasPillars()) { info.setReturnValue(false); - info.cancel(); } } } diff --git a/src/main/java/ru/betterend/mixin/common/EndermanEntityMixin.java b/src/main/java/ru/betterend/mixin/common/EndermanEntityMixin.java index 5bd9b493..3abbf94d 100644 --- a/src/main/java/ru/betterend/mixin/common/EndermanEntityMixin.java +++ b/src/main/java/ru/betterend/mixin/common/EndermanEntityMixin.java @@ -16,11 +16,10 @@ import ru.betterend.effects.EndStatusEffects; public abstract class EndermanEntityMixin { @Inject(method = "isPlayerStaring", at = @At("HEAD"), cancellable = true) - private void isPlayerStaring(PlayerEntity player, CallbackInfoReturnable info) { + private void be_isPlayerStaring(PlayerEntity player, CallbackInfoReturnable info) { if (player.isCreative() || player.hasStatusEffect(EndStatusEffects.END_VEIL) || EnchantmentHelper.getLevel(EndEnchantments.END_VEIL, player.getEquippedStack(EquipmentSlot.HEAD)) > 0) { info.setReturnValue(false); - info.cancel(); } } } diff --git a/src/main/java/ru/betterend/mixin/common/EntityMixin.java b/src/main/java/ru/betterend/mixin/common/EntityMixin.java index 320547fc..ff6420a3 100644 --- a/src/main/java/ru/betterend/mixin/common/EntityMixin.java +++ b/src/main/java/ru/betterend/mixin/common/EntityMixin.java @@ -53,7 +53,7 @@ public abstract class EntityMixin implements TeleportingEntity { protected abstract TeleportTarget getTeleportTarget(ServerWorld destination); @Inject(method = "moveToWorld", at = @At("HEAD"), cancellable = true) - public void moveToWorld(ServerWorld destination, CallbackInfoReturnable info) { + public void be_moveToWorld(ServerWorld destination, CallbackInfoReturnable info) { if (!removed && beExitPos != null && world instanceof ServerWorld) { this.detach(); this.world.getProfiler().push("changeDimension"); @@ -75,21 +75,19 @@ public abstract class EntityMixin implements TeleportingEntity { this.world.getProfiler().pop(); this.beExitPos = null; info.setReturnValue(entity); - info.cancel(); } } } @Inject(method = "getTeleportTarget", at = @At("HEAD"), cancellable = true) - protected void getTeleportTarget(ServerWorld destination, CallbackInfoReturnable info) { + protected void be_getTeleportTarget(ServerWorld destination, CallbackInfoReturnable info) { if (beExitPos != null) { info.setReturnValue(new TeleportTarget(new Vec3d(beExitPos.getX() + 0.5D, beExitPos.getY(), beExitPos.getZ() + 0.5D), getVelocity(), yaw, pitch)); - info.cancel(); } } @Inject(method = "baseTick", at = @At("TAIL")) - public void baseTick(CallbackInfo info) { + public void be_baseTick(CallbackInfo info) { if (hasCooldown()) { this.beCooldown--; } diff --git a/src/main/java/ru/betterend/mixin/common/HostileEntityMixin.java b/src/main/java/ru/betterend/mixin/common/HostileEntityMixin.java index dee0f41a..0e2e4bcb 100644 --- a/src/main/java/ru/betterend/mixin/common/HostileEntityMixin.java +++ b/src/main/java/ru/betterend/mixin/common/HostileEntityMixin.java @@ -19,7 +19,7 @@ import net.minecraft.world.ServerWorldAccess; @Mixin(HostileEntity.class) public class HostileEntityMixin { @Inject(method = "canSpawnInDark", at = @At(value = "RETURN"), cancellable = true) - private static void endermenCheck(EntityType type, ServerWorldAccess serverWorldAccess, SpawnReason spawnReason, BlockPos pos, Random random, CallbackInfoReturnable info) { + private static void be_endermenCheck(EntityType type, ServerWorldAccess serverWorldAccess, SpawnReason spawnReason, BlockPos pos, Random random, CallbackInfoReturnable info) { boolean canSpawn = info.getReturnValue(); if (canSpawn && spawnReason == SpawnReason.NATURAL && type == EntityType.ENDERMAN) { Box box = new Box(pos).expand(16); diff --git a/src/main/java/ru/betterend/mixin/common/LandPathNodeMakerMixin.java b/src/main/java/ru/betterend/mixin/common/LandPathNodeMakerMixin.java index 50d5451b..224c3d89 100644 --- a/src/main/java/ru/betterend/mixin/common/LandPathNodeMakerMixin.java +++ b/src/main/java/ru/betterend/mixin/common/LandPathNodeMakerMixin.java @@ -24,6 +24,5 @@ public class LandPathNodeMakerMixin { private static void beCactusDamage(CallbackInfoReturnable info) { info.setReturnValue(PathNodeType.DAMAGE_CACTUS); - info.cancel(); } } diff --git a/src/main/java/ru/betterend/mixin/common/LivingEntityMixin.java b/src/main/java/ru/betterend/mixin/common/LivingEntityMixin.java index 954e0276..442fdeae 100644 --- a/src/main/java/ru/betterend/mixin/common/LivingEntityMixin.java +++ b/src/main/java/ru/betterend/mixin/common/LivingEntityMixin.java @@ -22,20 +22,20 @@ public abstract class LivingEntityMixin { private Entity lastAttacker; @Inject(method = "damage", at = @At("HEAD")) - public void damage(DamageSource source, float amount, CallbackInfoReturnable info) { + public void be_damage(DamageSource source, float amount, CallbackInfoReturnable info) { this.lastAttacker = source.getAttacker(); } @ModifyArg(method = "damage", at = @At(value = "INVOKE", target = "Lnet/minecraft/entity/LivingEntity;takeKnockback(FDD)V")) - private float increaseKnockback(float value, double x, double z) { + private float be_increaseKnockback(float value, double x, double z) { if (lastAttacker != null && lastAttacker instanceof LivingEntity) { LivingEntity attacker = (LivingEntity) lastAttacker; - value += this.getKnockback(attacker.getMainHandStack().getItem()); + value += this.be_getKnockback(attacker.getMainHandStack().getItem()); } return value; } - private double getKnockback(Item tool) { + private double be_getKnockback(Item tool) { if (tool == null) return 0.0D; Collection modifiers = tool.getAttributeModifiers(EquipmentSlot.MAINHAND) .get(EntityAttributes.GENERIC_ATTACK_KNOCKBACK); diff --git a/src/main/java/ru/betterend/mixin/common/PlayerEntityMixin.java b/src/main/java/ru/betterend/mixin/common/PlayerEntityMixin.java index e00fa670..e85db22e 100644 --- a/src/main/java/ru/betterend/mixin/common/PlayerEntityMixin.java +++ b/src/main/java/ru/betterend/mixin/common/PlayerEntityMixin.java @@ -24,7 +24,7 @@ public abstract class PlayerEntityMixin { private static Direction[] HORIZONTAL; @Inject(method = "findRespawnPosition", at = @At(value = "HEAD"), cancellable = true) - private static void statueRespawn(ServerWorld world, BlockPos pos, float f, boolean bl, boolean bl2, CallbackInfoReturnable> info) { + private static void be_statueRespawn(ServerWorld world, BlockPos pos, float f, boolean bl, boolean bl2, CallbackInfoReturnable> info) { BlockState blockState = world.getBlockState(pos); if (blockState.isOf(EndBlocks.RESPAWN_OBELISK)) { info.setReturnValue(beObeliskRespawnPosition(world, pos, blockState)); diff --git a/src/main/java/ru/betterend/mixin/common/ServerPlayNetworkHandlerMixin.java b/src/main/java/ru/betterend/mixin/common/ServerPlayNetworkHandlerMixin.java index 4be1ac7d..1df58138 100644 --- a/src/main/java/ru/betterend/mixin/common/ServerPlayNetworkHandlerMixin.java +++ b/src/main/java/ru/betterend/mixin/common/ServerPlayNetworkHandlerMixin.java @@ -29,7 +29,7 @@ public class ServerPlayNetworkHandlerMixin { public ServerPlayerEntity player; @Inject(method = "onSignUpdate", at = @At(value = "HEAD"), cancellable = true) - private void signUpdate(UpdateSignC2SPacket packet, CallbackInfo info) { + private void be_signUpdate(UpdateSignC2SPacket packet, CallbackInfo info) { NetworkThreadUtils.forceMainThread(packet, (ServerPlayNetworkHandler) (Object) this, (ServerWorld) this.player.getServerWorld()); this.player.updateLastActionTime(); ServerWorld serverWorld = this.player.getServerWorld(); diff --git a/src/main/java/ru/betterend/mixin/common/ServerPlayerEntityMixin.java b/src/main/java/ru/betterend/mixin/common/ServerPlayerEntityMixin.java index 4128a8c4..8199b00e 100644 --- a/src/main/java/ru/betterend/mixin/common/ServerPlayerEntityMixin.java +++ b/src/main/java/ru/betterend/mixin/common/ServerPlayerEntityMixin.java @@ -15,7 +15,7 @@ public abstract class ServerPlayerEntityMixin implements TeleportingEntity { private long beCooldown; @Inject(method = "tick", at = @At("TAIL")) - public void baseTick(CallbackInfo info) { + public void be_baseTick(CallbackInfo info) { if (hasCooldown()) { this.beCooldown--; } diff --git a/src/main/java/ru/betterend/mixin/common/TagGroupLoaderMixin.java b/src/main/java/ru/betterend/mixin/common/TagGroupLoaderMixin.java index b5fbf4ed..21038c9e 100644 --- a/src/main/java/ru/betterend/mixin/common/TagGroupLoaderMixin.java +++ b/src/main/java/ru/betterend/mixin/common/TagGroupLoaderMixin.java @@ -23,7 +23,7 @@ public class TagGroupLoaderMixin { private String entryType; @Inject(method = "prepareReload", at = @At("RETURN"), cancellable = true) - public void prepareReload(ResourceManager manager, Executor prepareExecutor, CallbackInfoReturnable>> info) { + public void be_prepareReload(ResourceManager manager, Executor prepareExecutor, CallbackInfoReturnable>> info) { CompletableFuture> future = info.getReturnValue(); info.setReturnValue(CompletableFuture.supplyAsync(() -> { Map map = future.join(); diff --git a/src/main/java/ru/betterend/recipe/builders/AlloyingRecipe.java b/src/main/java/ru/betterend/recipe/builders/AlloyingRecipe.java index 6a18f458..1467b497 100644 --- a/src/main/java/ru/betterend/recipe/builders/AlloyingRecipe.java +++ b/src/main/java/ru/betterend/recipe/builders/AlloyingRecipe.java @@ -21,12 +21,13 @@ import net.minecraft.util.collection.DefaultedList; import net.minecraft.world.World; import ru.betterend.BetterEnd; import ru.betterend.config.Configs; +import ru.betterend.interfaces.BetterEndRecipe; import ru.betterend.recipe.EndRecipeManager; import ru.betterend.registry.EndBlocks; import ru.betterend.util.ItemUtil; import ru.betterend.util.RecipeHelper; -public class AlloyingRecipe implements Recipe { +public class AlloyingRecipe implements Recipe, BetterEndRecipe { public final static String GROUP = "alloying"; public final static RecipeType TYPE = EndRecipeManager.registerType(GROUP); diff --git a/src/main/java/ru/betterend/recipe/builders/AnvilRecipe.java b/src/main/java/ru/betterend/recipe/builders/AnvilRecipe.java index 3af522cb..d38a5095 100644 --- a/src/main/java/ru/betterend/recipe/builders/AnvilRecipe.java +++ b/src/main/java/ru/betterend/recipe/builders/AnvilRecipe.java @@ -22,12 +22,13 @@ import net.minecraft.util.collection.DefaultedList; import net.minecraft.world.World; import ru.betterend.BetterEnd; import ru.betterend.config.Configs; +import ru.betterend.interfaces.BetterEndRecipe; import ru.betterend.recipe.EndRecipeManager; import ru.betterend.registry.EndTags; import ru.betterend.util.ItemUtil; import ru.betterend.util.RecipeHelper; -public class AnvilRecipe implements Recipe { +public class AnvilRecipe implements Recipe, BetterEndRecipe { public final static String GROUP = "smithing"; public final static RecipeType TYPE = EndRecipeManager.registerType(GROUP); diff --git a/src/main/java/ru/betterend/recipe/builders/InfusionRecipe.java b/src/main/java/ru/betterend/recipe/builders/InfusionRecipe.java index 7504abc9..f6bcb41e 100644 --- a/src/main/java/ru/betterend/recipe/builders/InfusionRecipe.java +++ b/src/main/java/ru/betterend/recipe/builders/InfusionRecipe.java @@ -20,11 +20,12 @@ import net.minecraft.world.World; import ru.betterend.BetterEnd; import ru.betterend.config.Configs; +import ru.betterend.interfaces.BetterEndRecipe; import ru.betterend.recipe.EndRecipeManager; import ru.betterend.rituals.InfusionRitual; import ru.betterend.util.ItemUtil; -public class InfusionRecipe implements Recipe { +public class InfusionRecipe implements Recipe, BetterEndRecipe { public final static String GROUP = "infusion"; public final static RecipeType TYPE = EndRecipeManager.registerType(GROUP);