From b2fa32297c9e8dcac00ae250b1904e91b092a512 Mon Sep 17 00:00:00 2001 From: Atsuihsio <842960157@qq.com> Date: Fri, 16 Aug 2024 21:55:22 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=84=8F=E5=A4=96=E7=9A=84?= =?UTF-8?q?=E5=9B=BE=E5=B1=82=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../client/model/item/MinigunItemModel.java | 18 --------------- .../renderer/item/AK47ItemRenderer.java | 5 ++++- .../renderer/item/BocekItemRenderer.java | 5 ++++- .../renderer/item/DevotionItemRenderer.java | 5 ++++- .../renderer/item/Hk416ItemRenderer.java | 5 ++++- .../renderer/item/M98bItemRenderer.java | 3 ++- .../renderer/item/MinigunItemRenderer.java | 22 +++++++++++++++++++ .../renderer/item/Qbz95ItemRenderer.java | 5 ++++- 8 files changed, 44 insertions(+), 24 deletions(-) diff --git a/src/main/java/net/mcreator/superbwarfare/client/model/item/MinigunItemModel.java b/src/main/java/net/mcreator/superbwarfare/client/model/item/MinigunItemModel.java index 8d088be0f..2f6234e48 100644 --- a/src/main/java/net/mcreator/superbwarfare/client/model/item/MinigunItemModel.java +++ b/src/main/java/net/mcreator/superbwarfare/client/model/item/MinigunItemModel.java @@ -64,24 +64,6 @@ public class MinigunItemModel extends GeoModel { shen.setRotZ(-0.02f * (float) (fp + 1.3 * fr)); shen.setPosX(0.5f * (float) fr * (float) ((player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables())).recoilHorizon * fp)); - if (stack.getOrCreateTag().getInt("fire_animation") > 0) { - flare.setScaleZ(1); - light.setScaleX(1); - light.setScaleY(1); - light.setScaleZ(1); - flare.setScaleX((float) (1 + 0.5 * (Math.random() - 0.5))); - flare.setScaleY((float) (1 + 0.5 * (Math.random() - 0.5))); - flare.setRotZ((float) (0.5 * (Math.random() - 0.5))); - } else { - flare.setScaleX(0); - flare.setScaleY(0); - flare.setScaleZ(0); - light.setScaleX(0); - light.setScaleY(0); - light.setScaleZ(0); - - } - CoreGeoBone root = getAnimationProcessor().getBone("root"); float PosX = (float) player.getPersistentData().getDouble("gun_move_posX"); diff --git a/src/main/java/net/mcreator/superbwarfare/client/renderer/item/AK47ItemRenderer.java b/src/main/java/net/mcreator/superbwarfare/client/renderer/item/AK47ItemRenderer.java index ef6e630c5..ef07a2368 100644 --- a/src/main/java/net/mcreator/superbwarfare/client/renderer/item/AK47ItemRenderer.java +++ b/src/main/java/net/mcreator/superbwarfare/client/renderer/item/AK47ItemRenderer.java @@ -5,6 +5,7 @@ import com.mojang.blaze3d.vertex.VertexConsumer; import net.mcreator.superbwarfare.client.layer.AK47Layer; import net.mcreator.superbwarfare.client.model.item.AK47ItemModel; import net.mcreator.superbwarfare.item.gun.AK47Item; +import net.mcreator.superbwarfare.network.ModVariables; import net.mcreator.superbwarfare.tools.AnimUtils; import net.minecraft.client.Minecraft; import net.minecraft.client.model.PlayerModel; @@ -99,7 +100,9 @@ public class AK47ItemRenderer extends GeoItemRenderer { if (player != null) { itemStack = player.getMainHandItem(); } - bone.setHidden(itemStack != null && itemStack.getOrCreateTag().getBoolean("HoloHidden")); + if (player != null) { + bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming); + } } diff --git a/src/main/java/net/mcreator/superbwarfare/client/renderer/item/BocekItemRenderer.java b/src/main/java/net/mcreator/superbwarfare/client/renderer/item/BocekItemRenderer.java index a1c6324da..d0a223758 100644 --- a/src/main/java/net/mcreator/superbwarfare/client/renderer/item/BocekItemRenderer.java +++ b/src/main/java/net/mcreator/superbwarfare/client/renderer/item/BocekItemRenderer.java @@ -5,6 +5,7 @@ import com.mojang.blaze3d.vertex.VertexConsumer; import net.mcreator.superbwarfare.client.layer.BocekLayer; import net.mcreator.superbwarfare.client.model.item.BocekItemModel; import net.mcreator.superbwarfare.item.gun.BocekItem; +import net.mcreator.superbwarfare.network.ModVariables; import net.mcreator.superbwarfare.tools.AnimUtils; import net.minecraft.client.Minecraft; import net.minecraft.client.model.PlayerModel; @@ -84,7 +85,9 @@ public class BocekItemRenderer extends GeoItemRenderer { } if (name.equals("holo")) { - bone.setHidden(itemStack != null && itemStack.getOrCreateTag().getBoolean("HoloHidden")); + if (player_ != null) { + bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !player_.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming); + } } if (name.equals("arrow")) { diff --git a/src/main/java/net/mcreator/superbwarfare/client/renderer/item/DevotionItemRenderer.java b/src/main/java/net/mcreator/superbwarfare/client/renderer/item/DevotionItemRenderer.java index 3adc93da0..51915e76f 100644 --- a/src/main/java/net/mcreator/superbwarfare/client/renderer/item/DevotionItemRenderer.java +++ b/src/main/java/net/mcreator/superbwarfare/client/renderer/item/DevotionItemRenderer.java @@ -5,6 +5,7 @@ import com.mojang.blaze3d.vertex.VertexConsumer; import net.mcreator.superbwarfare.client.layer.DevotionLayer; import net.mcreator.superbwarfare.client.model.item.DevotionItemModel; import net.mcreator.superbwarfare.item.gun.Devotion; +import net.mcreator.superbwarfare.network.ModVariables; import net.mcreator.superbwarfare.tools.AnimUtils; import net.minecraft.client.Minecraft; import net.minecraft.client.model.PlayerModel; @@ -99,7 +100,9 @@ public class DevotionItemRenderer extends GeoItemRenderer { if (player != null) { itemStack = player.getMainHandItem(); } - bone.setHidden(itemStack != null && itemStack.getOrCreateTag().getBoolean("HoloHidden")); + if (player != null) { + bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming); + } } diff --git a/src/main/java/net/mcreator/superbwarfare/client/renderer/item/Hk416ItemRenderer.java b/src/main/java/net/mcreator/superbwarfare/client/renderer/item/Hk416ItemRenderer.java index 44043df12..0f1a9ba2b 100644 --- a/src/main/java/net/mcreator/superbwarfare/client/renderer/item/Hk416ItemRenderer.java +++ b/src/main/java/net/mcreator/superbwarfare/client/renderer/item/Hk416ItemRenderer.java @@ -5,6 +5,7 @@ import com.mojang.blaze3d.vertex.VertexConsumer; import net.mcreator.superbwarfare.client.layer.Hk416Layer; import net.mcreator.superbwarfare.client.model.item.Hk416ItemModel; import net.mcreator.superbwarfare.item.gun.Hk416Item; +import net.mcreator.superbwarfare.network.ModVariables; import net.mcreator.superbwarfare.tools.AnimUtils; import net.minecraft.client.Minecraft; import net.minecraft.client.model.PlayerModel; @@ -99,7 +100,9 @@ public class Hk416ItemRenderer extends GeoItemRenderer { if (player != null) { itemStack = player.getMainHandItem(); } - bone.setHidden(itemStack != null && itemStack.getOrCreateTag().getBoolean("HoloHidden")); + if (player != null) { + bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming); + } } diff --git a/src/main/java/net/mcreator/superbwarfare/client/renderer/item/M98bItemRenderer.java b/src/main/java/net/mcreator/superbwarfare/client/renderer/item/M98bItemRenderer.java index 5264ef1cc..b0d3069c6 100644 --- a/src/main/java/net/mcreator/superbwarfare/client/renderer/item/M98bItemRenderer.java +++ b/src/main/java/net/mcreator/superbwarfare/client/renderer/item/M98bItemRenderer.java @@ -5,6 +5,7 @@ import com.mojang.blaze3d.vertex.VertexConsumer; import net.mcreator.superbwarfare.client.layer.M98bLayer; import net.mcreator.superbwarfare.client.model.item.M98bItemModel; import net.mcreator.superbwarfare.item.gun.M98bItem; +import net.mcreator.superbwarfare.network.ModVariables; import net.mcreator.superbwarfare.tools.AnimUtils; import net.minecraft.client.Minecraft; import net.minecraft.client.model.PlayerModel; @@ -99,7 +100,7 @@ public class M98bItemRenderer extends GeoItemRenderer { if (player != null) { itemStack = player.getMainHandItem(); } - bone.setHidden(itemStack != null && itemStack.getOrCreateTag().getBoolean("HoloHidden")); + bone.setHidden((itemStack != null && itemStack.getOrCreateTag().getBoolean("HoloHidden")) || !player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming); } if (name.equals("qiang")) { diff --git a/src/main/java/net/mcreator/superbwarfare/client/renderer/item/MinigunItemRenderer.java b/src/main/java/net/mcreator/superbwarfare/client/renderer/item/MinigunItemRenderer.java index 207b39565..5d6de37e0 100644 --- a/src/main/java/net/mcreator/superbwarfare/client/renderer/item/MinigunItemRenderer.java +++ b/src/main/java/net/mcreator/superbwarfare/client/renderer/item/MinigunItemRenderer.java @@ -14,6 +14,7 @@ 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.entity.player.Player; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.cache.object.BakedGeoModel; @@ -76,6 +77,27 @@ public class MinigunItemRenderer extends GeoItemRenderer { bone.setHidden(this.hiddenBones.contains(name)); } + Player player_ = Minecraft.getInstance().player; + ItemStack itemStack = null; + if (player_ != null) { + itemStack = player_.getMainHandItem(); + } + + if (name.equals("flare")) { + if (itemStack != null && itemStack.getOrCreateTag().getDouble("flash_time") > 0) { + bone.setHidden(false); + bone.setScaleX((float) (1 + 0.5 * (Math.random() - 0.5))); + bone.setScaleY((float) (1 + 0.5 * (Math.random() - 0.5))); + bone.setRotZ((float) (0.5 * (Math.random() - 0.5))); + } else { + bone.setHidden(true); + } + } + + if (name.equals("light")) { + bone.setHidden(itemStack == null || !(itemStack.getOrCreateTag().getDouble("flash_time") > 0)); + } + if (this.transformType.firstPerson() && renderingArms) { AbstractClientPlayer player = mc.player; diff --git a/src/main/java/net/mcreator/superbwarfare/client/renderer/item/Qbz95ItemRenderer.java b/src/main/java/net/mcreator/superbwarfare/client/renderer/item/Qbz95ItemRenderer.java index c7f956c8f..fa16f5ab6 100644 --- a/src/main/java/net/mcreator/superbwarfare/client/renderer/item/Qbz95ItemRenderer.java +++ b/src/main/java/net/mcreator/superbwarfare/client/renderer/item/Qbz95ItemRenderer.java @@ -5,6 +5,7 @@ import com.mojang.blaze3d.vertex.VertexConsumer; import net.mcreator.superbwarfare.client.layer.Qbz95Layer; import net.mcreator.superbwarfare.client.model.item.Qbz95ItemModel; import net.mcreator.superbwarfare.item.gun.Qbz95Item; +import net.mcreator.superbwarfare.network.ModVariables; import net.mcreator.superbwarfare.tools.AnimUtils; import net.minecraft.client.Minecraft; import net.minecraft.client.model.PlayerModel; @@ -99,7 +100,9 @@ public class Qbz95ItemRenderer extends GeoItemRenderer { if (player != null) { itemStack = player.getMainHandItem(); } - bone.setHidden(itemStack != null && itemStack.getOrCreateTag().getBoolean("HoloHidden")); + if (player != null) { + bone.setHidden(itemStack.getOrCreateTag().getBoolean("HoloHidden") || !player.getCapability(ModVariables.PLAYER_VARIABLES_CAPABILITY, null).orElse(new ModVariables.PlayerVariables()).zooming); + } }