From 54494b4362261279748031a30a268d3fdd8b6858 Mon Sep 17 00:00:00 2001 From: FlorianMichael <60033407+FlorianMichael@users.noreply.github.com> Date: Sun, 5 Mar 2023 20:34:51 +0100 Subject: [PATCH] Huge update: include all licenses into the jar file added old chest model and bounding box in <= b1.7.3 added old furnace bounding box in <= b1.8.1 refactored license management cleaned up some mixin classes added old hurt sound in <= b1.7.3 --- LICENSE_GENERAL_MIT | 21 +++++++ build.gradle | 6 +- gradle.properties | 4 +- .../definition/LegacySounds.java | 10 ++++ .../c0_30/ClassicWorldHeightInjection.java | 2 +- .../{visual => }/MixinBipedEntityModel.java | 2 +- .../fixes/MixinChestBlockEntityRenderer.java | 25 ++++++++ .../fixes/MixinClientPlayNetworkHandler.java | 6 ++ .../fixes/{visual => }/MixinItemRenderer.java | 2 +- .../mixin/fixes/block/MixinChestBlock.java | 39 +++++++++++++ .../mixin/fixes/block/MixinFenceBlock.java | 24 +++++++- .../fixes/entity/MixinClientPlayerEntity.java | 10 ++++ .../mixin/fixes/entity/MixinPlayerEntity.java | 12 ++++ .../mixin/fixes/item/MixinBlockItem.java | 2 +- .../fixes/item/MixinHeldItemRenderer.java | 2 +- .../fixes/item/MixinItemPlacementContext.java | 2 +- .../mixin/fixes/item/MixinSwordItem.java | 2 +- .../mixin/fixes/screen/MixinChatScreen.java | 12 ++++ .../MixinCommandBlockScreen.java | 2 +- .../MixinCreativeInventoryScreen.java | 2 +- .../MixinJigsawBlockScreen.java | 2 +- .../{visual => screen/hud}/MixinChatHud.java | 2 +- .../viaversion/MixinProtocolVersion.java | 2 +- .../MixinChatItemRewriter.java | 2 +- .../MixinWorldPackets1_13.java | 2 +- .../MixinWorldPackets_2.java | 2 +- .../MixinEntityPackets1_17.java | 2 +- .../MixinWorldPackets1_17.java | 2 +- .../MixinProtocol1_18_2To1_18.java | 2 +- .../protocol1_9to1_8/MixinChunk1_8Type.java | 2 +- .../MixinEntityPackets_6_1.java | 2 +- .../MixinEntityTracker1_9.java | 2 +- .../MixinMetadataRewriter1_9To1_8.java | 2 +- .../mixin/fixes/visual/MixinChatScreen.java | 21 ------- .../visual/MixinClientPlayNetworkHandler.java | 17 ------ .../fixes/visual/MixinClientPlayerEntity.java | 25 -------- .../settings/groups/VisualSettings.java | 3 + .../assets/minecraft/blockstates/chest.json | 55 ++++++++++++++++++ .../models/block/chest_left.json | 24 ++++++++ .../models/block/chest_right.json | 24 ++++++++ .../models/block/chest_single.json | 23 ++++++++ .../assets/viafabricplus/sounds.json | 7 +++ .../viafabricplus/sounds/random/hurt.ogg | Bin 0 -> 11499 bytes .../textures/block/chest_end.png | Bin 0 -> 332 bytes .../textures/block/chest_left_back.png | Bin 0 -> 378 bytes .../textures/block/chest_left_front.png | Bin 0 -> 399 bytes .../textures/block/chest_right_back.png | Bin 0 -> 358 bytes .../textures/block/chest_right_front.png | Bin 0 -> 415 bytes .../textures/block/chest_single_front.png | Bin 0 -> 452 bytes .../textures/block/chest_single_side.png | Bin 0 -> 387 bytes src/main/resources/viafabricplus.mixins.json | 16 ++--- 51 files changed, 329 insertions(+), 99 deletions(-) create mode 100644 LICENSE_GENERAL_MIT create mode 100644 src/main/java/de/florianmichael/viafabricplus/definition/LegacySounds.java rename src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/{visual => }/MixinBipedEntityModel.java (95%) create mode 100644 src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/MixinChestBlockEntityRenderer.java rename src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/{visual => }/MixinItemRenderer.java (94%) create mode 100644 src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/block/MixinChestBlock.java rename src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/{visual => screen}/MixinCommandBlockScreen.java (94%) rename src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/{visual => screen}/MixinCreativeInventoryScreen.java (92%) rename src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/{visual => screen}/MixinJigsawBlockScreen.java (96%) rename src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/{visual => screen/hud}/MixinChatHud.java (92%) delete mode 100644 src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinChatScreen.java delete mode 100644 src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinClientPlayNetworkHandler.java delete mode 100644 src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinClientPlayerEntity.java create mode 100644 src/main/resources/assets/minecraft/blockstates/chest.json create mode 100644 src/main/resources/assets/viafabricplus/models/block/chest_left.json create mode 100644 src/main/resources/assets/viafabricplus/models/block/chest_right.json create mode 100644 src/main/resources/assets/viafabricplus/models/block/chest_single.json create mode 100644 src/main/resources/assets/viafabricplus/sounds.json create mode 100644 src/main/resources/assets/viafabricplus/sounds/random/hurt.ogg create mode 100644 src/main/resources/assets/viafabricplus/textures/block/chest_end.png create mode 100644 src/main/resources/assets/viafabricplus/textures/block/chest_left_back.png create mode 100644 src/main/resources/assets/viafabricplus/textures/block/chest_left_front.png create mode 100644 src/main/resources/assets/viafabricplus/textures/block/chest_right_back.png create mode 100644 src/main/resources/assets/viafabricplus/textures/block/chest_right_front.png create mode 100644 src/main/resources/assets/viafabricplus/textures/block/chest_single_front.png create mode 100644 src/main/resources/assets/viafabricplus/textures/block/chest_single_side.png diff --git a/LICENSE_GENERAL_MIT b/LICENSE_GENERAL_MIT new file mode 100644 index 00000000..4dac4292 --- /dev/null +++ b/LICENSE_GENERAL_MIT @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2023 + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/build.gradle b/build.gradle index f6715ba7..fb45dcab 100644 --- a/build.gradle +++ b/build.gradle @@ -85,7 +85,7 @@ jar { } { exclude "META-INF/*.RSA", "META-INF/*.SF", "META-INF/*.DSA" } - from("LICENSE") { - rename { "${it}_${project.archivesBaseName}" } - } + from("LICENSE") { rename { "${it}_${project.archivesBaseName}" } } + from("LICENSE_multiconnect") { rename { "${it}_${project.archivesBaseName}" } } + from("LICENSE_GENERAL_MIT") { rename { "${it}_${project.archivesBaseName}" } } } diff --git a/gradle.properties b/gradle.properties index 7a529739..e5db0fcc 100644 --- a/gradle.properties +++ b/gradle.properties @@ -8,7 +8,7 @@ yarn_mappings=1.19.3+build.5 loader_version=0.14.14 # viafabricplus -mod_version=1.6.1 +mod_version=1.7.1 maven_group=de.florianmichael archives_base_name=viafabricplus @@ -22,7 +22,7 @@ snake_yml_version=2.0 # raphimc libs vialegacy_version=2.2.8 -viaaprilfools_version=2.0.5 +viaaprilfools_version=2.0.6 # lenni0451 libs mcstructs_text_version=2.2.0 diff --git a/src/main/java/de/florianmichael/viafabricplus/definition/LegacySounds.java b/src/main/java/de/florianmichael/viafabricplus/definition/LegacySounds.java new file mode 100644 index 00000000..69d8b810 --- /dev/null +++ b/src/main/java/de/florianmichael/viafabricplus/definition/LegacySounds.java @@ -0,0 +1,10 @@ +package de.florianmichael.viafabricplus.definition; + +import net.minecraft.sound.SoundEvent; +import net.minecraft.util.Identifier; + +public class LegacySounds { + + public static final Identifier RANDOM_HURT_ID = new Identifier("viafabricplus", "random.hurt"); + public static final SoundEvent RANDOM_HURT = SoundEvent.of(RANDOM_HURT_ID); +} diff --git a/src/main/java/de/florianmichael/viafabricplus/definition/c0_30/ClassicWorldHeightInjection.java b/src/main/java/de/florianmichael/viafabricplus/definition/c0_30/ClassicWorldHeightInjection.java index b71d1f7f..06f6a64f 100644 --- a/src/main/java/de/florianmichael/viafabricplus/definition/c0_30/ClassicWorldHeightInjection.java +++ b/src/main/java/de/florianmichael/viafabricplus/definition/c0_30/ClassicWorldHeightInjection.java @@ -23,7 +23,7 @@ import java.util.BitSet; import java.util.List; @SuppressWarnings("DataFlowIssue") -// Copyright RaphiMC/RK_01 - GPL v3 LICENSE +// Copyright RaphiMC/RK_01 - LICENSE file public class ClassicWorldHeightInjection { public static PacketHandler handleJoinGame(final PacketHandler parentRemapper) { diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinBipedEntityModel.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/MixinBipedEntityModel.java similarity index 95% rename from src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinBipedEntityModel.java rename to src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/MixinBipedEntityModel.java index 08c2bdd7..81b7c33c 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinBipedEntityModel.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/MixinBipedEntityModel.java @@ -1,4 +1,4 @@ -package de.florianmichael.viafabricplus.injection.mixin.fixes.visual; +package de.florianmichael.viafabricplus.injection.mixin.fixes; import de.florianmichael.viafabricplus.settings.groups.VisualSettings; import net.minecraft.client.model.ModelPart; diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/MixinChestBlockEntityRenderer.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/MixinChestBlockEntityRenderer.java new file mode 100644 index 00000000..e5055d96 --- /dev/null +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/MixinChestBlockEntityRenderer.java @@ -0,0 +1,25 @@ +package de.florianmichael.viafabricplus.injection.mixin.fixes; + +import de.florianmichael.vialoadingbase.ViaLoadingBase; +import net.minecraft.block.entity.BlockEntity; +import net.minecraft.block.entity.LidOpenable; +import net.minecraft.client.render.VertexConsumerProvider; +import net.minecraft.client.render.block.entity.ChestBlockEntityRenderer; +import net.minecraft.client.util.math.MatrixStack; +import net.raphimc.vialegacy.api.LegacyProtocolVersion; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +// Copyright Gaming32 - LICENSE_GENERAL_MIT file +@Mixin(ChestBlockEntityRenderer.class) +public class MixinChestBlockEntityRenderer { + + @Inject(method = "render(Lnet/minecraft/block/entity/BlockEntity;FLnet/minecraft/client/util/math/MatrixStack;Lnet/minecraft/client/render/VertexConsumerProvider;II)V", at = @At("HEAD"), cancellable = true) + public void dontRender(T entity, float tickDelta, MatrixStack matrices, VertexConsumerProvider vertexConsumers, int light, int overlay, CallbackInfo ci) { + if (tickDelta != 0 && ViaLoadingBase.getClassWrapper().getTargetVersion().isOlderThanOrEqualTo(LegacyProtocolVersion.b1_7tob1_7_3)) { + ci.cancel(); + } + } +} diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/MixinClientPlayNetworkHandler.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/MixinClientPlayNetworkHandler.java index d6c98150..e0fbffd3 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/MixinClientPlayNetworkHandler.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/MixinClientPlayNetworkHandler.java @@ -2,6 +2,7 @@ package de.florianmichael.viafabricplus.injection.mixin.fixes; import com.mojang.authlib.GameProfile; import com.viaversion.viaversion.api.protocol.version.ProtocolVersion; +import de.florianmichael.viafabricplus.settings.groups.VisualSettings; import de.florianmichael.vialoadingbase.ViaLoadingBase; import net.minecraft.client.MinecraftClient; import net.minecraft.client.gui.screen.DownloadingTerrainScreen; @@ -127,4 +128,9 @@ public abstract class MixinClientPlayNetworkHandler { instance.warn(s, o); } } + + @Redirect(method = "onServerMetadata", at = @At(value = "INVOKE", target = "Lnet/minecraft/network/packet/s2c/play/ServerMetadataS2CPacket;isSecureChatEnforced()Z")) + public boolean removeSecureChatWarning(ServerMetadataS2CPacket instance) { + return instance.isSecureChatEnforced() || VisualSettings.getClassWrapper().disableSecureChatWarning.getValue(); + } } diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinItemRenderer.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/MixinItemRenderer.java similarity index 94% rename from src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinItemRenderer.java rename to src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/MixinItemRenderer.java index c9a54683..6d123d43 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinItemRenderer.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/MixinItemRenderer.java @@ -1,4 +1,4 @@ -package de.florianmichael.viafabricplus.injection.mixin.fixes.visual; +package de.florianmichael.viafabricplus.injection.mixin.fixes; import de.florianmichael.viafabricplus.settings.groups.VisualSettings; import net.minecraft.client.render.item.ItemModels; diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/block/MixinChestBlock.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/block/MixinChestBlock.java new file mode 100644 index 00000000..49d2e165 --- /dev/null +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/block/MixinChestBlock.java @@ -0,0 +1,39 @@ +package de.florianmichael.viafabricplus.injection.mixin.fixes.block; + +import de.florianmichael.vialoadingbase.ViaLoadingBase; +import net.minecraft.block.*; +import net.minecraft.block.entity.BlockEntityType; +import net.minecraft.block.entity.ChestBlockEntity; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.shape.VoxelShape; +import net.minecraft.util.shape.VoxelShapes; +import net.minecraft.world.BlockView; +import net.raphimc.vialegacy.api.LegacyProtocolVersion; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.function.Supplier; + +@Mixin(ChestBlock.class) +public abstract class MixinChestBlock extends AbstractChestBlock { + + protected MixinChestBlock(Settings settings, Supplier> blockEntityTypeSupplier) { + super(settings, blockEntityTypeSupplier); + } + + @Inject(method = "getOutlineShape", at = @At("HEAD"), cancellable = true) + public void changeShape(BlockState state, BlockView world, BlockPos pos, ShapeContext context, CallbackInfoReturnable cir) { + if (ViaLoadingBase.getClassWrapper().getTargetVersion().isOlderThanOrEqualTo(LegacyProtocolVersion.r1_4_2)) { + cir.setReturnValue(VoxelShapes.fullCube()); + } + } + + @Inject(method = "getRenderType", at = @At("HEAD"), cancellable = true) + public void changeRenderType(BlockState state, CallbackInfoReturnable cir) { + if (ViaLoadingBase.getClassWrapper().getTargetVersion().isOlderThanOrEqualTo(LegacyProtocolVersion.b1_7tob1_7_3)) { + cir.setReturnValue(BlockRenderType.MODEL); + } + } +} diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/block/MixinFenceBlock.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/block/MixinFenceBlock.java index 310c9d2a..d856125c 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/block/MixinFenceBlock.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/block/MixinFenceBlock.java @@ -2,15 +2,24 @@ package de.florianmichael.viafabricplus.injection.mixin.fixes.block; import com.viaversion.viaversion.api.protocol.version.ProtocolVersion; import de.florianmichael.vialoadingbase.ViaLoadingBase; -import net.minecraft.block.FenceBlock; +import net.minecraft.block.*; import net.minecraft.util.ActionResult; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.shape.VoxelShape; +import net.minecraft.world.BlockView; +import net.raphimc.vialegacy.api.LegacyProtocolVersion; import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; @Mixin(FenceBlock.class) -public class MixinFenceBlock { +public class MixinFenceBlock extends HorizontalConnectingBlock { + + protected MixinFenceBlock(float radius1, float radius2, float boundingHeight1, float boundingHeight2, float collisionHeight, Settings settings) { + super(radius1, radius2, boundingHeight1, boundingHeight2, collisionHeight, settings); + } @Inject(method = "onUse", at = @At("HEAD"), cancellable = true) private void injectOnUse(CallbackInfoReturnable ci) { @@ -18,4 +27,15 @@ public class MixinFenceBlock { ci.setReturnValue(ActionResult.SUCCESS); } } + + @Unique + private static final VoxelShape viafabricplus_fence_shape_b1_8_1 = Block.createCuboidShape(0, 0, 0, 16, 32, 16); + + @Override + public VoxelShape getCollisionShape(BlockState state, BlockView world, BlockPos pos, ShapeContext context) { + if (ViaLoadingBase.getClassWrapper().getTargetVersion().isOlderThan(LegacyProtocolVersion.r1_0_0tor1_0_1)) { + return viafabricplus_fence_shape_b1_8_1; + } + return super.getCollisionShape(state, world, pos, context); + } } diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/entity/MixinClientPlayerEntity.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/entity/MixinClientPlayerEntity.java index a24228c5..d75ebdb6 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/entity/MixinClientPlayerEntity.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/entity/MixinClientPlayerEntity.java @@ -2,9 +2,11 @@ package de.florianmichael.viafabricplus.injection.mixin.fixes.entity; import com.mojang.authlib.GameProfile; import com.viaversion.viaversion.api.protocol.version.ProtocolVersion; +import de.florianmichael.viafabricplus.definition.v1_8_x.ArmorPointsDefinition; import de.florianmichael.viafabricplus.definition.v1_8_x.IdlePacketExecutor; import de.florianmichael.viafabricplus.injection.access.IClientPlayerEntity; import de.florianmichael.viafabricplus.settings.groups.DebugSettings; +import de.florianmichael.viafabricplus.settings.groups.VisualSettings; import de.florianmichael.vialoadingbase.ViaLoadingBase; import net.minecraft.client.MinecraftClient; import net.minecraft.client.input.Input; @@ -186,6 +188,14 @@ public abstract class MixinClientPlayerEntity extends AbstractClientPlayerEntity } } + @Override + public int getArmor() { + if (VisualSettings.getClassWrapper().emulateArmorHud.getValue()) { + return ArmorPointsDefinition.sum(); + } + return super.getArmor(); + } + @Override public void viafabricplus_cancelSwingOnce() { protocolhack_areSwingCanceledThisTick = true; diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/entity/MixinPlayerEntity.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/entity/MixinPlayerEntity.java index 88af00fc..01ad8a96 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/entity/MixinPlayerEntity.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/entity/MixinPlayerEntity.java @@ -1,13 +1,17 @@ package de.florianmichael.viafabricplus.injection.mixin.fixes.entity; import com.viaversion.viaversion.api.protocol.version.ProtocolVersion; +import de.florianmichael.viafabricplus.definition.LegacySounds; +import de.florianmichael.viafabricplus.settings.groups.VisualSettings; import de.florianmichael.vialoadingbase.ViaLoadingBase; import net.minecraft.entity.EntityDimensions; import net.minecraft.entity.EntityPose; import net.minecraft.entity.EntityType; import net.minecraft.entity.LivingEntity; +import net.minecraft.entity.damage.DamageSource; import net.minecraft.entity.player.PlayerAbilities; import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.sound.SoundEvent; import net.minecraft.world.World; import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Mixin; @@ -80,4 +84,12 @@ public abstract class MixinPlayerEntity extends LivingEntity { ci.setReturnValue(1f); } } + + // Copyright Gaming32 - LICENSE_GENERAL_MIT file + @Inject(method = "getHurtSound", at = @At("HEAD"), cancellable = true) + public void replaceSound(DamageSource source, CallbackInfoReturnable cir) { + if (VisualSettings.getClassWrapper().replaceHurtSoundWithOOFSound.getValue()) { + cir.setReturnValue(LegacySounds.RANDOM_HURT); + } + } } diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/item/MixinBlockItem.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/item/MixinBlockItem.java index e19e63bc..6c78bda0 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/item/MixinBlockItem.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/item/MixinBlockItem.java @@ -17,7 +17,7 @@ import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; -// Copyright Earthcomputer - MIT LICENSE +// Copyright (c) 2019 Joseph Burton (Earthcomputer) - LICENSE_multiconnect file @Mixin(BlockItem.class) public class MixinBlockItem { diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/item/MixinHeldItemRenderer.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/item/MixinHeldItemRenderer.java index 0d47b5ed..ee4baaed 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/item/MixinHeldItemRenderer.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/item/MixinHeldItemRenderer.java @@ -18,7 +18,7 @@ import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.Slice; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; -// Copyright Earthcomputer - MIT LICENSE +// Copyright (c) 2019 Joseph Burton (Earthcomputer) - LICENSE_multiconnect file @Mixin(HeldItemRenderer.class) public class MixinHeldItemRenderer { diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/item/MixinItemPlacementContext.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/item/MixinItemPlacementContext.java index 37ed4122..6269a4c9 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/item/MixinItemPlacementContext.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/item/MixinItemPlacementContext.java @@ -11,7 +11,7 @@ import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; -// Copyright Earthcomputer - MIT LICENSE +// Copyright (c) 2019 Joseph Burton (Earthcomputer) - LICENSE_multiconnect file @Mixin(ItemPlacementContext.class) public class MixinItemPlacementContext { diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/item/MixinSwordItem.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/item/MixinSwordItem.java index 6cec9f63..e0df621b 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/item/MixinSwordItem.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/item/MixinSwordItem.java @@ -13,7 +13,7 @@ import net.minecraft.util.UseAction; import net.minecraft.world.World; import org.spongepowered.asm.mixin.Mixin; -// Copyright Earthcomputer - MIT LICENSE +// Copyright (c) 2019 Joseph Burton (Earthcomputer) - LICENSE_multiconnect file @Mixin(SwordItem.class) public class MixinSwordItem extends ToolItem { diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/screen/MixinChatScreen.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/screen/MixinChatScreen.java index f9ba7f7a..0fd0df6d 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/screen/MixinChatScreen.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/screen/MixinChatScreen.java @@ -1,12 +1,16 @@ package de.florianmichael.viafabricplus.injection.mixin.fixes.screen; import de.florianmichael.viafabricplus.definition.ChatLengthDefinition; +import de.florianmichael.viafabricplus.settings.groups.VisualSettings; +import net.minecraft.client.gui.hud.ChatHud; +import net.minecraft.client.gui.hud.MessageIndicator; import net.minecraft.client.gui.screen.ChatScreen; import net.minecraft.client.gui.widget.TextFieldWidget; 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.Redirect; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; @Mixin(ChatScreen.class) @@ -18,4 +22,12 @@ public class MixinChatScreen { public void changeChatLength(CallbackInfo ci) { this.chatField.setMaxLength(ChatLengthDefinition.getMaxLength()); } + + @Redirect(method = "render", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/hud/ChatHud;getIndicatorAt(DD)Lnet/minecraft/client/gui/hud/MessageIndicator;")) + public MessageIndicator removeIndicator(ChatHud instance, double mouseX, double mouseY) { + if (VisualSettings.getClassWrapper().hideSignatureIndicator.getValue()) { + return null; + } + return instance.getIndicatorAt(mouseX, mouseY); + } } diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinCommandBlockScreen.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/screen/MixinCommandBlockScreen.java similarity index 94% rename from src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinCommandBlockScreen.java rename to src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/screen/MixinCommandBlockScreen.java index b41c72ad..8273886b 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinCommandBlockScreen.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/screen/MixinCommandBlockScreen.java @@ -1,4 +1,4 @@ -package de.florianmichael.viafabricplus.injection.mixin.fixes.visual; +package de.florianmichael.viafabricplus.injection.mixin.fixes.screen; import de.florianmichael.viafabricplus.settings.groups.VisualSettings; import net.minecraft.block.entity.CommandBlockBlockEntity; diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinCreativeInventoryScreen.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/screen/MixinCreativeInventoryScreen.java similarity index 92% rename from src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinCreativeInventoryScreen.java rename to src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/screen/MixinCreativeInventoryScreen.java index 24cc6e4b..3f615479 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinCreativeInventoryScreen.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/screen/MixinCreativeInventoryScreen.java @@ -1,4 +1,4 @@ -package de.florianmichael.viafabricplus.injection.mixin.fixes.visual; +package de.florianmichael.viafabricplus.injection.mixin.fixes.screen; import de.florianmichael.viafabricplus.definition.c0_30.ClassicItemSelectionScreen; import de.florianmichael.viafabricplus.settings.groups.VisualSettings; diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinJigsawBlockScreen.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/screen/MixinJigsawBlockScreen.java similarity index 96% rename from src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinJigsawBlockScreen.java rename to src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/screen/MixinJigsawBlockScreen.java index 74f7e6ad..c98dadbc 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinJigsawBlockScreen.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/screen/MixinJigsawBlockScreen.java @@ -1,4 +1,4 @@ -package de.florianmichael.viafabricplus.injection.mixin.fixes.visual; +package de.florianmichael.viafabricplus.injection.mixin.fixes.screen; import de.florianmichael.viafabricplus.settings.groups.VisualSettings; import net.minecraft.block.entity.JigsawBlockEntity; diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinChatHud.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/screen/hud/MixinChatHud.java similarity index 92% rename from src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinChatHud.java rename to src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/screen/hud/MixinChatHud.java index 19c16586..8c7c47ac 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinChatHud.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/screen/hud/MixinChatHud.java @@ -1,4 +1,4 @@ -package de.florianmichael.viafabricplus.injection.mixin.fixes.visual; +package de.florianmichael.viafabricplus.injection.mixin.fixes.screen.hud; import de.florianmichael.viafabricplus.settings.groups.VisualSettings; import net.minecraft.client.gui.hud.ChatHud; diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/MixinProtocolVersion.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/MixinProtocolVersion.java index 93044d82..fc996c22 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/MixinProtocolVersion.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/MixinProtocolVersion.java @@ -13,7 +13,7 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; import java.util.HashMap; import java.util.Map; -// Copyright RaphiMC/RK_01 - GPL v3 LICENSE +// Copyright RaphiMC/RK_01 - LICENSE file @Mixin(value = ProtocolVersion.class, remap = false) public abstract class MixinProtocolVersion { diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_12to1_11_1/MixinChatItemRewriter.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_12to1_11_1/MixinChatItemRewriter.java index 42924c61..37a3b315 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_12to1_11_1/MixinChatItemRewriter.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_12to1_11_1/MixinChatItemRewriter.java @@ -13,7 +13,7 @@ import java.util.logging.Level; import java.util.regex.Matcher; import java.util.regex.Pattern; -// Copyright RaphiMC/RK_01 - GPL v3 LICENSE +// Copyright RaphiMC/RK_01 - LICENSE file @Mixin(value = ChatItemRewriter.class, remap = false) public abstract class MixinChatItemRewriter { diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_13to1_12_2/MixinWorldPackets1_13.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_13to1_12_2/MixinWorldPackets1_13.java index 8e7cd479..e2aabad4 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_13to1_12_2/MixinWorldPackets1_13.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_13to1_12_2/MixinWorldPackets1_13.java @@ -6,7 +6,7 @@ import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; -// Copyright RaphiMC/RK_01 - GPL v3 LICENSE +// Copyright RaphiMC/RK_01 - LICENSE file @Mixin(value = WorldPackets.class, remap = false) public abstract class MixinWorldPackets1_13 { diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_16_2to1_16_1/MixinWorldPackets_2.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_16_2to1_16_1/MixinWorldPackets_2.java index a1c4474e..a3093bf7 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_16_2to1_16_1/MixinWorldPackets_2.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_16_2to1_16_1/MixinWorldPackets_2.java @@ -5,7 +5,7 @@ import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.injection.Constant; import org.spongepowered.asm.mixin.injection.ModifyConstant; -// Copyright RaphiMC/RK_01 - GPL v3 LICENSE +// Copyright RaphiMC/RK_01 - LICENSE file @Mixin(value = WorldPackets.class, remap = false) public abstract class MixinWorldPackets_2 { diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_17to1_16_4/MixinEntityPackets1_17.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_17to1_16_4/MixinEntityPackets1_17.java index 1a807b43..9144234c 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_17to1_16_4/MixinEntityPackets1_17.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_17to1_16_4/MixinEntityPackets1_17.java @@ -12,7 +12,7 @@ import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Redirect; @SuppressWarnings({"unchecked", "rawtypes"}) -// Copyright RaphiMC/RK_01 - GPL v3 LICENSE +// Copyright RaphiMC/RK_01 - LICENSE file @Mixin(value = EntityPackets.class, remap = false) public abstract class MixinEntityPackets1_17 { diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_17to1_16_4/MixinWorldPackets1_17.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_17to1_16_4/MixinWorldPackets1_17.java index 504267f0..85354d16 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_17to1_16_4/MixinWorldPackets1_17.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_17to1_16_4/MixinWorldPackets1_17.java @@ -12,7 +12,7 @@ import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Redirect; @SuppressWarnings({"unchecked", "rawtypes"}) -// Copyright RaphiMC/RK_01 - GPL v3 LICENSE +// Copyright RaphiMC/RK_01 - LICENSE file @Mixin(value = WorldPackets.class, remap = false) public abstract class MixinWorldPackets1_17 { diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_18_2to1_18/MixinProtocol1_18_2To1_18.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_18_2to1_18/MixinProtocol1_18_2To1_18.java index f0a8c9ed..ea95cc70 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_18_2to1_18/MixinProtocol1_18_2To1_18.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_18_2to1_18/MixinProtocol1_18_2To1_18.java @@ -14,7 +14,7 @@ import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; @SuppressWarnings("DataFlowIssue") -// Copyright RaphiMC/RK_01 - GPL v3 LICENSE +// Copyright RaphiMC/RK_01 - LICENSE file @Mixin(value = Protocol1_18_2To1_18.class, remap = false) public class MixinProtocol1_18_2To1_18 extends AbstractProtocol { diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_9to1_8/MixinChunk1_8Type.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_9to1_8/MixinChunk1_8Type.java index 0a5085bf..0f8ed5cc 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_9to1_8/MixinChunk1_8Type.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_9to1_8/MixinChunk1_8Type.java @@ -11,7 +11,7 @@ import org.spongepowered.asm.mixin.injection.Redirect; import java.util.ArrayList; import java.util.logging.Level; -// Copyright RaphiMC/RK_01 - GPL v3 LICENSE +// Copyright RaphiMC/RK_01 - LICENSE file @Mixin(value = Chunk1_8Type.class, remap = false) public abstract class MixinChunk1_8Type { diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_9to1_8/MixinEntityPackets_6_1.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_9to1_8/MixinEntityPackets_6_1.java index 35a1ce45..5ea8a52e 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_9to1_8/MixinEntityPackets_6_1.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_9to1_8/MixinEntityPackets_6_1.java @@ -8,7 +8,7 @@ import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; -// Copyright RaphiMC/RK_01 - GPL v3 LICENSE +// Copyright RaphiMC/RK_01 - LICENSE file @Mixin(targets = "com.viaversion.viaversion.protocols.protocol1_9to1_8.packets.EntityPackets$6$1", remap = false) public abstract class MixinEntityPackets_6_1 { diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_9to1_8/MixinEntityTracker1_9.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_9to1_8/MixinEntityTracker1_9.java index 5b22fc5b..c81e694d 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_9to1_8/MixinEntityTracker1_9.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_9to1_8/MixinEntityTracker1_9.java @@ -7,7 +7,7 @@ import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.Redirect; import org.spongepowered.asm.mixin.injection.Slice; -// Copyright RaphiMC/RK_01 - GPL v3 LICENSE +// Copyright RaphiMC/RK_01 - LICENSE file @Mixin(value = EntityTracker1_9.class, remap = false) public abstract class MixinEntityTracker1_9 { diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_9to1_8/MixinMetadataRewriter1_9To1_8.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_9to1_8/MixinMetadataRewriter1_9To1_8.java index 0114397f..0a2cd3ee 100644 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_9to1_8/MixinMetadataRewriter1_9To1_8.java +++ b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/viaversion/protocol1_9to1_8/MixinMetadataRewriter1_9To1_8.java @@ -12,7 +12,7 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; import java.util.List; -// Copyright RaphiMC/RK_01 - GPL v3 LICENSE +// Copyright RaphiMC/RK_01 - LICENSE file @Mixin(value = MetadataRewriter1_9To1_8.class, remap = false) public abstract class MixinMetadataRewriter1_9To1_8 { diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinChatScreen.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinChatScreen.java deleted file mode 100644 index acf4cc63..00000000 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinChatScreen.java +++ /dev/null @@ -1,21 +0,0 @@ -package de.florianmichael.viafabricplus.injection.mixin.fixes.visual; - -import de.florianmichael.viafabricplus.settings.groups.VisualSettings; -import net.minecraft.client.gui.hud.ChatHud; -import net.minecraft.client.gui.hud.MessageIndicator; -import net.minecraft.client.gui.screen.ChatScreen; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; - -@Mixin(ChatScreen.class) -public class MixinChatScreen { - - @Redirect(method = "render", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/hud/ChatHud;getIndicatorAt(DD)Lnet/minecraft/client/gui/hud/MessageIndicator;")) - public MessageIndicator removeIndicator(ChatHud instance, double mouseX, double mouseY) { - if (VisualSettings.getClassWrapper().hideSignatureIndicator.getValue()) { - return null; - } - return instance.getIndicatorAt(mouseX, mouseY); - } -} diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinClientPlayNetworkHandler.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinClientPlayNetworkHandler.java deleted file mode 100644 index c06088c5..00000000 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinClientPlayNetworkHandler.java +++ /dev/null @@ -1,17 +0,0 @@ -package de.florianmichael.viafabricplus.injection.mixin.fixes.visual; - -import de.florianmichael.viafabricplus.settings.groups.VisualSettings; -import net.minecraft.client.network.ClientPlayNetworkHandler; -import net.minecraft.network.packet.s2c.play.ServerMetadataS2CPacket; -import org.spongepowered.asm.mixin.Mixin; -import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Redirect; - -@Mixin(ClientPlayNetworkHandler.class) -public class MixinClientPlayNetworkHandler { - - @Redirect(method = "onServerMetadata", at = @At(value = "INVOKE", target = "Lnet/minecraft/network/packet/s2c/play/ServerMetadataS2CPacket;isSecureChatEnforced()Z")) - public boolean removeSecureChatWarning(ServerMetadataS2CPacket instance) { - return instance.isSecureChatEnforced() || VisualSettings.getClassWrapper().disableSecureChatWarning.getValue(); - } -} diff --git a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinClientPlayerEntity.java b/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinClientPlayerEntity.java deleted file mode 100644 index 66ebdc97..00000000 --- a/src/main/java/de/florianmichael/viafabricplus/injection/mixin/fixes/visual/MixinClientPlayerEntity.java +++ /dev/null @@ -1,25 +0,0 @@ -package de.florianmichael.viafabricplus.injection.mixin.fixes.visual; - -import com.mojang.authlib.GameProfile; -import de.florianmichael.viafabricplus.definition.v1_8_x.ArmorPointsDefinition; -import de.florianmichael.viafabricplus.settings.groups.VisualSettings; -import net.minecraft.client.network.AbstractClientPlayerEntity; -import net.minecraft.client.network.ClientPlayerEntity; -import net.minecraft.client.world.ClientWorld; -import org.spongepowered.asm.mixin.Mixin; - -@Mixin(ClientPlayerEntity.class) -public class MixinClientPlayerEntity extends AbstractClientPlayerEntity { - - public MixinClientPlayerEntity(ClientWorld world, GameProfile profile) { - super(world, profile); - } - - @Override - public int getArmor() { - if (VisualSettings.getClassWrapper().emulateArmorHud.getValue()) { - return ArmorPointsDefinition.sum(); - } - return super.getArmor(); - } -} diff --git a/src/main/java/de/florianmichael/viafabricplus/settings/groups/VisualSettings.java b/src/main/java/de/florianmichael/viafabricplus/settings/groups/VisualSettings.java index 66102bbb..185df8da 100644 --- a/src/main/java/de/florianmichael/viafabricplus/settings/groups/VisualSettings.java +++ b/src/main/java/de/florianmichael/viafabricplus/settings/groups/VisualSettings.java @@ -25,6 +25,9 @@ public class VisualSettings extends SettingGroup { public final ProtocolSyncBooleanSetting emulateArmorHud = new ProtocolSyncBooleanSetting(this, "Emulate Armor hud", ProtocolRange.andOlder(ProtocolVersion.v1_8)); public final ProtocolSyncBooleanSetting removeNewerFeaturesFromCommandBlockScreen = new ProtocolSyncBooleanSetting(this, "Remove newer features from Command block screen", ProtocolRange.andOlder(ProtocolVersion.v1_8)); + // r1_0_0tor1_0_1 -> b1_8tob1_8_1 + public final ProtocolSyncBooleanSetting replaceHurtSoundWithOOFSound = new ProtocolSyncBooleanSetting(this, "Replace hurt sound with OOF sound", ProtocolRange.andOlder(LegacyProtocolVersion.b1_8tob1_8_1)); + // a1_0_15 -> c0_28toc0_30 public final ProtocolSyncBooleanSetting replaceCreativeInventory = new ProtocolSyncBooleanSetting(this, "Replace creative inventory", ProtocolRange.andOlder(LegacyProtocolVersion.c0_28toc0_30)); public final ProtocolSyncBooleanSetting oldWalkingAnimation = new ProtocolSyncBooleanSetting(this, "Old walking animation", ProtocolRange.andOlder(LegacyProtocolVersion.c0_28toc0_30)); diff --git a/src/main/resources/assets/minecraft/blockstates/chest.json b/src/main/resources/assets/minecraft/blockstates/chest.json new file mode 100644 index 00000000..4aec7582 --- /dev/null +++ b/src/main/resources/assets/minecraft/blockstates/chest.json @@ -0,0 +1,55 @@ +{ + "variants": { + "type=single": { + "model": "viafabricplus:block/chest_single" + }, + "type=left,facing=south": { + "model": "viafabricplus:block/chest_right", + "rotation": { + "y": -90 + } + }, + "type=left,facing=east": { + "model": "viafabricplus:block/chest_right", + "rotation": { + "y": -90 + } + }, + "type=left,facing=north": { + "model": "viafabricplus:block/chest_right", + "rotation": { + "y": 180 + } + }, + "type=left,facing=west": { + "model": "viafabricplus:block/chest_right", + "rotation": { + "y": 90 + } + }, + "type=right,facing=south": { + "model": "viafabricplus:block/chest_left", + "rotation": { + "y": -90 + } + }, + "type=right,facing=east": { + "model": "viafabricplus:block/chest_left", + "rotation": { + "y": -90 + } + }, + "type=right,facing=north": { + "model": "viafabricplus:block/chest_left", + "rotation": { + "y": 180 + } + }, + "type=right,facing=west": { + "model": "viafabricplus:block/chest_left", + "rotation": { + "y": 90 + } + } + } +} \ No newline at end of file diff --git a/src/main/resources/assets/viafabricplus/models/block/chest_left.json b/src/main/resources/assets/viafabricplus/models/block/chest_left.json new file mode 100644 index 00000000..7c08e658 --- /dev/null +++ b/src/main/resources/assets/viafabricplus/models/block/chest_left.json @@ -0,0 +1,24 @@ +{ + "credit": "Gaming32", + "textures": { + "0": "viafabricplus:block/chest_end", + "1": "viafabricplus:block/chest_left_front", + "2": "viafabricplus:block/chest_single_side", + "3": "viafabricplus:block/chest_left_back", + "particle": "viafabricplus:block/chest_end" + }, + "elements": [ + { + "from": [0, 0, 0], + "to": [16, 16, 16], + "faces": { + "north": {"uv": [0, 0, 16, 16], "texture": "#3"}, + "east": {"uv": [0, 0, 16, 16], "texture": "#missing"}, + "south": {"uv": [0, 0, 16, 16], "texture": "#1"}, + "west": {"uv": [0, 0, 16, 16], "texture": "#2"}, + "up": {"uv": [0, 0, 16, 16], "texture": "#0"}, + "down": {"uv": [0, 0, 16, 16], "texture": "#0"} + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/viafabricplus/models/block/chest_right.json b/src/main/resources/assets/viafabricplus/models/block/chest_right.json new file mode 100644 index 00000000..f4e8971e --- /dev/null +++ b/src/main/resources/assets/viafabricplus/models/block/chest_right.json @@ -0,0 +1,24 @@ +{ + "credit": "Gaming32", + "textures": { + "0": "viafabricplus:block/chest_right_front", + "1": "viafabricplus:block/chest_end", + "2": "viafabricplus:block/chest_single_side", + "3": "viafabricplus:block/chest_right_back", + "particle": "viafabricplus:block/chest_end" + }, + "elements": [ + { + "from": [0, 0, 0], + "to": [16, 16, 16], + "faces": { + "north": {"uv": [0, 0, 16, 16], "texture": "#3"}, + "east": {"uv": [0, 0, 16, 16], "texture": "#2"}, + "south": {"uv": [0, 0, 16, 16], "texture": "#0"}, + "west": {"uv": [0, 0, 16, 16], "texture": "#missing"}, + "up": {"uv": [0, 0, 16, 16], "texture": "#1"}, + "down": {"uv": [0, 0, 16, 16], "texture": "#1"} + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/viafabricplus/models/block/chest_single.json b/src/main/resources/assets/viafabricplus/models/block/chest_single.json new file mode 100644 index 00000000..2d1ef3f3 --- /dev/null +++ b/src/main/resources/assets/viafabricplus/models/block/chest_single.json @@ -0,0 +1,23 @@ +{ + "credit": "Gaming32", + "textures": { + "0": "viafabricplus:block/chest_end", + "1": "viafabricplus:block/chest_single_front", + "2": "viafabricplus:block/chest_single_side", + "particle": "viafabricplus:block/chest_end" + }, + "elements": [ + { + "from": [0, 0, 0], + "to": [16, 16, 16], + "faces": { + "north": {"uv": [0, 0, 16, 16], "texture": "#2"}, + "east": {"uv": [0, 0, 16, 16], "texture": "#2"}, + "south": {"uv": [0, 0, 16, 16], "texture": "#1"}, + "west": {"uv": [0, 0, 16, 16], "texture": "#2"}, + "up": {"uv": [0, 0, 16, 16], "texture": "#0"}, + "down": {"uv": [0, 0, 16, 16], "texture": "#0"} + } + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/viafabricplus/sounds.json b/src/main/resources/assets/viafabricplus/sounds.json new file mode 100644 index 00000000..ccedb447 --- /dev/null +++ b/src/main/resources/assets/viafabricplus/sounds.json @@ -0,0 +1,7 @@ +{ + "random.hurt": { + "sounds": [ + "viafabricplus:random/hurt" + ] + } +} \ No newline at end of file diff --git a/src/main/resources/assets/viafabricplus/sounds/random/hurt.ogg b/src/main/resources/assets/viafabricplus/sounds/random/hurt.ogg new file mode 100644 index 0000000000000000000000000000000000000000..b4cbc12e58a16844854ff57a010c336a2f154ed7 GIT binary patch literal 11499 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 aC?nax_M8zc9?0;`4Nj7xp#(^-%l`pzGP+a% literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/viafabricplus/textures/block/chest_end.png b/src/main/resources/assets/viafabricplus/textures/block/chest_end.png new file mode 100644 index 0000000000000000000000000000000000000000..9f66db86b6d5e76c216d0acc31174ea3a2ac4d6a GIT binary patch literal 332 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJV{wqX6T`Z5GB1G~mUKs7M+SzC z{oH>NS%G}}0G|+7Z8dpgJymlf3#T9cBM>*JNC=IHfj$}TBVUtOuY zJWt+KU#%}uZBe$enZBx)s;q^+s*$c**}CP)K%+PdJR*x382Ao@Fyrz36)8Z$X`U{Q zAsWG^{ft6~6*yQLO!eh$=H&hN XZ*uZ6 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/viafabricplus/textures/block/chest_left_back.png b/src/main/resources/assets/viafabricplus/textures/block/chest_left_back.png new file mode 100644 index 0000000000000000000000000000000000000000..c141fda948ea78463b12cde0db20e0a7311d5326 GIT binary patch literal 378 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJV{wqX6T`Z5GB1G~mUKs7M+SzC z{oH>NS%Lh70G|+7H#;LoYkgN+Lt{PF{!G~=Me57*}=b!0?}EfVfKG-2yG>vYj`R&kw`_hgN&&kO9i|EH1nL!%0llHi=8 zbFEpn*Q4~=mP#eByArkk>%Hjg@&NrQm)3c(+cRzaRoyMS%QNf=!w09YIg7b&1&S)` zW%tc|Fh7NVMnn5tRP0|OwE4v90FH;Y$Eq8Sr}w<)pTorYq;0yk QJkYrep00i_>zopr0Pin-Gynhq literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/viafabricplus/textures/block/chest_left_front.png b/src/main/resources/assets/viafabricplus/textures/block/chest_left_front.png new file mode 100644 index 0000000000000000000000000000000000000000..39d178b774ebe0d4d2b8cfb80140ff4434ce1d0f GIT binary patch literal 399 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJV{wqX6T`Z5GB1G~mUKs7M+SzC z{oH>NS%Li00G|+7H#;LoYkgN+Lk$(#)s?zSiqx0q$@gch z_pJZcXDo;FwUYv+Yk3!Yw&T9q8Zpc}UQ n+_yf)&o=s&`ZF!-i_h6-PUF5U`_B9-(76nru6{1-oD!M<>%@$B literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/viafabricplus/textures/block/chest_right_back.png b/src/main/resources/assets/viafabricplus/textures/block/chest_right_back.png new file mode 100644 index 0000000000000000000000000000000000000000..8cf79d5353f1410b5ebb5688dc8a35b21a342d22 GIT binary patch literal 358 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJV{wqX6T`Z5GB1G~mUKs7M+SzC z{oH>NS%LhJ0G|+7H#;LoYkgN+Lk$(#)s?zSiqx0q$@gcbsydySjF7K0lZaeR^P@b3&lYpm};n5k_OmdKI;Vst0PjY2ZvX%Q literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/viafabricplus/textures/block/chest_right_front.png b/src/main/resources/assets/viafabricplus/textures/block/chest_right_front.png new file mode 100644 index 0000000000000000000000000000000000000000..6dbf9c3877986e37528ac635d55d9e0b4d533537 GIT binary patch literal 415 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJV{wqX6T`Z5GB1G~mUKs7M+SzC z{oH>NS%LiO0G|+7H#;LoYkgN+Lt{PF{!G~=Me57*WOO{L1C42r|_GJ`Zr zLo^c|#mWO@`V!TeqSdt20CWatfk$L90|Vb-5N14{ zzaj-FxYpCfF+?L+x4&1YNkO1x{g2C&_zrGT($-%2z5dX*EBS1E(`N5&&0y}>7SW`% zw%62++f6z=@a?nBh36z+E4=yE8=KMawPeLiOBTK}xjlw~%(qTExppZD|_G5 zIqiu%7C&+6f3C45SNrMHlb!po&QP4})GEVZ{^nYym}8uaYj>yUTFz@Ki{066zT9c@ zZ(#{$5zE~6&|LA!B$EQ3hm%iK+fOwTz4A%->38sYhI-J4N)z4*}Q$iB} D(Fc*C literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/viafabricplus/textures/block/chest_single_front.png b/src/main/resources/assets/viafabricplus/textures/block/chest_single_front.png new file mode 100644 index 0000000000000000000000000000000000000000..7e8c4afd10b0cce6a4e21b93799e5a573f90e11c GIT binary patch literal 452 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJV{wqX6T`Z5GB1G~mUKs7M+SzC z{oH>NS%Lg%0X`wFZgxhF*7~lthQ@lTt1ESv6sa%Ilkd-z)liXbjgjw8QgN{{Sd^{Y z5h;20?AfJDmujiX*2gPN&C#ojP(5_$P+MDDh@IG^WaSBITH0#zX8NjT25LI$@?~XZ zI_h%rGUDY?2E}1|iJs~cCr)%Vl`0L>(-O-Yx)_At^)M{CbzB(jH*y)DZ?ph9~4rYPJhR5E|zxz_gv;Xujue`$r=YLMO zRk_$^JY~|Qt1CW*+>_X9B3nDf>!VXmFL!PVvt;)A_j1c@483;C3D@ZcWnTWvsApYT qS@~Sf_SQDpU@76^U;ZzDGR=O;mv-fd-#(xh7(8A5T-G@yGywq50HB%x literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/viafabricplus/textures/block/chest_single_side.png b/src/main/resources/assets/viafabricplus/textures/block/chest_single_side.png new file mode 100644 index 0000000000000000000000000000000000000000..045d3ef96de2d837afa0bee6a0585856facf7da8 GIT binary patch literal 387 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJV{wqX6T`Z5GB1G~mUKs7M+SzC z{oH>NS%Lht0G|+7H#;LoYkgN+Lt{PF)s?zSiqx0q$@gcQ-iLR?lqp;l6zD7^rg?uQd6!UD{{XrqQ;Y}9pB>? z?JvK#xI(Z~*z8sY8=v~`_`}}>wbfL5{@n78J!a1s^~SHcUvZDnoZ|OU_owcx%li9| ZVbe!0TgCUve}FD#@O1TaS?83{1OTAnf2;ri literal 0 HcmV?d00001 diff --git a/src/main/resources/viafabricplus.mixins.json b/src/main/resources/viafabricplus.mixins.json index 31727e83..b05ac22e 100644 --- a/src/main/resources/viafabricplus.mixins.json +++ b/src/main/resources/viafabricplus.mixins.json @@ -30,6 +30,7 @@ "fixes.block.MixinBlockView", "fixes.block.MixinBrewingStandBlock", "fixes.block.MixinCauldronBlock", + "fixes.block.MixinChestBlock", "fixes.block.MixinEndPortalBlock", "fixes.block.MixinEndPortalFrameBlock", "fixes.block.MixinFarmlandBlock", @@ -129,18 +130,19 @@ "defaultRequire": 1 }, "client": [ - "bridge.MixinOptionsScreen", "bridge.MixinConnectScreen", "bridge.MixinDownloadingTerrainScreen", + "bridge.MixinOptionsScreen", + "fixes.MixinChestBlockEntityRenderer", "fixes.screen.MixinChatScreen", - "fixes.visual.MixinBipedEntityModel", - "fixes.visual.MixinChatHud", + "fixes.MixinBipedEntityModel", + "fixes.screen.hud.MixinChatHud", "fixes.visual.MixinChatScreen", "fixes.visual.MixinClientPlayerEntity", "fixes.visual.MixinClientPlayNetworkHandler", - "fixes.visual.MixinCommandBlockScreen", - "fixes.visual.MixinCreativeInventoryScreen", - "fixes.visual.MixinItemRenderer", - "fixes.visual.MixinJigsawBlockScreen" + "fixes.screen.MixinCommandBlockScreen", + "fixes.screen.MixinCreativeInventoryScreen", + "fixes.MixinItemRenderer", + "fixes.screen.MixinJigsawBlockScreen" ] }