From 10024c3d72f4d08a9a63cfaff3ab1e952f2f7413 Mon Sep 17 00:00:00 2001 From: Light_Quanta Date: Wed, 2 Apr 2025 04:34:39 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E5=8F=96renderArms=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../superbwarfare/client/AnimationHelper.java | 59 +++++++++++++++++++ .../renderer/item/AK12ItemRenderer.java | 28 +-------- .../renderer/item/AK47ItemRenderer.java | 28 +-------- .../renderer/item/Aa12ItemRenderer.java | 28 +-------- .../renderer/item/BocekItemRenderer.java | 28 +-------- .../renderer/item/DevotionItemRenderer.java | 28 +-------- .../renderer/item/Glock17ItemRenderer.java | 28 +-------- .../renderer/item/Glock18ItemRenderer.java | 28 +-------- .../renderer/item/Hk416ItemRenderer.java | 28 +-------- .../item/HomemadeShotgunItemRenderer.java | 28 +-------- .../item/HuntingRifleItemRenderer.java | 28 +-------- .../client/renderer/item/K98ItemRenderer.java | 28 +-------- .../renderer/item/LungeMineRenderer.java | 28 +-------- .../renderer/item/M1911ItemRenderer.java | 28 +-------- .../client/renderer/item/M4ItemRenderer.java | 28 +-------- .../client/renderer/item/M60ItemRenderer.java | 28 +-------- .../client/renderer/item/M79ItemRenderer.java | 28 +-------- .../renderer/item/M870ItemRenderer.java | 28 +-------- .../renderer/item/M98bItemRenderer.java | 28 +-------- .../renderer/item/MarlinItemRenderer.java | 28 +-------- .../renderer/item/MinigunItemRenderer.java | 28 +-------- .../renderer/item/Mk14ItemRenderer.java | 28 +-------- .../item/MosinNagantItemRenderer.java | 28 +-------- .../renderer/item/Mp443ItemRenderer.java | 28 +-------- .../client/renderer/item/Ntw20Renderer.java | 28 +-------- .../renderer/item/Qbz95ItemRenderer.java | 28 +-------- .../client/renderer/item/RpgItemRenderer.java | 28 +-------- .../client/renderer/item/RpkItemRenderer.java | 28 +-------- .../item/SecondaryCataclysmRenderer.java | 28 +-------- .../renderer/item/SentinelItemRenderer.java | 28 +-------- .../client/renderer/item/SksItemRenderer.java | 28 +-------- .../client/renderer/item/SvdItemRenderer.java | 28 +-------- .../renderer/item/TaserItemRenderer.java | 28 +-------- .../renderer/item/TracheliumItemRenderer.java | 28 +-------- .../renderer/item/VectorItemRenderer.java | 28 +-------- 35 files changed, 127 insertions(+), 884 deletions(-) diff --git a/src/main/java/com/atsuishio/superbwarfare/client/AnimationHelper.java b/src/main/java/com/atsuishio/superbwarfare/client/AnimationHelper.java index c3dc2f2d4..9a1b168c0 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/AnimationHelper.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/AnimationHelper.java @@ -5,11 +5,22 @@ import com.atsuishio.superbwarfare.tools.GunsTool; import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; +import net.minecraft.client.Minecraft; +import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.geom.ModelPart; +import net.minecraft.client.player.AbstractClientPlayer; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.entity.player.PlayerRenderer; +import net.minecraft.client.renderer.texture.OverlayTexture; +import net.minecraft.resources.ResourceLocation; import net.minecraft.util.Mth; +import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.animation.AnimationProcessor; import software.bernie.geckolib.cache.object.GeoBone; +import software.bernie.geckolib.util.RenderUtil; public class AnimationHelper { @@ -84,4 +95,52 @@ public class AnimationHelper { camera.setRotZ(roll * camera.getRotZ()); } } + + public static void renderArms( + Minecraft mc, + LocalPlayer player, + ItemDisplayContext transformType, + PoseStack stack, + String name, + GeoBone bone, + float SCALE_RECIPROCAL, + MultiBufferSource currentBuffer, + RenderType renderType, + int packedLightIn, + boolean useOldLeftHandRender, + boolean useOldRightHandRender + ) { + if (transformType.firstPerson()) { + PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); + PlayerModel model = playerRenderer.getModel(); + stack.pushPose(); + RenderUtil.translateMatrixToBone(stack, bone); + RenderUtil.translateToPivotPoint(stack, bone); + RenderUtil.rotateMatrixAroundBone(stack, bone); + RenderUtil.scaleMatrixForBone(stack, bone); + RenderUtil.translateAwayFromPivotPoint(stack, bone); + ResourceLocation loc = player.getSkin().texture(); + if (name.equals("Lefthand")) { + stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); + if (useOldLeftHandRender) { + AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); + AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); + } else { + AnimationHelper.renderPartOverBone2(model.leftArm, bone, stack, currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); + AnimationHelper.renderPartOverBone2(model.leftSleeve, bone, stack, currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); + } + } else { + stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); + if (useOldRightHandRender) { + AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); + AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); + } else { + AnimationHelper.renderPartOverBone2R(model.leftArm, bone, stack, currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); + AnimationHelper.renderPartOverBone2R(model.leftSleeve, bone, stack, currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); + } + } + currentBuffer.getBuffer(renderType); + stack.popPose(); + } + } } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/AK12ItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/AK12ItemRenderer.java index 32a757339..dd30f1c58 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/AK12ItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/AK12ItemRenderer.java @@ -11,19 +11,14 @@ import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -131,27 +126,8 @@ public class AK12ItemRenderer extends GeoItemRenderer { ItemModelHelper.handleGunAttachments(bone, itemStack, name); } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2R(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2R(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, false, false); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/AK47ItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/AK47ItemRenderer.java index 6a7ff1edd..3b9413f67 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/AK47ItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/AK47ItemRenderer.java @@ -11,19 +11,14 @@ import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -150,27 +145,8 @@ public class AK47ItemRenderer extends GeoItemRenderer { } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2R(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2R(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, false, false); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Aa12ItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Aa12ItemRenderer.java index 0ad5bea2b..26bbf5ab5 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Aa12ItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Aa12ItemRenderer.java @@ -10,19 +10,14 @@ import com.atsuishio.superbwarfare.tools.GunsTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -99,27 +94,8 @@ public class Aa12ItemRenderer extends GeoItemRenderer { ItemModelHelper.handleGunAttachments(bone, itemStack, name); } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/BocekItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/BocekItemRenderer.java index 958e501b0..0254c2b80 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/BocekItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/BocekItemRenderer.java @@ -10,19 +10,14 @@ import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -98,27 +93,8 @@ public class BocekItemRenderer extends GeoItemRenderer { bone.setHidden(GunsTool.getGunIntTag(tag, "MaxAmmo") == 0); } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/DevotionItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/DevotionItemRenderer.java index 32d474e52..f510c0788 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/DevotionItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/DevotionItemRenderer.java @@ -9,19 +9,14 @@ import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -99,27 +94,8 @@ public class DevotionItemRenderer extends GeoItemRenderer { bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden") || !ClientEventHandler.zoom); } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Glock17ItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Glock17ItemRenderer.java index bdf56237f..cbccfa15e 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Glock17ItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Glock17ItemRenderer.java @@ -8,19 +8,14 @@ import com.atsuishio.superbwarfare.item.gun.handgun.Glock17Item; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -96,27 +91,8 @@ public class Glock17ItemRenderer extends GeoItemRenderer { } } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2R(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2R(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, false, false); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Glock18ItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Glock18ItemRenderer.java index 8086c9501..fdf65e806 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Glock18ItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Glock18ItemRenderer.java @@ -8,19 +8,14 @@ import com.atsuishio.superbwarfare.item.gun.handgun.Glock18Item; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -96,27 +91,8 @@ public class Glock18ItemRenderer extends GeoItemRenderer { } } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2R(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2R(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, false, false); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Hk416ItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Hk416ItemRenderer.java index 85e3b1f38..3c7be69f9 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Hk416ItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Hk416ItemRenderer.java @@ -11,19 +11,14 @@ import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -127,27 +122,8 @@ public class Hk416ItemRenderer extends GeoItemRenderer { ItemModelHelper.handleGunAttachments(bone, itemStack, name); - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2R(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2R(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, false, false); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/HomemadeShotgunItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/HomemadeShotgunItemRenderer.java index dfaaf7255..9d273ad73 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/HomemadeShotgunItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/HomemadeShotgunItemRenderer.java @@ -8,19 +8,14 @@ import com.atsuishio.superbwarfare.item.gun.shotgun.HomemadeShotgunItem; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -95,27 +90,8 @@ public class HomemadeShotgunItemRenderer extends GeoItemRenderer model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/HuntingRifleItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/HuntingRifleItemRenderer.java index 3625b97bd..734c24543 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/HuntingRifleItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/HuntingRifleItemRenderer.java @@ -8,19 +8,14 @@ import com.atsuishio.superbwarfare.item.gun.sniper.HuntingRifleItem; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -94,27 +89,8 @@ public class HuntingRifleItemRenderer extends GeoItemRenderer } } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/K98ItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/K98ItemRenderer.java index 864a7a35f..20d57ed4a 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/K98ItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/K98ItemRenderer.java @@ -8,19 +8,14 @@ import com.atsuishio.superbwarfare.item.gun.sniper.K98Item; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -94,27 +89,8 @@ public class K98ItemRenderer extends GeoItemRenderer { } } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/LungeMineRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/LungeMineRenderer.java index 62dbaca5b..05d8e59a5 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/LungeMineRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/LungeMineRenderer.java @@ -6,19 +6,14 @@ import com.atsuishio.superbwarfare.item.LungeMine; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -77,27 +72,8 @@ public class LungeMineRenderer extends GeoItemRenderer { var player = mc.player; if (player == null) return; - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M1911ItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M1911ItemRenderer.java index d4de53a0c..cc4090f80 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M1911ItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M1911ItemRenderer.java @@ -8,19 +8,14 @@ import com.atsuishio.superbwarfare.item.gun.handgun.M1911Item; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -94,27 +89,8 @@ public class M1911ItemRenderer extends GeoItemRenderer { } } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2R(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2R(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, false, false); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M4ItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M4ItemRenderer.java index b5c04d7a9..002e7304c 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M4ItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M4ItemRenderer.java @@ -11,19 +11,14 @@ import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -138,27 +133,8 @@ public class M4ItemRenderer extends GeoItemRenderer { ItemModelHelper.handleGunAttachments(bone, itemStack, name); - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2R(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2R(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, false, false); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M60ItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M60ItemRenderer.java index 7db99b9d5..4d1358681 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M60ItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M60ItemRenderer.java @@ -8,19 +8,14 @@ import com.atsuishio.superbwarfare.item.gun.machinegun.M60Item; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -94,27 +89,8 @@ public class M60ItemRenderer extends GeoItemRenderer { } } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M79ItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M79ItemRenderer.java index 05fe0d4be..37d040d31 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M79ItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M79ItemRenderer.java @@ -8,19 +8,14 @@ import com.atsuishio.superbwarfare.item.gun.launcher.M79Item; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -94,27 +89,8 @@ public class M79ItemRenderer extends GeoItemRenderer { } } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M870ItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M870ItemRenderer.java index 96d692d17..ac85e1b1d 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M870ItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M870ItemRenderer.java @@ -8,19 +8,14 @@ import com.atsuishio.superbwarfare.item.gun.shotgun.M870Item; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -94,27 +89,8 @@ public class M870ItemRenderer extends GeoItemRenderer { } } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M98bItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M98bItemRenderer.java index 4a80cae77..4c631bbe0 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M98bItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/M98bItemRenderer.java @@ -9,19 +9,14 @@ import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -103,27 +98,8 @@ public class M98bItemRenderer extends GeoItemRenderer { bone.setHidden(!NBTTool.getTag(itemStack).getBoolean("HoloHidden")); } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/MarlinItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/MarlinItemRenderer.java index 6efd84bbb..297cff1d8 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/MarlinItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/MarlinItemRenderer.java @@ -8,19 +8,14 @@ import com.atsuishio.superbwarfare.item.gun.rifle.MarlinItem; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -94,27 +89,8 @@ public class MarlinItemRenderer extends GeoItemRenderer { } } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/MinigunItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/MinigunItemRenderer.java index 7b031be4d..65295c864 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/MinigunItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/MinigunItemRenderer.java @@ -8,19 +8,14 @@ import com.atsuishio.superbwarfare.item.gun.machinegun.MinigunItem; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -96,27 +91,8 @@ public class MinigunItemRenderer extends GeoItemRenderer { } } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Mk14ItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Mk14ItemRenderer.java index deb584c46..b0751d71a 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Mk14ItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Mk14ItemRenderer.java @@ -11,19 +11,14 @@ import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -131,27 +126,8 @@ public class Mk14ItemRenderer extends GeoItemRenderer { ItemModelHelper.handleGunAttachments(bone, itemStack, name); - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/MosinNagantItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/MosinNagantItemRenderer.java index 592f40c13..052aef253 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/MosinNagantItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/MosinNagantItemRenderer.java @@ -9,19 +9,14 @@ import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -103,27 +98,8 @@ public class MosinNagantItemRenderer extends GeoItemRenderer { } } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Mp443ItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Mp443ItemRenderer.java index d216e583a..dcd22b800 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Mp443ItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Mp443ItemRenderer.java @@ -8,19 +8,14 @@ import com.atsuishio.superbwarfare.item.gun.handgun.Mp443Item; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -96,27 +91,8 @@ public class Mp443ItemRenderer extends GeoItemRenderer { } } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2R(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2R(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, false, false); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Ntw20Renderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Ntw20Renderer.java index bf8274895..25905630b 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Ntw20Renderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Ntw20Renderer.java @@ -11,19 +11,14 @@ import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -131,27 +126,8 @@ public class Ntw20Renderer extends GeoItemRenderer { ItemModelHelper.handleGunAttachments(bone, itemStack, name); - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2R(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2R(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, false, false); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Qbz95ItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Qbz95ItemRenderer.java index 7268a795e..7b09de31b 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Qbz95ItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/Qbz95ItemRenderer.java @@ -11,19 +11,14 @@ import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -139,27 +134,8 @@ public class Qbz95ItemRenderer extends GeoItemRenderer { ItemModelHelper.handleGunAttachments(bone, itemStack, name); - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/RpgItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/RpgItemRenderer.java index dee4c52c3..ce68c849c 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/RpgItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/RpgItemRenderer.java @@ -9,19 +9,14 @@ import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -97,27 +92,8 @@ public class RpgItemRenderer extends GeoItemRenderer { } } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2R(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2R(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, false, false); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/RpkItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/RpkItemRenderer.java index a3f300e43..61668503b 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/RpkItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/RpkItemRenderer.java @@ -9,19 +9,14 @@ import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -99,27 +94,8 @@ public class RpkItemRenderer extends GeoItemRenderer { } } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/SecondaryCataclysmRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/SecondaryCataclysmRenderer.java index ef84dc112..144a661c9 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/SecondaryCataclysmRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/SecondaryCataclysmRenderer.java @@ -8,19 +8,14 @@ import com.atsuishio.superbwarfare.item.gun.launcher.SecondaryCataclysm; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -94,27 +89,8 @@ public class SecondaryCataclysmRenderer extends GeoItemRenderer model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2R(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2R(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, false, false); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/SentinelItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/SentinelItemRenderer.java index 652be489b..e66ac28aa 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/SentinelItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/SentinelItemRenderer.java @@ -9,12 +9,8 @@ import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; @@ -22,7 +18,6 @@ import net.neoforged.neoforge.capabilities.Capabilities; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -109,27 +104,8 @@ public class SentinelItemRenderer extends GeoItemRenderer { bone.setHidden(!flag); } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/SksItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/SksItemRenderer.java index a7ff19a04..86c1e1997 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/SksItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/SksItemRenderer.java @@ -9,19 +9,14 @@ import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -99,27 +94,8 @@ public class SksItemRenderer extends GeoItemRenderer { } } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/SvdItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/SvdItemRenderer.java index 6d9566e75..f39a9f083 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/SvdItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/SvdItemRenderer.java @@ -11,19 +11,14 @@ import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -124,27 +119,8 @@ public class SvdItemRenderer extends GeoItemRenderer { ItemModelHelper.handleGunAttachments(bone, itemStack, name); - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2R(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2R(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, false, false); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/TaserItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/TaserItemRenderer.java index e6d8588e5..694880cc1 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/TaserItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/TaserItemRenderer.java @@ -7,19 +7,14 @@ import com.atsuishio.superbwarfare.item.gun.special.TaserItem; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -80,27 +75,8 @@ public class TaserItemRenderer extends GeoItemRenderer { ItemStack itemStack = player.getMainHandItem(); if (!itemStack.is(ModTags.Items.GUN)) return; - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone2R(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone2R(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, false, false); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/TracheliumItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/TracheliumItemRenderer.java index de1b815ae..2a5140183 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/TracheliumItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/TracheliumItemRenderer.java @@ -11,19 +11,14 @@ import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -141,27 +136,8 @@ public class TracheliumItemRenderer extends GeoItemRenderer { } } - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); } diff --git a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/VectorItemRenderer.java b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/VectorItemRenderer.java index b7b7182ef..cff796a9f 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/VectorItemRenderer.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/renderer/item/VectorItemRenderer.java @@ -11,19 +11,14 @@ import com.atsuishio.superbwarfare.tools.NBTTool; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; import net.minecraft.client.Minecraft; -import net.minecraft.client.model.PlayerModel; -import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.RenderType; -import net.minecraft.client.renderer.entity.player.PlayerRenderer; -import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.GeoBone; import software.bernie.geckolib.renderer.GeoItemRenderer; -import software.bernie.geckolib.util.RenderUtil; import java.util.HashSet; import java.util.Set; @@ -122,27 +117,8 @@ public class VectorItemRenderer extends GeoItemRenderer { ItemModelHelper.handleGunAttachments(bone, itemStack, name); - if (this.transformType.firstPerson() && renderingArms) { - PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); - PlayerModel model = playerRenderer.getModel(); - stack.pushPose(); - RenderUtil.translateMatrixToBone(stack, bone); - RenderUtil.translateToPivotPoint(stack, bone); - RenderUtil.rotateMatrixAroundBone(stack, bone); - RenderUtil.scaleMatrixForBone(stack, bone); - RenderUtil.translateAwayFromPivotPoint(stack, bone); - ResourceLocation loc = player.getSkin().texture(); - if (name.equals("Lefthand")) { - stack.translate(-1.0f * SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBone(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBone(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } else { - stack.translate(SCALE_RECIPROCAL, 2.0f * SCALE_RECIPROCAL, 0.0f); - AnimationHelper.renderPartOverBoneR(model.leftArm, bone, stack, this.currentBuffer.getBuffer(RenderType.entitySolid(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - AnimationHelper.renderPartOverBoneR(model.leftSleeve, bone, stack, this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)), packedLightIn, OverlayTexture.NO_OVERLAY); - } - this.currentBuffer.getBuffer(this.renderType); - stack.popPose(); + if (renderingArms) { + AnimationHelper.renderArms(mc, player, this.transformType, stack, name, bone, SCALE_RECIPROCAL, this.currentBuffer, type, packedLightIn, true, true); } super.renderRecursively(stack, animatable, bone, type, buffer, bufferIn, isReRender, partialTick, packedLightIn, packedOverlayIn, color); }