提取renderArms方法

This commit is contained in:
Light_Quanta 2025-04-02 04:34:39 +08:00
parent de72843df5
commit 10024c3d72
No known key found for this signature in database
GPG key ID: 11A39A1B8C890959
35 changed files with 127 additions and 884 deletions

View file

@ -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<AbstractClientPlayer> 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();
}
}
}

View file

@ -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<AK12Item> {
ItemModelHelper.handleGunAttachments(bone, itemStack, name);
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<AK47Item> {
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<Aa12Item> {
ItemModelHelper.handleGunAttachments(bone, itemStack, name);
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<BocekItem> {
bone.setHidden(GunsTool.getGunIntTag(tag, "MaxAmmo") == 0);
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<DevotionItem> {
bone.setHidden(NBTTool.getTag(itemStack).getBoolean("HoloHidden") || !ClientEventHandler.zoom);
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<Glock17Item> {
}
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<Glock18Item> {
}
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<Hk416Item> {
ItemModelHelper.handleGunAttachments(bone, itemStack, name);
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<HomemadeShotgun
}
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<HuntingRifleItem>
}
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<K98Item> {
}
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<LungeMine> {
var player = mc.player;
if (player == null) return;
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<M1911Item> {
}
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<M4Item> {
ItemModelHelper.handleGunAttachments(bone, itemStack, name);
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<M60Item> {
}
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<M79Item> {
}
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<M870Item> {
}
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<M98bItem> {
bone.setHidden(!NBTTool.getTag(itemStack).getBoolean("HoloHidden"));
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<MarlinItem> {
}
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<MinigunItem> {
}
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<Mk14Item> {
ItemModelHelper.handleGunAttachments(bone, itemStack, name);
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<MosinNagantItem> {
}
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<Mp443Item> {
}
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<Ntw20Item> {
ItemModelHelper.handleGunAttachments(bone, itemStack, name);
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<Qbz95Item> {
ItemModelHelper.handleGunAttachments(bone, itemStack, name);
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<RpgItem> {
}
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<RpkItem> {
}
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<SecondaryCatacly
}
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<SentinelItem> {
bone.setHidden(!flag);
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<SksItem> {
}
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<SvdItem> {
ItemModelHelper.handleGunAttachments(bone, itemStack, name);
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<TaserItem> {
ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<Trachelium> {
}
}
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}

View file

@ -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<VectorItem> {
ItemModelHelper.handleGunAttachments(bone, itemStack, name);
if (this.transformType.firstPerson() && renderingArms) {
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player);
PlayerModel<AbstractClientPlayer> 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);
}