diff --git a/src/main/java/com/atsuishio/superbwarfare/init/ModEnumExtensions.java b/src/main/java/com/atsuishio/superbwarfare/init/ModEnumExtensions.java index 468a12b28..2eaebf2e2 100644 --- a/src/main/java/com/atsuishio/superbwarfare/init/ModEnumExtensions.java +++ b/src/main/java/com/atsuishio/superbwarfare/init/ModEnumExtensions.java @@ -5,6 +5,8 @@ import net.minecraft.client.model.HumanoidModel; import net.minecraft.util.Mth; import net.minecraft.world.entity.HumanoidArm; import net.minecraft.world.item.Rarity; +import net.neoforged.api.distmarker.Dist; +import net.neoforged.api.distmarker.OnlyIn; import net.neoforged.fml.common.asm.enumextension.EnumProxy; import net.neoforged.neoforge.client.IArmPoseTransformer; @@ -21,20 +23,24 @@ public class ModEnumExtensions { return SUPERBWARFARE_LEGENDARY.getValue(); } - public static final EnumProxy SUPERBWARFARE_LUNGE_MINE_POSE = new EnumProxy<>( - HumanoidModel.ArmPose.class, - false, - (IArmPoseTransformer) (model, entity, arm) -> { - if (arm != HumanoidArm.LEFT) { - model.rightArm.xRot = 20f * Mth.DEG_TO_RAD + model.head.xRot; - model.rightArm.yRot = -12f * Mth.DEG_TO_RAD; - model.leftArm.xRot = -45f * Mth.DEG_TO_RAD + model.head.xRot; - model.leftArm.yRot = 40f * Mth.DEG_TO_RAD; - } - } - ); + @OnlyIn(Dist.CLIENT) + public static class Client { - public static HumanoidModel.ArmPose getLungeMinePose() { - return SUPERBWARFARE_LUNGE_MINE_POSE.getValue(); + public static final EnumProxy SUPERBWARFARE_LUNGE_MINE_POSE = new EnumProxy<>( + HumanoidModel.ArmPose.class, + false, + (IArmPoseTransformer) (model, entity, arm) -> { + if (arm != HumanoidArm.LEFT) { + model.rightArm.xRot = 20f * Mth.DEG_TO_RAD + model.head.xRot; + model.rightArm.yRot = -12f * Mth.DEG_TO_RAD; + model.leftArm.xRot = -45f * Mth.DEG_TO_RAD + model.head.xRot; + model.leftArm.yRot = 40f * Mth.DEG_TO_RAD; + } + } + ); + + public static HumanoidModel.ArmPose getLungeMinePose() { + return SUPERBWARFARE_LUNGE_MINE_POSE.getValue(); + } } } diff --git a/src/main/java/com/atsuishio/superbwarfare/item/CustomRendererItem.java b/src/main/java/com/atsuishio/superbwarfare/item/CustomRendererItem.java index d722bcae1..dbac00b01 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/CustomRendererItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/CustomRendererItem.java @@ -3,6 +3,8 @@ package com.atsuishio.superbwarfare.item; import net.minecraft.world.item.Item; import software.bernie.geckolib.renderer.GeoItemRenderer; +import java.util.function.Supplier; + public interface CustomRendererItem { - GeoItemRenderer getRenderer(); + Supplier> getRenderer(); } diff --git a/src/main/java/com/atsuishio/superbwarfare/item/LungeMine.java b/src/main/java/com/atsuishio/superbwarfare/item/LungeMine.java index 0b4bf120e..e1bb3606b 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/LungeMine.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/LungeMine.java @@ -62,7 +62,7 @@ public class LungeMine extends Item implements GeoItem { public HumanoidModel.ArmPose getArmPose(LivingEntity entityLiving, InteractionHand hand, ItemStack itemStack) { if (!itemStack.isEmpty()) { if (entityLiving.getUsedItemHand() == hand) { - return ModEnumExtensions.getLungeMinePose(); + return ModEnumExtensions.Client.getLungeMinePose(); } } return HumanoidModel.ArmPose.EMPTY; diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/GunItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/GunItem.java index 703c83fbb..d19f10984 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/GunItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/GunItem.java @@ -513,7 +513,7 @@ public abstract class GunItem extends Item implements CustomRendererItem { for (var item : ModItems.GUNS.getEntries()) { if (item.get() instanceof GunItem gun) { event.registerItem(new IClientItemExtensions() { - private final BlockEntityWithoutLevelRenderer renderer = gun.getRenderer(); + private final BlockEntityWithoutLevelRenderer renderer = gun.getRenderer().get(); @Override public @NotNull BlockEntityWithoutLevelRenderer getCustomRenderer() { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/Glock17Item.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/Glock17Item.java index 746cf96d1..859a5c8fc 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/Glock17Item.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/Glock17Item.java @@ -13,6 +13,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -25,6 +26,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Map; import java.util.Set; import java.util.function.Consumer; +import java.util.function.Supplier; public class Glock17Item extends GunItem implements GeoItem { @@ -36,8 +38,8 @@ public class Glock17Item extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new Glock17ItemRenderer(); + public Supplier> getRenderer() { + return Glock17ItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { @@ -81,7 +83,6 @@ public class Glock17Item extends GunItem implements GeoItem { return event.setAndContinue(RawAnimation.begin().thenLoop("animation.glock.idle")); } - @Override public void registerControllers(AnimatableManager.ControllerRegistrar data) { var fireAnimController = new AnimationController<>(this, "fireAnimController", 1, this::fireAnimPredicate); diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/Glock18Item.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/Glock18Item.java index ce4872c3d..282af0c4e 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/Glock18Item.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/Glock18Item.java @@ -14,6 +14,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -26,6 +27,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Map; import java.util.Set; import java.util.function.Consumer; +import java.util.function.Supplier; public class Glock18Item extends GunItem implements GeoItem { @@ -37,8 +39,8 @@ public class Glock18Item extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new Glock18ItemRenderer(); + public Supplier> getRenderer() { + return Glock18ItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { @@ -81,7 +83,6 @@ public class Glock18Item extends GunItem implements GeoItem { return event.setAndContinue(RawAnimation.begin().thenLoop("animation.glock.idle")); } - @Override public void registerControllers(AnimatableManager.ControllerRegistrar data) { var fireAnimController = new AnimationController<>(this, "fireAnimController", 1, this::fireAnimPredicate); diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/M1911Item.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/M1911Item.java index dfaa83bf7..c87ff6bc8 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/M1911Item.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/M1911Item.java @@ -13,6 +13,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -25,6 +26,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Map; import java.util.Set; import java.util.function.Consumer; +import java.util.function.Supplier; public class M1911Item extends GunItem implements GeoItem { @@ -36,8 +38,8 @@ public class M1911Item extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new M1911ItemRenderer(); + public Supplier> getRenderer() { + return M1911ItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { @@ -58,7 +60,6 @@ public class M1911Item extends GunItem implements GeoItem { return event.setAndContinue(RawAnimation.begin().thenPlay("animation.glock.reload_normal")); } - return event.setAndContinue(RawAnimation.begin().thenLoop("animation.glock.idle")); } @@ -81,7 +82,6 @@ public class M1911Item extends GunItem implements GeoItem { return event.setAndContinue(RawAnimation.begin().thenLoop("animation.glock.idle")); } - @Override public void registerControllers(AnimatableManager.ControllerRegistrar data) { var fireAnimController = new AnimationController<>(this, "fireAnimController", 1, this::fireAnimPredicate); diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/Mp443Item.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/Mp443Item.java index 0b13440a9..b6a589bce 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/Mp443Item.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/Mp443Item.java @@ -13,6 +13,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -25,6 +26,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Map; import java.util.Set; import java.util.function.Consumer; +import java.util.function.Supplier; public class Mp443Item extends GunItem implements GeoItem { @@ -36,8 +38,8 @@ public class Mp443Item extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new Mp443ItemRenderer(); + public Supplier> getRenderer() { + return Mp443ItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { @@ -58,7 +60,6 @@ public class Mp443Item extends GunItem implements GeoItem { return event.setAndContinue(RawAnimation.begin().thenPlay("animation.glock.reload_normal")); } - return event.setAndContinue(RawAnimation.begin().thenLoop("animation.glock.idle")); } @@ -81,7 +82,6 @@ public class Mp443Item extends GunItem implements GeoItem { return event.setAndContinue(RawAnimation.begin().thenLoop("animation.glock.idle")); } - @Override public void registerControllers(AnimatableManager.ControllerRegistrar data) { var fireAnimController = new AnimationController<>(this, "fireAnimController", 1, this::fireAnimPredicate); diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/Trachelium.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/Trachelium.java index e95da87f8..9852280af 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/Trachelium.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/handgun/Trachelium.java @@ -19,10 +19,7 @@ import net.minecraft.network.chat.Component; import net.minecraft.network.chat.Style; import net.minecraft.sounds.SoundEvent; import net.minecraft.world.entity.Entity; -import net.minecraft.world.item.ItemDisplayContext; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.Rarity; -import net.minecraft.world.item.TooltipFlag; +import net.minecraft.world.item.*; import net.minecraft.world.level.Level; import software.bernie.geckolib.animatable.GeoItem; import software.bernie.geckolib.animatable.instance.AnimatableInstanceCache; @@ -33,6 +30,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import javax.annotation.ParametersAreNonnullByDefault; import java.util.List; import java.util.Set; +import java.util.function.Supplier; public class Trachelium extends GunItem implements GeoItem { @@ -49,8 +47,8 @@ public class Trachelium extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new TracheliumItemRenderer(); + public Supplier> getRenderer() { + return TracheliumItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { @@ -227,7 +225,6 @@ public class Trachelium extends GunItem implements GeoItem { TooltipTool.addHideText(list, Component.translatable("des.superbwarfare.trachelium_4").withStyle(Style.EMPTY.withColor(0xF4F0FF))); } - @Override @ParametersAreNonnullByDefault public void inventoryTick(ItemStack stack, Level world, Entity entity, int slot, boolean selected) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/heavy/Ntw20Item.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/heavy/Ntw20Item.java index 0548adac6..d23817081 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/heavy/Ntw20Item.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/heavy/Ntw20Item.java @@ -18,6 +18,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import software.bernie.geckolib.animatable.GeoItem; @@ -27,6 +28,7 @@ import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Set; +import java.util.function.Supplier; public class Ntw20Item extends GunItem implements GeoItem { @@ -43,8 +45,8 @@ public class Ntw20Item extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new Ntw20Renderer(); + public Supplier> getRenderer() { + return Ntw20Renderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/JavelinItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/JavelinItem.java index 761f30962..8cf67bafc 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/JavelinItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/JavelinItem.java @@ -51,6 +51,7 @@ import javax.annotation.ParametersAreNonnullByDefault; import java.util.List; import java.util.Optional; import java.util.Set; +import java.util.function.Supplier; public class JavelinItem extends GunItem implements GeoItem, SpecialFireWeapon { @@ -62,8 +63,8 @@ public class JavelinItem extends GunItem implements GeoItem, SpecialFireWeapon { } @Override - public GeoItemRenderer getRenderer() { - return new JavelinItemRenderer(); + public Supplier> getRenderer() { + return JavelinItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/M79Item.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/M79Item.java index ddea57799..cb4d22530 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/M79Item.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/M79Item.java @@ -44,6 +44,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import javax.annotation.ParametersAreNonnullByDefault; import java.util.Optional; import java.util.Set; +import java.util.function.Supplier; public class M79Item extends GunItem implements GeoItem, SpecialFireWeapon { @@ -60,8 +61,8 @@ public class M79Item extends GunItem implements GeoItem, SpecialFireWeapon { } @Override - public GeoItemRenderer getRenderer() { - return new M79ItemRenderer(); + public Supplier> getRenderer() { + return M79ItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/RpgItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/RpgItem.java index 4991a9625..9347691a8 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/RpgItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/RpgItem.java @@ -46,6 +46,7 @@ import java.util.Map; import java.util.Optional; import java.util.Set; import java.util.function.Consumer; +import java.util.function.Supplier; public class RpgItem extends GunItem implements GeoItem, SpecialFireWeapon { @@ -62,8 +63,8 @@ public class RpgItem extends GunItem implements GeoItem, SpecialFireWeapon { } @Override - public GeoItemRenderer getRenderer() { - return new RpgItemRenderer(); + public Supplier> getRenderer() { + return RpgItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/SecondaryCataclysm.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/SecondaryCataclysm.java index 78b220760..cbe7def99 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/SecondaryCataclysm.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/launcher/SecondaryCataclysm.java @@ -45,6 +45,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import javax.annotation.ParametersAreNonnullByDefault; import java.util.ArrayList; import java.util.Optional; +import java.util.function.Supplier; public class SecondaryCataclysm extends GunItem implements GeoItem, SpecialFireWeapon, EnergyStorageItem { private final AnimatableInstanceCache cache = GeckoLibUtil.createInstanceCache(this); @@ -72,8 +73,8 @@ public class SecondaryCataclysm extends GunItem implements GeoItem, SpecialFireW } @Override - public GeoItemRenderer getRenderer() { - return new SecondaryCataclysmRenderer(); + public Supplier> getRenderer() { + return SecondaryCataclysmRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/machinegun/DevotionItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/machinegun/DevotionItem.java index 62a2f6f21..6741fa4e4 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/machinegun/DevotionItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/machinegun/DevotionItem.java @@ -14,6 +14,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -24,6 +25,7 @@ import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Set; +import java.util.function.Supplier; public class DevotionItem extends GunItem implements GeoItem { @@ -35,8 +37,8 @@ public class DevotionItem extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new DevotionItemRenderer(); + public Supplier> getRenderer() { + return DevotionItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/machinegun/M60Item.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/machinegun/M60Item.java index 6b09497ad..ede8d95a4 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/machinegun/M60Item.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/machinegun/M60Item.java @@ -15,6 +15,7 @@ import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; import net.minecraft.world.entity.Entity; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -29,6 +30,7 @@ import javax.annotation.ParametersAreNonnullByDefault; import java.util.Map; import java.util.Set; import java.util.function.Consumer; +import java.util.function.Supplier; public class M60Item extends GunItem implements GeoItem { @@ -40,8 +42,8 @@ public class M60Item extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new M60ItemRenderer(); + public Supplier> getRenderer() { + return M60ItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/machinegun/MinigunItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/machinegun/MinigunItem.java index c98bfd9ba..8defcaf7b 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/machinegun/MinigunItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/machinegun/MinigunItem.java @@ -20,6 +20,7 @@ import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; import net.minecraft.util.Mth; import net.minecraft.world.entity.Entity; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.Level; @@ -32,6 +33,7 @@ import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.util.GeckoLibUtil; import javax.annotation.ParametersAreNonnullByDefault; +import java.util.function.Supplier; public class MinigunItem extends GunItem implements GeoItem { @Override @@ -64,8 +66,8 @@ public class MinigunItem extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new MinigunItemRenderer(); + public Supplier> getRenderer() { + return MinigunItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/machinegun/RpkItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/machinegun/RpkItem.java index 9cce27c08..be1bdff07 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/machinegun/RpkItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/machinegun/RpkItem.java @@ -19,6 +19,7 @@ import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; import net.minecraft.world.entity.Entity; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -31,6 +32,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import javax.annotation.ParametersAreNonnullByDefault; import java.util.Set; +import java.util.function.Supplier; public class RpkItem extends GunItem implements GeoItem { @@ -42,8 +44,8 @@ public class RpkItem extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new RpkItemRenderer(); + public Supplier> getRenderer() { + return RpkItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/AK12Item.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/AK12Item.java index 75082a2c7..23afe0400 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/AK12Item.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/AK12Item.java @@ -17,6 +17,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -27,6 +28,7 @@ import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Set; +import java.util.function.Supplier; public class AK12Item extends GunItem implements GeoItem { @@ -43,8 +45,8 @@ public class AK12Item extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new AK12ItemRenderer(); + public Supplier> getRenderer() { + return AK12ItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/AK47Item.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/AK47Item.java index b3023152a..7e5481723 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/AK47Item.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/AK47Item.java @@ -17,6 +17,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -27,6 +28,7 @@ import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Set; +import java.util.function.Supplier; public class AK47Item extends GunItem implements GeoItem { @@ -43,8 +45,8 @@ public class AK47Item extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new AK47ItemRenderer(); + public Supplier> getRenderer() { + return AK47ItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/Hk416Item.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/Hk416Item.java index 7f541d121..7dc8d6c06 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/Hk416Item.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/Hk416Item.java @@ -17,6 +17,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -27,6 +28,7 @@ import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Set; +import java.util.function.Supplier; public class Hk416Item extends GunItem implements GeoItem { @@ -38,8 +40,8 @@ public class Hk416Item extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new Hk416ItemRenderer(); + public Supplier> getRenderer() { + return Hk416ItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/InsidiousItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/InsidiousItem.java index 2d72dd89d..ed063bde9 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/InsidiousItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/InsidiousItem.java @@ -24,6 +24,7 @@ import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Set; +import java.util.function.Supplier; public class InsidiousItem extends GunItem implements GeoItem { @@ -35,8 +36,8 @@ public class InsidiousItem extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new InsidiousItemRenderer(); + public Supplier> getRenderer() { + return InsidiousItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/M4Item.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/M4Item.java index 29d30ff87..72696c70e 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/M4Item.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/M4Item.java @@ -17,6 +17,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -27,6 +28,7 @@ import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Set; +import java.util.function.Supplier; public class M4Item extends GunItem implements GeoItem { @@ -38,8 +40,8 @@ public class M4Item extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new M4ItemRenderer(); + public Supplier> getRenderer() { + return M4ItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/MarlinItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/MarlinItem.java index 078d5be45..fc0d647a3 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/MarlinItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/MarlinItem.java @@ -13,6 +13,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -23,6 +24,7 @@ import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Set; +import java.util.function.Supplier; public class MarlinItem extends GunItem implements GeoItem { @@ -34,8 +36,8 @@ public class MarlinItem extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new MarlinItemRenderer(); + public Supplier> getRenderer() { + return MarlinItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/Mk14Item.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/Mk14Item.java index 1eed641ae..ac94cca21 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/Mk14Item.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/Mk14Item.java @@ -17,6 +17,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -29,6 +30,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Map; import java.util.Set; import java.util.function.Consumer; +import java.util.function.Supplier; public class Mk14Item extends GunItem implements GeoItem { @@ -40,8 +42,8 @@ public class Mk14Item extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new Mk14ItemRenderer(); + public Supplier> getRenderer() { + return Mk14ItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/Qbz95Item.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/Qbz95Item.java index 724310446..0f2a0f1f8 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/Qbz95Item.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/Qbz95Item.java @@ -18,6 +18,7 @@ import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; import net.minecraft.world.entity.Entity; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -32,6 +33,7 @@ import javax.annotation.ParametersAreNonnullByDefault; import java.util.Map; import java.util.Set; import java.util.function.Consumer; +import java.util.function.Supplier; public class Qbz95Item extends GunItem implements GeoItem { @@ -43,8 +45,8 @@ public class Qbz95Item extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new Qbz95ItemRenderer(); + public Supplier> getRenderer() { + return Qbz95ItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/SksItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/SksItem.java index 7c274cd03..1e30b083b 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/SksItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/rifle/SksItem.java @@ -14,6 +14,7 @@ import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; import net.minecraft.world.entity.Entity; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -28,6 +29,7 @@ import javax.annotation.ParametersAreNonnullByDefault; import java.util.Map; import java.util.Set; import java.util.function.Consumer; +import java.util.function.Supplier; public class SksItem extends GunItem implements GeoItem { @@ -44,8 +46,8 @@ public class SksItem extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new SksItemRenderer(); + public Supplier> getRenderer() { + return SksItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/shotgun/Aa12Item.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/shotgun/Aa12Item.java index d79f4a82f..7a16e6b3a 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/shotgun/Aa12Item.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/shotgun/Aa12Item.java @@ -17,6 +17,7 @@ import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; import net.minecraft.world.inventory.tooltip.TooltipComponent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import org.jetbrains.annotations.NotNull; @@ -28,6 +29,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Optional; import java.util.Set; +import java.util.function.Supplier; public class Aa12Item extends GunItem implements GeoItem { @@ -40,8 +42,8 @@ public class Aa12Item extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new Aa12ItemRenderer(); + public Supplier> getRenderer() { + return Aa12ItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/shotgun/HomemadeShotgunItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/shotgun/HomemadeShotgunItem.java index 4c0ebad96..92f56bd1e 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/shotgun/HomemadeShotgunItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/shotgun/HomemadeShotgunItem.java @@ -15,6 +15,7 @@ import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; import net.minecraft.world.inventory.tooltip.TooltipComponent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -27,6 +28,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Optional; import java.util.Set; +import java.util.function.Supplier; public class HomemadeShotgunItem extends GunItem implements GeoItem { @@ -43,8 +45,8 @@ public class HomemadeShotgunItem extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new HomemadeShotgunItemRenderer(); + public Supplier> getRenderer() { + return HomemadeShotgunItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/shotgun/M870Item.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/shotgun/M870Item.java index 38f68ecda..869f34e6c 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/shotgun/M870Item.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/shotgun/M870Item.java @@ -15,6 +15,7 @@ import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; import net.minecraft.world.inventory.tooltip.TooltipComponent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -27,6 +28,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Optional; import java.util.Set; +import java.util.function.Supplier; public class M870Item extends GunItem implements GeoItem { @@ -38,8 +40,8 @@ public class M870Item extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new M870ItemRenderer(); + public Supplier> getRenderer() { + return M870ItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/smg/VectorItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/smg/VectorItem.java index daeb61485..41d9e101a 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/smg/VectorItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/smg/VectorItem.java @@ -17,6 +17,7 @@ import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; import net.minecraft.world.entity.Entity; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -29,6 +30,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import javax.annotation.ParametersAreNonnullByDefault; import java.util.Set; +import java.util.function.Supplier; public class VectorItem extends GunItem implements GeoItem { @@ -107,8 +109,8 @@ public class VectorItem extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new VectorItemRenderer(); + public Supplier> getRenderer() { + return VectorItemRenderer::new; } // TODO 移除inventoryTick diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/HuntingRifleItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/HuntingRifleItem.java index 9fa02d221..b3dc6622f 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/HuntingRifleItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/HuntingRifleItem.java @@ -13,6 +13,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -23,6 +24,7 @@ import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Set; +import java.util.function.Supplier; public class HuntingRifleItem extends GunItem implements GeoItem { @@ -39,8 +41,8 @@ public class HuntingRifleItem extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new HuntingRifleItemRenderer(); + public Supplier> getRenderer() { + return HuntingRifleItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/K98Item.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/K98Item.java index d33e40091..316ac7b64 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/K98Item.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/K98Item.java @@ -13,6 +13,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -23,6 +24,7 @@ import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Set; +import java.util.function.Supplier; public class K98Item extends GunItem implements GeoItem { @@ -34,8 +36,8 @@ public class K98Item extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new K98ItemRenderer(); + public Supplier> getRenderer() { + return K98ItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/M98bItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/M98bItem.java index 499beaa1a..9673f0e40 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/M98bItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/M98bItem.java @@ -13,6 +13,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -23,6 +24,7 @@ import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Set; +import java.util.function.Supplier; public class M98bItem extends GunItem implements GeoItem { @@ -34,8 +36,8 @@ public class M98bItem extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new M98bItemRenderer(); + public Supplier> getRenderer() { + return M98bItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/MosinNagantItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/MosinNagantItem.java index 33dea673d..d311787f7 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/MosinNagantItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/MosinNagantItem.java @@ -13,6 +13,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -23,6 +24,7 @@ import software.bernie.geckolib.renderer.GeoItemRenderer; import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Set; +import java.util.function.Supplier; public class MosinNagantItem extends GunItem implements GeoItem { @@ -34,8 +36,8 @@ public class MosinNagantItem extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new MosinNagantItemRenderer(); + public Supplier> getRenderer() { + return MosinNagantItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/SentinelItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/SentinelItem.java index c73de4fe7..2f55b4d6b 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/SentinelItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/SentinelItem.java @@ -17,6 +17,7 @@ import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; import net.minecraft.world.inventory.tooltip.TooltipComponent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.neoforged.neoforge.capabilities.Capabilities; @@ -29,6 +30,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Optional; import java.util.Set; +import java.util.function.Supplier; public class SentinelItem extends GunItem implements GeoItem, EnergyStorageItem { @@ -58,8 +60,8 @@ public class SentinelItem extends GunItem implements GeoItem, EnergyStorageItem } @Override - public GeoItemRenderer getRenderer() { - return new SentinelItemRenderer(); + public Supplier> getRenderer() { + return SentinelItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/SvdItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/SvdItem.java index 3596c043a..fa0ee5b30 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/SvdItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/sniper/SvdItem.java @@ -17,6 +17,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.player.LocalPlayer; import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.item.Item; import net.minecraft.world.item.ItemDisplayContext; import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.Rarity; @@ -29,6 +30,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import java.util.Map; import java.util.Set; import java.util.function.Consumer; +import java.util.function.Supplier; public class SvdItem extends GunItem implements GeoItem { @@ -40,8 +42,8 @@ public class SvdItem extends GunItem implements GeoItem { } @Override - public GeoItemRenderer getRenderer() { - return new SvdItemRenderer(); + public Supplier> getRenderer() { + return SvdItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/special/BocekItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/special/BocekItem.java index 907becc96..034086b5d 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/special/BocekItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/special/BocekItem.java @@ -25,10 +25,7 @@ import net.minecraft.sounds.SoundSource; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.player.Player; import net.minecraft.world.inventory.tooltip.TooltipComponent; -import net.minecraft.world.item.ItemDisplayContext; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.item.Items; -import net.minecraft.world.item.Rarity; +import net.minecraft.world.item.*; import net.minecraft.world.level.Level; import net.neoforged.neoforge.network.PacketDistributor; import org.jetbrains.annotations.NotNull; @@ -40,6 +37,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import javax.annotation.ParametersAreNonnullByDefault; import java.util.Optional; +import java.util.function.Supplier; import static com.atsuishio.superbwarfare.network.message.send.FireMessage.spawnBullet; @@ -53,8 +51,8 @@ public class BocekItem extends GunItem implements GeoItem, SpecialFireWeapon { } @Override - public GeoItemRenderer getRenderer() { - return new BocekItemRenderer(); + public Supplier> getRenderer() { + return BocekItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/java/com/atsuishio/superbwarfare/item/gun/special/TaserItem.java b/src/main/java/com/atsuishio/superbwarfare/item/gun/special/TaserItem.java index 806515a48..fc57a60b6 100644 --- a/src/main/java/com/atsuishio/superbwarfare/item/gun/special/TaserItem.java +++ b/src/main/java/com/atsuishio/superbwarfare/item/gun/special/TaserItem.java @@ -42,6 +42,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import javax.annotation.ParametersAreNonnullByDefault; import java.util.Optional; import java.util.Set; +import java.util.function.Supplier; public class TaserItem extends GunItem implements GeoItem, SpecialFireWeapon, EnergyStorageItem { @@ -50,7 +51,6 @@ public class TaserItem extends GunItem implements GeoItem, SpecialFireWeapon, En private final AnimatableInstanceCache cache = GeckoLibUtil.createInstanceCache(this); public static ItemDisplayContext transformType; - public TaserItem() { super(new Properties().stacksTo(1).rarity(Rarity.COMMON)); } @@ -78,8 +78,8 @@ public class TaserItem extends GunItem implements GeoItem, SpecialFireWeapon, En } @Override - public GeoItemRenderer getRenderer() { - return new TaserItemRenderer(); + public Supplier> getRenderer() { + return TaserItemRenderer::new; } public void getTransformType(ItemDisplayContext type) { diff --git a/src/main/resources/META-INF/enumextensions.json b/src/main/resources/META-INF/enumextensions.json index 07d506dcb..5f68a6877 100644 --- a/src/main/resources/META-INF/enumextensions.json +++ b/src/main/resources/META-INF/enumextensions.json @@ -14,7 +14,7 @@ "name": "SUPERBWARFARE_LUNGE_MINE_POSE", "constructor": "(ZLnet/neoforged/neoforge/client/IArmPoseTransformer;)V", "parameters": { - "class": "com/atsuishio/superbwarfare/init/ModEnumExtensions", + "class": "com/atsuishio/superbwarfare/init/ModEnumExtensions$Client", "field": "SUPERBWARFARE_LUNGE_MINE_POSE" } }