修复渲染导致的空tag问题

This commit is contained in:
17146 2024-12-29 21:43:22 +08:00
parent 2dee3af715
commit 59b95ff046
33 changed files with 694 additions and 622 deletions

View file

@ -1,14 +1,15 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.ItemModelHelper;
import com.atsuishio.superbwarfare.client.layer.AK12Layer; import com.atsuishio.superbwarfare.client.layer.AK12Layer;
import com.atsuishio.superbwarfare.client.model.item.AK12ItemModel; import com.atsuishio.superbwarfare.client.model.item.AK12ItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.rifle.AK12Item;
import com.atsuishio.superbwarfare.tools.GunsTool; import com.atsuishio.superbwarfare.tools.GunsTool;
import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer; import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.ItemModelHelper;
import com.atsuishio.superbwarfare.item.gun.rifle.AK12Item;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -29,6 +30,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class AK12ItemRenderer extends GeoItemRenderer<AK12Item> { public class AK12ItemRenderer extends GeoItemRenderer<AK12Item> {
public AK12ItemRenderer() { public AK12ItemRenderer() {
super(new AK12ItemModel()); super(new AK12ItemModel());
this.addRenderLayer(new AK12Layer(this)); this.addRenderLayer(new AK12Layer(this));
@ -83,6 +85,7 @@ public class AK12ItemRenderer extends GeoItemRenderer<AK12Item> {
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player != null) {
ItemStack itemStack = player.getMainHandItem(); ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("Cross1")) { if (name.equals("Cross1")) {
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden")

View file

@ -1,14 +1,15 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.atsuishio.superbwarfare.tools.GunsTool;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.ItemModelHelper; import com.atsuishio.superbwarfare.client.ItemModelHelper;
import com.atsuishio.superbwarfare.client.layer.AK47Layer; import com.atsuishio.superbwarfare.client.layer.AK47Layer;
import com.atsuishio.superbwarfare.client.model.item.AK47ItemModel; import com.atsuishio.superbwarfare.client.model.item.AK47ItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.rifle.AK47Item; import com.atsuishio.superbwarfare.item.gun.rifle.AK47Item;
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.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -29,6 +30,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class AK47ItemRenderer extends GeoItemRenderer<AK47Item> { public class AK47ItemRenderer extends GeoItemRenderer<AK47Item> {
public AK47ItemRenderer() { public AK47ItemRenderer() {
super(new AK47ItemModel()); super(new AK47ItemModel());
this.addRenderLayer(new AK47Layer(this)); this.addRenderLayer(new AK47Layer(this));
@ -83,6 +85,7 @@ public class AK47ItemRenderer extends GeoItemRenderer<AK47Item> {
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player != null) {
ItemStack itemStack = player.getMainHandItem(); ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("Cross1")) { if (name.equals("Cross1")) {
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden")

View file

@ -1,14 +1,15 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.atsuishio.superbwarfare.tools.GunsTool;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.ItemModelHelper; import com.atsuishio.superbwarfare.client.ItemModelHelper;
import com.atsuishio.superbwarfare.client.layer.Aa12Layer; import com.atsuishio.superbwarfare.client.layer.Aa12Layer;
import com.atsuishio.superbwarfare.client.model.item.Aa12ItemModel; import com.atsuishio.superbwarfare.client.model.item.Aa12ItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.shotgun.Aa12Item; import com.atsuishio.superbwarfare.item.gun.shotgun.Aa12Item;
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.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -29,6 +30,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class Aa12ItemRenderer extends GeoItemRenderer<Aa12Item> { public class Aa12ItemRenderer extends GeoItemRenderer<Aa12Item> {
public Aa12ItemRenderer() { public Aa12ItemRenderer() {
super(new Aa12ItemModel()); super(new Aa12ItemModel());
this.addRenderLayer(new Aa12Layer(this)); this.addRenderLayer(new Aa12Layer(this));
@ -83,6 +85,7 @@ public class Aa12ItemRenderer extends GeoItemRenderer<Aa12Item> {
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player != null) {
ItemStack itemStack = player.getMainHandItem(); ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("flare")) { if (name.equals("flare")) {
if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5 || GunsTool.getAttachmentType(itemStack, GunsTool.AttachmentType.BARREL) == 2) { if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5 || GunsTool.getAttachmentType(itemStack, GunsTool.AttachmentType.BARREL) == 2) {

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.AbekiriLayer; import com.atsuishio.superbwarfare.client.layer.AbekiriLayer;
import com.atsuishio.superbwarfare.client.model.item.AbekiriItemModel; import com.atsuishio.superbwarfare.client.model.item.AbekiriItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.shotgun.AbekiriItem; import com.atsuishio.superbwarfare.item.gun.shotgun.AbekiriItem;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class AbekiriItemRenderer extends GeoItemRenderer<AbekiriItem> { public class AbekiriItemRenderer extends GeoItemRenderer<AbekiriItem> {
public AbekiriItemRenderer() { public AbekiriItemRenderer() {
super(new AbekiriItemModel()); super(new AbekiriItemModel());
this.addRenderLayer(new AbekiriLayer(this)); this.addRenderLayer(new AbekiriLayer(this));
@ -80,6 +82,8 @@ public class AbekiriItemRenderer extends GeoItemRenderer<AbekiriItem> {
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player != null) {
ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("flare")) { if (name.equals("flare")) {
if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) { if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) {

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.BocekLayer; import com.atsuishio.superbwarfare.client.layer.BocekLayer;
import com.atsuishio.superbwarfare.client.model.item.BocekItemModel; import com.atsuishio.superbwarfare.client.model.item.BocekItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.special.BocekItem; import com.atsuishio.superbwarfare.item.gun.special.BocekItem;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class BocekItemRenderer extends GeoItemRenderer<BocekItem> { public class BocekItemRenderer extends GeoItemRenderer<BocekItem> {
public BocekItemRenderer() { public BocekItemRenderer() {
super(new BocekItemModel()); super(new BocekItemModel());
this.addRenderLayer(new BocekLayer(this)); this.addRenderLayer(new BocekLayer(this));
@ -78,35 +80,32 @@ public class BocekItemRenderer extends GeoItemRenderer<BocekItem> {
bone.setHidden(this.hiddenBones.contains(name)); bone.setHidden(this.hiddenBones.contains(name));
} }
Player player_ = mc.player; Player player = mc.player;
ItemStack itemStack = null; if (player == null) return;
if (player_ != null) {
itemStack = player_.getMainHandItem(); ItemStack itemStack = player.getMainHandItem();
} if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("holo")) { if (name.equals("holo")) {
if (player_ != null) {
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !ClientEventHandler.zoom); bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !ClientEventHandler.zoom);
} }
}
if (name.equals("arrow")) { if (name.equals("arrow")) {
bone.setHidden(itemStack != null && itemStack.getOrCreateTag().getInt("arrow_empty") > 0); bone.setHidden(itemStack.getOrCreateTag().getInt("arrow_empty") > 0);
} }
if (name.equals("jian")) { if (name.equals("jian")) {
bone.setHidden(itemStack != null && itemStack.getOrCreateTag().getInt("max_ammo") == 0); bone.setHidden(itemStack.getOrCreateTag().getInt("max_ammo") == 0);
} }
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer player = mc.player; AbstractClientPlayer localPlayer = mc.player;
if (player == null) { if (localPlayer == null) {
return; return;
} }
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(localPlayer);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel(); PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose(); stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone); RenderUtils.translateMatrixToBone(stack, bone);
@ -114,7 +113,7 @@ public class BocekItemRenderer extends GeoItemRenderer<BocekItem> {
RenderUtils.rotateMatrixAroundBone(stack, bone); RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone); RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone); RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation(); ResourceLocation loc = localPlayer.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc)); VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)); VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) { if (name.equals("Lefthand")) {

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.DevotionLayer; import com.atsuishio.superbwarfare.client.layer.DevotionLayer;
import com.atsuishio.superbwarfare.client.model.item.DevotionItemModel; import com.atsuishio.superbwarfare.client.model.item.DevotionItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.machinegun.DevotionItem; import com.atsuishio.superbwarfare.item.gun.machinegun.DevotionItem;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class DevotionItemRenderer extends GeoItemRenderer<DevotionItem> { public class DevotionItemRenderer extends GeoItemRenderer<DevotionItem> {
public DevotionItemRenderer() { public DevotionItemRenderer() {
super(new DevotionItemModel()); super(new DevotionItemModel());
this.addRenderLayer(new DevotionLayer(this)); this.addRenderLayer(new DevotionLayer(this));
@ -79,7 +81,10 @@ public class DevotionItemRenderer extends GeoItemRenderer<DevotionItem> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("flare")) { if (name.equals("flare")) {
if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) { if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) {
bone.setHidden(true); bone.setHidden(true);
@ -92,10 +97,8 @@ public class DevotionItemRenderer extends GeoItemRenderer<DevotionItem> {
} }
if (name.equals("holo")) { if (name.equals("holo")) {
ItemStack itemStack = player.getMainHandItem();
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !ClientEventHandler.zoom); bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !ClientEventHandler.zoom);
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.Glock17Layer; import com.atsuishio.superbwarfare.client.layer.Glock17Layer;
import com.atsuishio.superbwarfare.client.model.item.Glock17ItemModel; import com.atsuishio.superbwarfare.client.model.item.Glock17ItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.handgun.Glock17Item; 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.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class Glock17ItemRenderer extends GeoItemRenderer<Glock17Item> { public class Glock17ItemRenderer extends GeoItemRenderer<Glock17Item> {
public Glock17ItemRenderer() { public Glock17ItemRenderer() {
super(new Glock17ItemModel()); super(new Glock17ItemModel());
this.addRenderLayer(new Glock17Layer(this)); this.addRenderLayer(new Glock17Layer(this));
@ -79,7 +81,9 @@ public class Glock17ItemRenderer extends GeoItemRenderer<Glock17Item> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("flare")) { if (name.equals("flare")) {
if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) { if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) {
@ -91,7 +95,6 @@ public class Glock17ItemRenderer extends GeoItemRenderer<Glock17Item> {
bone.setRotZ((float) (0.5 * (Math.random() - 0.5))); bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} }
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.Glock18Layer; import com.atsuishio.superbwarfare.client.layer.Glock18Layer;
import com.atsuishio.superbwarfare.client.model.item.Glock18ItemModel; import com.atsuishio.superbwarfare.client.model.item.Glock18ItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.handgun.Glock18Item; 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.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class Glock18ItemRenderer extends GeoItemRenderer<Glock18Item> { public class Glock18ItemRenderer extends GeoItemRenderer<Glock18Item> {
public Glock18ItemRenderer() { public Glock18ItemRenderer() {
super(new Glock18ItemModel()); super(new Glock18ItemModel());
this.addRenderLayer(new Glock18Layer(this)); this.addRenderLayer(new Glock18Layer(this));
@ -79,7 +81,9 @@ public class Glock18ItemRenderer extends GeoItemRenderer<Glock18Item> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("flare")) { if (name.equals("flare")) {
if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) { if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) {
@ -91,7 +95,6 @@ public class Glock18ItemRenderer extends GeoItemRenderer<Glock18Item> {
bone.setRotZ((float) (0.5 * (Math.random() - 0.5))); bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} }
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,14 +1,15 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.atsuishio.superbwarfare.tools.GunsTool;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.ItemModelHelper; import com.atsuishio.superbwarfare.client.ItemModelHelper;
import com.atsuishio.superbwarfare.client.layer.Hk416Layer; import com.atsuishio.superbwarfare.client.layer.Hk416Layer;
import com.atsuishio.superbwarfare.client.model.item.Hk416ItemModel; import com.atsuishio.superbwarfare.client.model.item.Hk416ItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.rifle.Hk416Item; import com.atsuishio.superbwarfare.item.gun.rifle.Hk416Item;
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.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -29,6 +30,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class Hk416ItemRenderer extends GeoItemRenderer<Hk416Item> { public class Hk416ItemRenderer extends GeoItemRenderer<Hk416Item> {
public Hk416ItemRenderer() { public Hk416ItemRenderer() {
super(new Hk416ItemModel()); super(new Hk416ItemModel());
this.addRenderLayer(new Hk416Layer(this)); this.addRenderLayer(new Hk416Layer(this));
@ -81,8 +83,9 @@ public class Hk416ItemRenderer extends GeoItemRenderer<Hk416Item> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem(); ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("Cross1")) { if (name.equals("Cross1")) {
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden")
@ -125,8 +128,6 @@ public class Hk416ItemRenderer extends GeoItemRenderer<Hk416Item> {
ItemModelHelper.handleGunAttachments(bone, itemStack, name); ItemModelHelper.handleGunAttachments(bone, itemStack, name);
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.HuntingRifleLayer; import com.atsuishio.superbwarfare.client.layer.HuntingRifleLayer;
import com.atsuishio.superbwarfare.client.model.item.HuntingRifleItemModel; import com.atsuishio.superbwarfare.client.model.item.HuntingRifleItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.sniper.HuntingRifleItem; 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.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class HuntingRifleItemRenderer extends GeoItemRenderer<HuntingRifleItem> { public class HuntingRifleItemRenderer extends GeoItemRenderer<HuntingRifleItem> {
public HuntingRifleItemRenderer() { public HuntingRifleItemRenderer() {
super(new HuntingRifleItemModel()); super(new HuntingRifleItemModel());
this.addRenderLayer(new HuntingRifleLayer(this)); this.addRenderLayer(new HuntingRifleLayer(this));
@ -79,7 +81,9 @@ public class HuntingRifleItemRenderer extends GeoItemRenderer<HuntingRifleItem>
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("flare")) { if (name.equals("flare")) {
if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) { if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) {
@ -91,7 +95,6 @@ public class HuntingRifleItemRenderer extends GeoItemRenderer<HuntingRifleItem>
bone.setRotZ((float) (0.5 * (Math.random() - 0.5))); bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} }
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,13 +1,14 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.atsuishio.superbwarfare.item.gun.launcher.JavelinItem;
import com.atsuishio.superbwarfare.client.model.item.JavelinItemModel; import com.atsuishio.superbwarfare.client.model.item.JavelinItemModel;
import com.atsuishio.superbwarfare.item.gun.launcher.JavelinItem;
import net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.RenderType; import net.minecraft.client.renderer.RenderType;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
public class JavelinItemRenderer extends GeoItemRenderer<JavelinItem> { public class JavelinItemRenderer extends GeoItemRenderer<JavelinItem> {
public JavelinItemRenderer() { public JavelinItemRenderer() {
super(new JavelinItemModel()); super(new JavelinItemModel());
} }

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.K98Layer; import com.atsuishio.superbwarfare.client.layer.K98Layer;
import com.atsuishio.superbwarfare.client.model.item.K98ItemModel; import com.atsuishio.superbwarfare.client.model.item.K98ItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.sniper.K98Item; 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.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class K98ItemRenderer extends GeoItemRenderer<K98Item> { public class K98ItemRenderer extends GeoItemRenderer<K98Item> {
public K98ItemRenderer() { public K98ItemRenderer() {
super(new K98ItemModel()); super(new K98ItemModel());
this.addRenderLayer(new K98Layer(this)); this.addRenderLayer(new K98Layer(this));
@ -79,7 +81,9 @@ public class K98ItemRenderer extends GeoItemRenderer<K98Item> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("flare")) { if (name.equals("flare")) {
if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) { if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) {
@ -91,7 +95,6 @@ public class K98ItemRenderer extends GeoItemRenderer<K98Item> {
bone.setRotZ((float) (0.5 * (Math.random() - 0.5))); bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} }
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.M1911Layer; import com.atsuishio.superbwarfare.client.layer.M1911Layer;
import com.atsuishio.superbwarfare.client.model.item.M1911ItemModel; import com.atsuishio.superbwarfare.client.model.item.M1911ItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.handgun.M1911Item; 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.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class M1911ItemRenderer extends GeoItemRenderer<M1911Item> { public class M1911ItemRenderer extends GeoItemRenderer<M1911Item> {
public M1911ItemRenderer() { public M1911ItemRenderer() {
super(new M1911ItemModel()); super(new M1911ItemModel());
this.addRenderLayer(new M1911Layer(this)); this.addRenderLayer(new M1911Layer(this));
@ -79,7 +81,9 @@ public class M1911ItemRenderer extends GeoItemRenderer<M1911Item> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("flare")) { if (name.equals("flare")) {
if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) { if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) {
@ -91,7 +95,6 @@ public class M1911ItemRenderer extends GeoItemRenderer<M1911Item> {
bone.setRotZ((float) (0.5 * (Math.random() - 0.5))); bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} }
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,14 +1,15 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.atsuishio.superbwarfare.tools.GunsTool;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.ItemModelHelper; import com.atsuishio.superbwarfare.client.ItemModelHelper;
import com.atsuishio.superbwarfare.client.layer.M4Layer; import com.atsuishio.superbwarfare.client.layer.M4Layer;
import com.atsuishio.superbwarfare.client.model.item.M4ItemModel; import com.atsuishio.superbwarfare.client.model.item.M4ItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.rifle.M4Item; import com.atsuishio.superbwarfare.item.gun.rifle.M4Item;
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.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -29,6 +30,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class M4ItemRenderer extends GeoItemRenderer<M4Item> { public class M4ItemRenderer extends GeoItemRenderer<M4Item> {
public M4ItemRenderer() { public M4ItemRenderer() {
super(new M4ItemModel()); super(new M4ItemModel());
this.addRenderLayer(new M4Layer(this)); this.addRenderLayer(new M4Layer(this));
@ -81,8 +83,9 @@ public class M4ItemRenderer extends GeoItemRenderer<M4Item> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem(); ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("Cross1")) { if (name.equals("Cross1")) {
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden")
@ -130,15 +133,12 @@ public class M4ItemRenderer extends GeoItemRenderer<M4Item> {
} }
} }
if (name.equals("Sight")) { if (name.equals("Sight")) {
bone.setHidden(GunsTool.getAttachmentType(itemStack, GunsTool.AttachmentType.SCOPE) == 3); bone.setHidden(GunsTool.getAttachmentType(itemStack, GunsTool.AttachmentType.SCOPE) == 3);
} }
ItemModelHelper.handleGunAttachments(bone, itemStack, name); ItemModelHelper.handleGunAttachments(bone, itemStack, name);
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.M60Layer; import com.atsuishio.superbwarfare.client.layer.M60Layer;
import com.atsuishio.superbwarfare.client.model.item.M60ItemModel; import com.atsuishio.superbwarfare.client.model.item.M60ItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.machinegun.M60Item; 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.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class M60ItemRenderer extends GeoItemRenderer<M60Item> { public class M60ItemRenderer extends GeoItemRenderer<M60Item> {
public M60ItemRenderer() { public M60ItemRenderer() {
super(new M60ItemModel()); super(new M60ItemModel());
this.addRenderLayer(new M60Layer(this)); this.addRenderLayer(new M60Layer(this));
@ -79,7 +81,9 @@ public class M60ItemRenderer extends GeoItemRenderer<M60Item> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("flare")) { if (name.equals("flare")) {
if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) { if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) {
@ -91,7 +95,6 @@ public class M60ItemRenderer extends GeoItemRenderer<M60Item> {
bone.setRotZ((float) (0.5 * (Math.random() - 0.5))); bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} }
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.M79Layer; import com.atsuishio.superbwarfare.client.layer.M79Layer;
import com.atsuishio.superbwarfare.client.model.item.M79ItemModel; import com.atsuishio.superbwarfare.client.model.item.M79ItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.launcher.M79Item; 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.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class M79ItemRenderer extends GeoItemRenderer<M79Item> { public class M79ItemRenderer extends GeoItemRenderer<M79Item> {
public M79ItemRenderer() { public M79ItemRenderer() {
super(new M79ItemModel()); super(new M79ItemModel());
this.addRenderLayer(new M79Layer(this)); this.addRenderLayer(new M79Layer(this));
@ -79,7 +81,9 @@ public class M79ItemRenderer extends GeoItemRenderer<M79Item> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("flare")) { if (name.equals("flare")) {
if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) { if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) {
@ -91,7 +95,6 @@ public class M79ItemRenderer extends GeoItemRenderer<M79Item> {
bone.setRotZ((float) (0.5 * (Math.random() - 0.5))); bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} }
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.M870Layer; import com.atsuishio.superbwarfare.client.layer.M870Layer;
import com.atsuishio.superbwarfare.client.model.item.M870ItemModel; import com.atsuishio.superbwarfare.client.model.item.M870ItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.shotgun.M870Item; 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.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class M870ItemRenderer extends GeoItemRenderer<M870Item> { public class M870ItemRenderer extends GeoItemRenderer<M870Item> {
public M870ItemRenderer() { public M870ItemRenderer() {
super(new M870ItemModel()); super(new M870ItemModel());
this.addRenderLayer(new M870Layer(this)); this.addRenderLayer(new M870Layer(this));
@ -79,7 +81,9 @@ public class M870ItemRenderer extends GeoItemRenderer<M870Item> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("flare")) { if (name.equals("flare")) {
if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) { if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) {
@ -91,7 +95,6 @@ public class M870ItemRenderer extends GeoItemRenderer<M870Item> {
bone.setRotZ((float) (0.5 * (Math.random() - 0.5))); bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} }
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.M98bLayer; import com.atsuishio.superbwarfare.client.layer.M98bLayer;
import com.atsuishio.superbwarfare.client.model.item.M98bItemModel; import com.atsuishio.superbwarfare.client.model.item.M98bItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.sniper.M98bItem; import com.atsuishio.superbwarfare.item.gun.sniper.M98bItem;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class M98bItemRenderer extends GeoItemRenderer<M98bItem> { public class M98bItemRenderer extends GeoItemRenderer<M98bItem> {
public M98bItemRenderer() { public M98bItemRenderer() {
super(new M98bItemModel()); super(new M98bItemModel());
this.addRenderLayer(new M98bLayer(this)); this.addRenderLayer(new M98bLayer(this));
@ -79,8 +81,9 @@ public class M98bItemRenderer extends GeoItemRenderer<M98bItem> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem(); ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("flare")) { if (name.equals("flare")) {
if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) { if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) {
@ -100,7 +103,6 @@ public class M98bItemRenderer extends GeoItemRenderer<M98bItem> {
if (name.equals("qiang")) { if (name.equals("qiang")) {
bone.setHidden(!itemStack.getOrCreateTag().getBoolean("HoloHidden")); bone.setHidden(!itemStack.getOrCreateTag().getBoolean("HoloHidden"));
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.MarlinLayer; import com.atsuishio.superbwarfare.client.layer.MarlinLayer;
import com.atsuishio.superbwarfare.client.model.item.MarlinItemModel; import com.atsuishio.superbwarfare.client.model.item.MarlinItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.rifle.MarlinItem; 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.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class MarlinItemRenderer extends GeoItemRenderer<MarlinItem> { public class MarlinItemRenderer extends GeoItemRenderer<MarlinItem> {
public MarlinItemRenderer() { public MarlinItemRenderer() {
super(new MarlinItemModel()); super(new MarlinItemModel());
this.addRenderLayer(new MarlinLayer(this)); this.addRenderLayer(new MarlinLayer(this));
@ -79,7 +81,9 @@ public class MarlinItemRenderer extends GeoItemRenderer<MarlinItem> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("flare")) { if (name.equals("flare")) {
if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) { if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) {
@ -91,7 +95,6 @@ public class MarlinItemRenderer extends GeoItemRenderer<MarlinItem> {
bone.setRotZ((float) (0.5 * (Math.random() - 0.5))); bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} }
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,13 +1,14 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.MinigunHeatLayer; import com.atsuishio.superbwarfare.client.layer.MinigunHeatLayer;
import com.atsuishio.superbwarfare.client.layer.MinigunLayer; import com.atsuishio.superbwarfare.client.layer.MinigunLayer;
import com.atsuishio.superbwarfare.client.model.item.MinigunItemModel; import com.atsuishio.superbwarfare.client.model.item.MinigunItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.machinegun.MinigunItem; 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.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -28,6 +29,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class MinigunItemRenderer extends GeoItemRenderer<MinigunItem> { public class MinigunItemRenderer extends GeoItemRenderer<MinigunItem> {
public MinigunItemRenderer() { public MinigunItemRenderer() {
super(new MinigunItemModel()); super(new MinigunItemModel());
this.addRenderLayer(new MinigunLayer(this)); this.addRenderLayer(new MinigunLayer(this));
@ -81,7 +83,10 @@ public class MinigunItemRenderer extends GeoItemRenderer<MinigunItem> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("flare")) { if (name.equals("flare")) {
if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) { if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) {
bone.setHidden(true); bone.setHidden(true);
@ -92,7 +97,6 @@ public class MinigunItemRenderer extends GeoItemRenderer<MinigunItem> {
bone.setRotZ((float) (0.5 * (Math.random() - 0.5))); bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} }
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -5,6 +5,7 @@ import com.atsuishio.superbwarfare.client.ItemModelHelper;
import com.atsuishio.superbwarfare.client.layer.Mk14Layer; import com.atsuishio.superbwarfare.client.layer.Mk14Layer;
import com.atsuishio.superbwarfare.client.model.item.Mk14ItemModel; import com.atsuishio.superbwarfare.client.model.item.Mk14ItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.rifle.Mk14Item; import com.atsuishio.superbwarfare.item.gun.rifle.Mk14Item;
import com.atsuishio.superbwarfare.tools.GunsTool; import com.atsuishio.superbwarfare.tools.GunsTool;
import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.PoseStack;
@ -29,6 +30,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class Mk14ItemRenderer extends GeoItemRenderer<Mk14Item> { public class Mk14ItemRenderer extends GeoItemRenderer<Mk14Item> {
public Mk14ItemRenderer() { public Mk14ItemRenderer() {
super(new Mk14ItemModel()); super(new Mk14ItemModel());
this.addRenderLayer(new Mk14Layer(this)); this.addRenderLayer(new Mk14Layer(this));
@ -46,7 +48,6 @@ public class Mk14ItemRenderer extends GeoItemRenderer<Mk14Item> {
public ItemDisplayContext transformType; public ItemDisplayContext transformType;
protected Mk14Item animatable; protected Mk14Item animatable;
private final Set<String> hiddenBones = new HashSet<>(); private final Set<String> hiddenBones = new HashSet<>();
private final Set<String> suppressedBones = new HashSet<>();
@Override @Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) { public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
@ -82,8 +83,9 @@ public class Mk14ItemRenderer extends GeoItemRenderer<Mk14Item> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem(); ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("qiaojia")) { if (name.equals("qiaojia")) {
bone.setHidden(GunsTool.getAttachmentType(itemStack, GunsTool.AttachmentType.SCOPE) == 0); bone.setHidden(GunsTool.getAttachmentType(itemStack, GunsTool.AttachmentType.SCOPE) == 0);
@ -130,8 +132,6 @@ public class Mk14ItemRenderer extends GeoItemRenderer<Mk14Item> {
ItemModelHelper.handleGunAttachments(bone, itemStack, name); ItemModelHelper.handleGunAttachments(bone, itemStack, name);
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.atsuishio.superbwarfare.item.gun.sniper.MosinNagantItem;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.MosinNagantLayer; import com.atsuishio.superbwarfare.client.layer.MosinNagantLayer;
import com.atsuishio.superbwarfare.client.model.item.MosinNagantItemModel; import com.atsuishio.superbwarfare.client.model.item.MosinNagantItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.sniper.MosinNagantItem;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class MosinNagantItemRenderer extends GeoItemRenderer<MosinNagantItem> { public class MosinNagantItemRenderer extends GeoItemRenderer<MosinNagantItem> {
public MosinNagantItemRenderer() { public MosinNagantItemRenderer() {
super(new MosinNagantItemModel()); super(new MosinNagantItemModel());
this.addRenderLayer(new MosinNagantLayer(this)); this.addRenderLayer(new MosinNagantLayer(this));
@ -79,8 +81,9 @@ public class MosinNagantItemRenderer extends GeoItemRenderer<MosinNagantItem> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem(); ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("rex")) { if (name.equals("rex")) {
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !ClientEventHandler.zoom); bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !ClientEventHandler.zoom);
@ -100,7 +103,6 @@ public class MosinNagantItemRenderer extends GeoItemRenderer<MosinNagantItem> {
bone.setRotZ((float) (0.5 * (Math.random() - 0.5))); bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} }
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.Ntw20Layer; import com.atsuishio.superbwarfare.client.layer.Ntw20Layer;
import com.atsuishio.superbwarfare.client.model.item.Ntw20Model; import com.atsuishio.superbwarfare.client.model.item.Ntw20Model;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.sniper.Ntw20Item; import com.atsuishio.superbwarfare.item.gun.sniper.Ntw20Item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class Ntw20Renderer extends GeoItemRenderer<Ntw20Item> { public class Ntw20Renderer extends GeoItemRenderer<Ntw20Item> {
public Ntw20Renderer() { public Ntw20Renderer() {
super(new Ntw20Model()); super(new Ntw20Model());
this.addRenderLayer(new Ntw20Layer(this)); this.addRenderLayer(new Ntw20Layer(this));
@ -44,7 +46,6 @@ public class Ntw20Renderer extends GeoItemRenderer<Ntw20Item> {
public ItemDisplayContext transformType; public ItemDisplayContext transformType;
protected Ntw20Item animatable; protected Ntw20Item animatable;
private final Set<String> hiddenBones = new HashSet<>(); private final Set<String> hiddenBones = new HashSet<>();
private final Set<String> suppressedBones = new HashSet<>();
@Override @Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) { public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
@ -80,8 +81,9 @@ public class Ntw20Renderer extends GeoItemRenderer<Ntw20Item> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem(); ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("rex")) { if (name.equals("rex")) {
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !ClientEventHandler.zoom); bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !ClientEventHandler.zoom);
@ -101,7 +103,6 @@ public class Ntw20Renderer extends GeoItemRenderer<Ntw20Item> {
bone.setRotZ((float) (0.5 * (Math.random() - 0.5))); bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} }
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,14 +1,15 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.atsuishio.superbwarfare.tools.GunsTool;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.ItemModelHelper; import com.atsuishio.superbwarfare.client.ItemModelHelper;
import com.atsuishio.superbwarfare.client.layer.Qbz95Layer; import com.atsuishio.superbwarfare.client.layer.Qbz95Layer;
import com.atsuishio.superbwarfare.client.model.item.Qbz95ItemModel; import com.atsuishio.superbwarfare.client.model.item.Qbz95ItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.rifle.Qbz95Item; import com.atsuishio.superbwarfare.item.gun.rifle.Qbz95Item;
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.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -29,6 +30,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class Qbz95ItemRenderer extends GeoItemRenderer<Qbz95Item> { public class Qbz95ItemRenderer extends GeoItemRenderer<Qbz95Item> {
public Qbz95ItemRenderer() { public Qbz95ItemRenderer() {
super(new Qbz95ItemModel()); super(new Qbz95ItemModel());
this.addRenderLayer(new Qbz95Layer(this)); this.addRenderLayer(new Qbz95Layer(this));
@ -80,10 +82,10 @@ public class Qbz95ItemRenderer extends GeoItemRenderer<Qbz95Item> {
bone.setHidden(this.hiddenBones.contains(name)); bone.setHidden(this.hiddenBones.contains(name));
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem(); ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("Cross1")) { if (name.equals("Cross1")) {
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden")
@ -138,8 +140,6 @@ public class Qbz95ItemRenderer extends GeoItemRenderer<Qbz95Item> {
ItemModelHelper.handleGunAttachments(bone, itemStack, name); ItemModelHelper.handleGunAttachments(bone, itemStack, name);
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,11 +1,12 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.atsuishio.superbwarfare.item.common.ammo.Rocket;
import com.atsuishio.superbwarfare.client.model.item.RocketItemModel; import com.atsuishio.superbwarfare.client.model.item.RocketItemModel;
import com.atsuishio.superbwarfare.item.common.ammo.Rocket;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.renderer.GeoItemRenderer;
public class RocketItemRenderer extends GeoItemRenderer<Rocket> { public class RocketItemRenderer extends GeoItemRenderer<Rocket> {
public RocketItemRenderer() { public RocketItemRenderer() {
super(new RocketItemModel()); super(new RocketItemModel());
} }

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.RpgLayer; import com.atsuishio.superbwarfare.client.layer.RpgLayer;
import com.atsuishio.superbwarfare.client.model.item.RpgItemModel; import com.atsuishio.superbwarfare.client.model.item.RpgItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.launcher.RpgItem; import com.atsuishio.superbwarfare.item.gun.launcher.RpgItem;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class RpgItemRenderer extends GeoItemRenderer<RpgItem> { public class RpgItemRenderer extends GeoItemRenderer<RpgItem> {
public RpgItemRenderer() { public RpgItemRenderer() {
super(new RpgItemModel()); super(new RpgItemModel());
this.addRenderLayer(new RpgLayer(this)); this.addRenderLayer(new RpgLayer(this));
@ -79,9 +81,9 @@ public class RpgItemRenderer extends GeoItemRenderer<RpgItem> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem(); ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("Rockets")) { if (name.equals("Rockets")) {
bone.setHidden(itemStack.getOrCreateTag().getBoolean("empty")); bone.setHidden(itemStack.getOrCreateTag().getBoolean("empty"));
@ -97,7 +99,6 @@ public class RpgItemRenderer extends GeoItemRenderer<RpgItem> {
bone.setRotZ((float) (0.5 * (Math.random() - 0.5))); bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} }
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.RpkLayer; import com.atsuishio.superbwarfare.client.layer.RpkLayer;
import com.atsuishio.superbwarfare.client.model.item.RpkItemModel; import com.atsuishio.superbwarfare.client.model.item.RpkItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.machinegun.RpkItem; import com.atsuishio.superbwarfare.item.gun.machinegun.RpkItem;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class RpkItemRenderer extends GeoItemRenderer<RpkItem> { public class RpkItemRenderer extends GeoItemRenderer<RpkItem> {
public RpkItemRenderer() { public RpkItemRenderer() {
super(new RpkItemModel()); super(new RpkItemModel());
this.addRenderLayer(new RpkLayer(this)); this.addRenderLayer(new RpkLayer(this));
@ -79,8 +81,9 @@ public class RpkItemRenderer extends GeoItemRenderer<RpkItem> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem(); ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("holo")) { if (name.equals("holo")) {
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !ClientEventHandler.zoom); bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !ClientEventHandler.zoom);
@ -96,7 +99,6 @@ public class RpkItemRenderer extends GeoItemRenderer<RpkItem> {
bone.setRotZ((float) (0.5 * (Math.random() - 0.5))); bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} }
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.SentinelLayer; import com.atsuishio.superbwarfare.client.layer.SentinelLayer;
import com.atsuishio.superbwarfare.client.model.item.SentinelItemModel; import com.atsuishio.superbwarfare.client.model.item.SentinelItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.sniper.SentinelItem; import com.atsuishio.superbwarfare.item.gun.sniper.SentinelItem;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -29,6 +30,7 @@ import java.util.Set;
import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicBoolean;
public class SentinelItemRenderer extends GeoItemRenderer<SentinelItem> { public class SentinelItemRenderer extends GeoItemRenderer<SentinelItem> {
public SentinelItemRenderer() { public SentinelItemRenderer() {
super(new SentinelItemModel()); super(new SentinelItemModel());
this.addRenderLayer(new SentinelLayer(this)); this.addRenderLayer(new SentinelLayer(this));
@ -80,10 +82,10 @@ public class SentinelItemRenderer extends GeoItemRenderer<SentinelItem> {
bone.setHidden(this.hiddenBones.contains(name)); bone.setHidden(this.hiddenBones.contains(name));
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem(); ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("flare")) { if (name.equals("flare")) {
if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) { if (ClientEventHandler.firePosTimer == 0 || ClientEventHandler.firePosTimer > 0.5) {
@ -108,7 +110,6 @@ public class SentinelItemRenderer extends GeoItemRenderer<SentinelItem> {
if (name.equals("charge")) { if (name.equals("charge")) {
bone.setHidden(!flag.get()); bone.setHidden(!flag.get());
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.SksLayer; import com.atsuishio.superbwarfare.client.layer.SksLayer;
import com.atsuishio.superbwarfare.client.model.item.SksItemModel; import com.atsuishio.superbwarfare.client.model.item.SksItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.rifle.SksItem; import com.atsuishio.superbwarfare.item.gun.rifle.SksItem;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class SksItemRenderer extends GeoItemRenderer<SksItem> { public class SksItemRenderer extends GeoItemRenderer<SksItem> {
public SksItemRenderer() { public SksItemRenderer() {
super(new SksItemModel()); super(new SksItemModel());
this.addRenderLayer(new SksLayer(this)); this.addRenderLayer(new SksLayer(this));
@ -79,8 +81,9 @@ public class SksItemRenderer extends GeoItemRenderer<SksItem> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem(); ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("holo")) { if (name.equals("holo")) {
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !ClientEventHandler.zoom); bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !ClientEventHandler.zoom);
@ -96,7 +99,6 @@ public class SksItemRenderer extends GeoItemRenderer<SksItem> {
bone.setRotZ((float) (0.5 * (Math.random() - 0.5))); bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} }
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,12 +1,13 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.layer.SvdLayer; import com.atsuishio.superbwarfare.client.layer.SvdLayer;
import com.atsuishio.superbwarfare.client.model.item.SvdItemModel; import com.atsuishio.superbwarfare.client.model.item.SvdItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.sniper.SvdItem; import com.atsuishio.superbwarfare.item.gun.sniper.SvdItem;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -27,6 +28,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class SvdItemRenderer extends GeoItemRenderer<SvdItem> { public class SvdItemRenderer extends GeoItemRenderer<SvdItem> {
public SvdItemRenderer() { public SvdItemRenderer() {
super(new SvdItemModel()); super(new SvdItemModel());
this.addRenderLayer(new SvdLayer(this)); this.addRenderLayer(new SvdLayer(this));
@ -44,7 +46,6 @@ public class SvdItemRenderer extends GeoItemRenderer<SvdItem> {
public ItemDisplayContext transformType; public ItemDisplayContext transformType;
protected SvdItem animatable; protected SvdItem animatable;
private final Set<String> hiddenBones = new HashSet<>(); private final Set<String> hiddenBones = new HashSet<>();
private final Set<String> suppressedBones = new HashSet<>();
@Override @Override
public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) { public void renderByItem(ItemStack stack, ItemDisplayContext transformType, PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int p_239207_6_) {
@ -80,8 +81,9 @@ public class SvdItemRenderer extends GeoItemRenderer<SvdItem> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem(); ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("holo")) { if (name.equals("holo")) {
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !ClientEventHandler.zoom); bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !ClientEventHandler.zoom);
@ -109,7 +111,6 @@ public class SvdItemRenderer extends GeoItemRenderer<SvdItem> {
bone.setRotZ((float) (0.5 * (Math.random() - 0.5))); bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} }
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -2,6 +2,7 @@ package com.atsuishio.superbwarfare.client.renderer.item;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.model.item.TaserItemModel; import com.atsuishio.superbwarfare.client.model.item.TaserItemModel;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.special.TaserItem; import com.atsuishio.superbwarfare.item.gun.special.TaserItem;
import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer; import com.mojang.blaze3d.vertex.VertexConsumer;
@ -13,6 +14,7 @@ import net.minecraft.client.renderer.RenderType;
import net.minecraft.client.renderer.entity.player.PlayerRenderer; import net.minecraft.client.renderer.entity.player.PlayerRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture; import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemDisplayContext;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import software.bernie.geckolib.cache.object.BakedGeoModel; import software.bernie.geckolib.cache.object.BakedGeoModel;
@ -24,6 +26,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class TaserItemRenderer extends GeoItemRenderer<TaserItem> { public class TaserItemRenderer extends GeoItemRenderer<TaserItem> {
public TaserItemRenderer() { public TaserItemRenderer() {
super(new TaserItemModel()); super(new TaserItemModel());
} }
@ -74,14 +77,19 @@ public class TaserItemRenderer extends GeoItemRenderer<TaserItem> {
bone.setHidden(this.hiddenBones.contains(name)); bone.setHidden(this.hiddenBones.contains(name));
} }
if (this.transformType.firstPerson() && renderingArms) { Player player = mc.player;
AbstractClientPlayer player = mc.player; if (player == null) return;
ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (player == null) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player;
if (localPlayer == null) {
return; return;
} }
PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(player); PlayerRenderer playerRenderer = (PlayerRenderer) mc.getEntityRenderDispatcher().getRenderer(localPlayer);
PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel(); PlayerModel<AbstractClientPlayer> model = playerRenderer.getModel();
stack.pushPose(); stack.pushPose();
RenderUtils.translateMatrixToBone(stack, bone); RenderUtils.translateMatrixToBone(stack, bone);
@ -89,7 +97,7 @@ public class TaserItemRenderer extends GeoItemRenderer<TaserItem> {
RenderUtils.rotateMatrixAroundBone(stack, bone); RenderUtils.rotateMatrixAroundBone(stack, bone);
RenderUtils.scaleMatrixForBone(stack, bone); RenderUtils.scaleMatrixForBone(stack, bone);
RenderUtils.translateAwayFromPivotPoint(stack, bone); RenderUtils.translateAwayFromPivotPoint(stack, bone);
ResourceLocation loc = player.getSkinTextureLocation(); ResourceLocation loc = localPlayer.getSkinTextureLocation();
VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc)); VertexConsumer armBuilder = this.currentBuffer.getBuffer(RenderType.entitySolid(loc));
VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc)); VertexConsumer sleeveBuilder = this.currentBuffer.getBuffer(RenderType.entityTranslucent(loc));
if (name.equals("Lefthand")) { if (name.equals("Lefthand")) {

View file

@ -1,14 +1,15 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.atsuishio.superbwarfare.tools.GunsTool;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.ItemModelHelper; import com.atsuishio.superbwarfare.client.ItemModelHelper;
import com.atsuishio.superbwarfare.client.layer.TracheliumLayer; import com.atsuishio.superbwarfare.client.layer.TracheliumLayer;
import com.atsuishio.superbwarfare.client.model.item.TracheliumItemModel; import com.atsuishio.superbwarfare.client.model.item.TracheliumItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.handgun.Trachelium; import com.atsuishio.superbwarfare.item.gun.handgun.Trachelium;
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.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -29,6 +30,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class TracheliumItemRenderer extends GeoItemRenderer<Trachelium> { public class TracheliumItemRenderer extends GeoItemRenderer<Trachelium> {
public TracheliumItemRenderer() { public TracheliumItemRenderer() {
super(new TracheliumItemModel()); super(new TracheliumItemModel());
this.addRenderLayer(new TracheliumLayer(this)); this.addRenderLayer(new TracheliumLayer(this));
@ -81,8 +83,9 @@ public class TracheliumItemRenderer extends GeoItemRenderer<Trachelium> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem(); ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("humu")) { if (name.equals("humu")) {
bone.setHidden(GunsTool.getAttachmentType(itemStack, GunsTool.AttachmentType.SCOPE) == 0 && GunsTool.getAttachmentType(itemStack, GunsTool.AttachmentType.GRIP) == 0); bone.setHidden(GunsTool.getAttachmentType(itemStack, GunsTool.AttachmentType.SCOPE) == 0 && GunsTool.getAttachmentType(itemStack, GunsTool.AttachmentType.GRIP) == 0);
@ -136,7 +139,6 @@ public class TracheliumItemRenderer extends GeoItemRenderer<Trachelium> {
bone.setRotZ((float) (0.5 * (Math.random() - 0.5))); bone.setRotZ((float) (0.5 * (Math.random() - 0.5)));
} }
} }
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;

View file

@ -1,14 +1,15 @@
package com.atsuishio.superbwarfare.client.renderer.item; package com.atsuishio.superbwarfare.client.renderer.item;
import com.atsuishio.superbwarfare.tools.GunsTool;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.atsuishio.superbwarfare.client.AnimationHelper; import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.ItemModelHelper; import com.atsuishio.superbwarfare.client.ItemModelHelper;
import com.atsuishio.superbwarfare.client.layer.VectorLayer; import com.atsuishio.superbwarfare.client.layer.VectorLayer;
import com.atsuishio.superbwarfare.client.model.item.VectorItemModel; import com.atsuishio.superbwarfare.client.model.item.VectorItemModel;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.smg.VectorItem; import com.atsuishio.superbwarfare.item.gun.smg.VectorItem;
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.Minecraft;
import net.minecraft.client.model.PlayerModel; import net.minecraft.client.model.PlayerModel;
import net.minecraft.client.player.AbstractClientPlayer; import net.minecraft.client.player.AbstractClientPlayer;
@ -29,6 +30,7 @@ import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class VectorItemRenderer extends GeoItemRenderer<VectorItem> { public class VectorItemRenderer extends GeoItemRenderer<VectorItem> {
public VectorItemRenderer() { public VectorItemRenderer() {
super(new VectorItemModel()); super(new VectorItemModel());
this.addRenderLayer(new VectorLayer(this)); this.addRenderLayer(new VectorLayer(this));
@ -81,8 +83,9 @@ public class VectorItemRenderer extends GeoItemRenderer<VectorItem> {
} }
Player player = mc.player; Player player = mc.player;
if (player != null) { if (player == null) return;
ItemStack itemStack = player.getMainHandItem(); ItemStack itemStack = player.getMainHandItem();
if (!itemStack.is(ModTags.Items.GUN)) return;
if (name.equals("Cross1")) { if (name.equals("Cross1")) {
bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden")
@ -113,8 +116,6 @@ public class VectorItemRenderer extends GeoItemRenderer<VectorItem> {
ItemModelHelper.handleGunAttachments(bone, itemStack, name); ItemModelHelper.handleGunAttachments(bone, itemStack, name);
}
if (this.transformType.firstPerson() && renderingArms) { if (this.transformType.firstPerson() && renderingArms) {
AbstractClientPlayer localPlayer = mc.player; AbstractClientPlayer localPlayer = mc.player;