调整部分物品命名

This commit is contained in:
17146 2025-03-16 02:29:03 +08:00
parent ac268f1e20
commit a215afc474
19 changed files with 63 additions and 51 deletions

View file

@ -1,7 +1,7 @@
package com.atsuishio.superbwarfare.client.layer; package com.atsuishio.superbwarfare.client.layer;
import com.atsuishio.superbwarfare.ModUtils; import com.atsuishio.superbwarfare.ModUtils;
import com.atsuishio.superbwarfare.item.gun.shotgun.AbekiriItem; import com.atsuishio.superbwarfare.item.gun.shotgun.HomemadeShotgunItem;
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 net.minecraft.client.renderer.MultiBufferSource; import net.minecraft.client.renderer.MultiBufferSource;
@ -12,15 +12,15 @@ import software.bernie.geckolib.cache.object.BakedGeoModel;
import software.bernie.geckolib.renderer.GeoRenderer; import software.bernie.geckolib.renderer.GeoRenderer;
import software.bernie.geckolib.renderer.layer.GeoRenderLayer; import software.bernie.geckolib.renderer.layer.GeoRenderLayer;
public class AbekiriLayer extends GeoRenderLayer<AbekiriItem> { public class AbekiriLayer extends GeoRenderLayer<HomemadeShotgunItem> {
private static final ResourceLocation LAYER = ModUtils.loc("textures/item/abekiri_e.png"); private static final ResourceLocation LAYER = ModUtils.loc("textures/item/abekiri_e.png");
public AbekiriLayer(GeoRenderer<AbekiriItem> entityRenderer) { public AbekiriLayer(GeoRenderer<HomemadeShotgunItem> entityRenderer) {
super(entityRenderer); super(entityRenderer);
} }
@Override @Override
public void render(PoseStack poseStack, AbekiriItem animatable, BakedGeoModel bakedModel, RenderType renderType, MultiBufferSource bufferSource, VertexConsumer buffer, float partialTick, int packedLight, int packedOverlay) { public void render(PoseStack poseStack, HomemadeShotgunItem animatable, BakedGeoModel bakedModel, RenderType renderType, MultiBufferSource bufferSource, VertexConsumer buffer, float partialTick, int packedLight, int packedOverlay) {
RenderType glowRenderType = RenderType.eyes(LAYER); RenderType glowRenderType = RenderType.eyes(LAYER);
getRenderer().reRender(getDefaultBakedModel(animatable), poseStack, bufferSource, animatable, glowRenderType, bufferSource.getBuffer(glowRenderType), partialTick, packedLight, OverlayTexture.NO_OVERLAY, 1, 1, 1, 1); getRenderer().reRender(getDefaultBakedModel(animatable), poseStack, bufferSource, animatable, glowRenderType, bufferSource.getBuffer(glowRenderType), partialTick, packedLight, OverlayTexture.NO_OVERLAY, 1, 1, 1, 1);
} }

View file

@ -5,7 +5,7 @@ import com.atsuishio.superbwarfare.client.AnimationHelper;
import com.atsuishio.superbwarfare.client.overlay.CrossHairOverlay; import com.atsuishio.superbwarfare.client.overlay.CrossHairOverlay;
import com.atsuishio.superbwarfare.event.ClientEventHandler; import com.atsuishio.superbwarfare.event.ClientEventHandler;
import com.atsuishio.superbwarfare.init.ModTags; import com.atsuishio.superbwarfare.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.shotgun.AbekiriItem; import com.atsuishio.superbwarfare.item.gun.shotgun.HomemadeShotgunItem;
import net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.util.Mth; import net.minecraft.util.Mth;
@ -15,25 +15,25 @@ import software.bernie.geckolib.core.animatable.model.CoreGeoBone;
import software.bernie.geckolib.core.animation.AnimationState; import software.bernie.geckolib.core.animation.AnimationState;
import software.bernie.geckolib.model.GeoModel; import software.bernie.geckolib.model.GeoModel;
public class AbekiriItemModel extends GeoModel<AbekiriItem> { public class AbekiriItemModel extends GeoModel<HomemadeShotgunItem> {
@Override @Override
public ResourceLocation getAnimationResource(AbekiriItem animatable) { public ResourceLocation getAnimationResource(HomemadeShotgunItem animatable) {
return ModUtils.loc("animations/abekiri.animation.json"); return ModUtils.loc("animations/abekiri.animation.json");
} }
@Override @Override
public ResourceLocation getModelResource(AbekiriItem animatable) { public ResourceLocation getModelResource(HomemadeShotgunItem animatable) {
return ModUtils.loc("geo/abekiri.geo.json"); return ModUtils.loc("geo/abekiri.geo.json");
} }
@Override @Override
public ResourceLocation getTextureResource(AbekiriItem animatable) { public ResourceLocation getTextureResource(HomemadeShotgunItem animatable) {
return ModUtils.loc("textures/item/abekiri.png"); return ModUtils.loc("textures/item/abekiri.png");
} }
@Override @Override
public void setCustomAnimations(AbekiriItem animatable, long instanceId, AnimationState animationState) { public void setCustomAnimations(HomemadeShotgunItem animatable, long instanceId, AnimationState animationState) {
CoreGeoBone gun = getAnimationProcessor().getBone("bone"); CoreGeoBone gun = getAnimationProcessor().getBone("bone");
CoreGeoBone shen = getAnimationProcessor().getBone("shen"); CoreGeoBone shen = getAnimationProcessor().getBone("shen");

View file

@ -5,7 +5,7 @@ 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.init.ModTags;
import com.atsuishio.superbwarfare.item.gun.shotgun.AbekiriItem; import com.atsuishio.superbwarfare.item.gun.shotgun.HomemadeShotgunItem;
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 net.minecraft.client.Minecraft; import net.minecraft.client.Minecraft;
@ -27,7 +27,7 @@ import software.bernie.geckolib.util.RenderUtils;
import java.util.HashSet; import java.util.HashSet;
import java.util.Set; import java.util.Set;
public class AbekiriItemRenderer extends GeoItemRenderer<AbekiriItem> { public class AbekiriItemRenderer extends GeoItemRenderer<HomemadeShotgunItem> {
public AbekiriItemRenderer() { public AbekiriItemRenderer() {
super(new AbekiriItemModel()); super(new AbekiriItemModel());
@ -35,7 +35,7 @@ public class AbekiriItemRenderer extends GeoItemRenderer<AbekiriItem> {
} }
@Override @Override
public RenderType getRenderType(AbekiriItem animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) { public RenderType getRenderType(HomemadeShotgunItem animatable, ResourceLocation texture, MultiBufferSource bufferSource, float partialTick) {
return RenderType.entityTranslucent(getTextureLocation(animatable)); return RenderType.entityTranslucent(getTextureLocation(animatable));
} }
@ -44,7 +44,7 @@ public class AbekiriItemRenderer extends GeoItemRenderer<AbekiriItem> {
protected MultiBufferSource currentBuffer; protected MultiBufferSource currentBuffer;
protected RenderType renderType; protected RenderType renderType;
public ItemDisplayContext transformType; public ItemDisplayContext transformType;
protected AbekiriItem animatable; protected HomemadeShotgunItem animatable;
private final Set<String> hiddenBones = new HashSet<>(); private final Set<String> hiddenBones = new HashSet<>();
@Override @Override
@ -56,7 +56,7 @@ public class AbekiriItemRenderer extends GeoItemRenderer<AbekiriItem> {
} }
@Override @Override
public void actuallyRender(PoseStack matrixStackIn, AbekiriItem animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn, public void actuallyRender(PoseStack matrixStackIn, HomemadeShotgunItem animatable, BakedGeoModel model, RenderType type, MultiBufferSource renderTypeBuffer, VertexConsumer vertexBuilder, boolean isRenderer, float partialTicks, int packedLightIn,
int packedOverlayIn, float red, float green, float blue, float alpha) { int packedOverlayIn, float red, float green, float blue, float alpha) {
this.currentBuffer = renderTypeBuffer; this.currentBuffer = renderTypeBuffer;
this.renderType = type; this.renderType = type;
@ -68,7 +68,7 @@ public class AbekiriItemRenderer extends GeoItemRenderer<AbekiriItem> {
} }
@Override @Override
public void renderRecursively(PoseStack stack, AbekiriItem animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red, public void renderRecursively(PoseStack stack, HomemadeShotgunItem animatable, GeoBone bone, RenderType type, MultiBufferSource buffer, VertexConsumer bufferIn, boolean isReRender, float partialTick, int packedLightIn, int packedOverlayIn, float red,
float green, float blue, float alpha) { float green, float blue, float alpha) {
Minecraft mc = Minecraft.getInstance(); Minecraft mc = Minecraft.getInstance();
String name = bone.getName(); String name = bone.getName();
@ -132,7 +132,7 @@ public class AbekiriItemRenderer extends GeoItemRenderer<AbekiriItem> {
} }
@Override @Override
public ResourceLocation getTextureLocation(AbekiriItem instance) { public ResourceLocation getTextureLocation(HomemadeShotgunItem instance) {
return super.getTextureLocation(instance); return super.getTextureLocation(instance);
} }
} }

View file

@ -87,11 +87,11 @@ public class ModItemTagProvider extends ItemTagsProvider {
this.tag(ModTags.Items.HEAVY_WEAPON).add(ModItems.NTW_20.get()); this.tag(ModTags.Items.HEAVY_WEAPON).add(ModItems.NTW_20.get());
this.tag(ModTags.Items.SHOTGUN).add(ModItems.ABEKIRI.get(), ModItems.M_870.get(), ModItems.AA_12.get()); this.tag(ModTags.Items.SHOTGUN).add(ModItems.HOMEMADE_SHOTGUN.get(), ModItems.M_870.get(), ModItems.AA_12.get());
this.tag(ModTags.Items.MACHINE_GUN).add(ModItems.MINIGUN.get(), ModItems.DEVOTION.get(), ModItems.RPK.get(), ModItems.M_60.get()); this.tag(ModTags.Items.MACHINE_GUN).add(ModItems.MINIGUN.get(), ModItems.DEVOTION.get(), ModItems.RPK.get(), ModItems.M_60.get());
this.tag(ModTags.Items.NORMAL_GUN).add(ModItems.ABEKIRI.get(), ModItems.AK_47.get(), ModItems.AK_12.get(), ModItems.SVD.get(), ModItems.M_60.get(), ModItems.MK_14.get(), ModItems.VECTOR.get(), this.tag(ModTags.Items.NORMAL_GUN).add(ModItems.HOMEMADE_SHOTGUN.get(), ModItems.AK_47.get(), ModItems.AK_12.get(), ModItems.SVD.get(), ModItems.M_60.get(), ModItems.MK_14.get(), ModItems.VECTOR.get(),
ModItems.SKS.get(), ModItems.RPK.get(), ModItems.HK_416.get(), ModItems.AA_12.get(), ModItems.M_4.get(), ModItems.DEVOTION.get(), ModItems.TRACHELIUM.get(), ModItems.SKS.get(), ModItems.RPK.get(), ModItems.HK_416.get(), ModItems.AA_12.get(), ModItems.M_4.get(), ModItems.DEVOTION.get(), ModItems.TRACHELIUM.get(),
ModItems.HUNTING_RIFLE.get(), ModItems.NTW_20.get(), ModItems.M_98B.get(), ModItems.SENTINEL.get(), ModItems.M_870.get(), ModItems.MARLIN.get(), ModItems.GLOCK_17.get(), ModItems.HUNTING_RIFLE.get(), ModItems.NTW_20.get(), ModItems.M_98B.get(), ModItems.SENTINEL.get(), ModItems.M_870.get(), ModItems.MARLIN.get(), ModItems.GLOCK_17.get(),
ModItems.GLOCK_18.get(), ModItems.M_1911.get(), ModItems.QBZ_95.get(), ModItems.K_98.get(), ModItems.MOSIN_NAGANT.get(), ModItems.MP_443.get()); ModItems.GLOCK_18.get(), ModItems.M_1911.get(), ModItems.QBZ_95.get(), ModItems.K_98.get(), ModItems.MOSIN_NAGANT.get(), ModItems.MP_443.get());
@ -101,7 +101,7 @@ public class ModItemTagProvider extends ItemTagsProvider {
this.tag(ModTags.Items.USE_RIFLE_AMMO).add(ModItems.M_4.get(), ModItems.HK_416.get(), ModItems.SKS.get(), ModItems.MINIGUN.get(), ModItems.DEVOTION.get(), ModItems.M_60.get(), this.tag(ModTags.Items.USE_RIFLE_AMMO).add(ModItems.M_4.get(), ModItems.HK_416.get(), ModItems.SKS.get(), ModItems.MINIGUN.get(), ModItems.DEVOTION.get(), ModItems.M_60.get(),
ModItems.MK_14.get(), ModItems.MARLIN.get(), ModItems.AK_47.get(), ModItems.AK_12.get(), ModItems.QBZ_95.get(), ModItems.RPK.get(), ModItems.TRACHELIUM.get()); ModItems.MK_14.get(), ModItems.MARLIN.get(), ModItems.AK_47.get(), ModItems.AK_12.get(), ModItems.QBZ_95.get(), ModItems.RPK.get(), ModItems.TRACHELIUM.get());
this.tag(ModTags.Items.USE_SHOTGUN_AMMO).add(ModItems.ABEKIRI.get(), ModItems.M_870.get(), ModItems.AA_12.get()); this.tag(ModTags.Items.USE_SHOTGUN_AMMO).add(ModItems.HOMEMADE_SHOTGUN.get(), ModItems.M_870.get(), ModItems.AA_12.get());
this.tag(ModTags.Items.USE_SNIPER_AMMO).add(ModItems.HUNTING_RIFLE.get(), ModItems.SENTINEL.get(), this.tag(ModTags.Items.USE_SNIPER_AMMO).add(ModItems.HUNTING_RIFLE.get(), ModItems.SENTINEL.get(),
ModItems.SVD.get(), ModItems.M_98B.get(), ModItems.K_98.get(), ModItems.MOSIN_NAGANT.get()); ModItems.SVD.get(), ModItems.M_98B.get(), ModItems.K_98.get(), ModItems.MOSIN_NAGANT.get());

View file

@ -17,6 +17,7 @@ import com.atsuishio.superbwarfare.tools.AmmoType;
import com.atsuishio.superbwarfare.tools.GunsTool; import com.atsuishio.superbwarfare.tools.GunsTool;
import com.atsuishio.superbwarfare.tools.InventoryTool; import com.atsuishio.superbwarfare.tools.InventoryTool;
import com.atsuishio.superbwarfare.tools.SoundTool; import com.atsuishio.superbwarfare.tools.SoundTool;
import net.minecraft.core.registries.Registries;
import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.CompoundTag;
import net.minecraft.resources.ResourceLocation; import net.minecraft.resources.ResourceLocation;
import net.minecraft.server.level.ServerPlayer; import net.minecraft.server.level.ServerPlayer;
@ -26,6 +27,7 @@ import net.minecraft.world.effect.MobEffect;
import net.minecraft.world.effect.MobEffectInstance; import net.minecraft.world.effect.MobEffectInstance;
import net.minecraft.world.entity.player.Player; import net.minecraft.world.entity.player.Player;
import net.minecraft.world.entity.projectile.Projectile; import net.minecraft.world.entity.projectile.Projectile;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.ClipContext; import net.minecraft.world.level.ClipContext;
import net.minecraft.world.phys.Vec3; import net.minecraft.world.phys.Vec3;
@ -35,6 +37,7 @@ import net.minecraftforge.event.TickEvent;
import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.fml.common.Mod; import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.registries.ForgeRegistries; import net.minecraftforge.registries.ForgeRegistries;
import net.minecraftforge.registries.MissingMappingsEvent;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicBoolean;
@ -924,4 +927,13 @@ public class GunEventHandler {
GunsTool.setGunBooleanTag(stack, "Charging", false); GunsTool.setGunBooleanTag(stack, "Charging", false);
} }
} }
@SubscribeEvent
public static void onMissingMappings(MissingMappingsEvent event) {
for (MissingMappingsEvent.Mapping<Item> mapping : event.getAllMappings(Registries.ITEM)) {
if (ModUtils.MODID.equals(mapping.getKey().getNamespace()) && mapping.getKey().getPath().equals("abekiri")) {
mapping.remap(ModItems.HOMEMADE_SHOTGUN.get());
}
}
}
} }

View file

@ -18,7 +18,7 @@ import com.atsuishio.superbwarfare.item.gun.machinegun.MinigunItem;
import com.atsuishio.superbwarfare.item.gun.machinegun.RpkItem; import com.atsuishio.superbwarfare.item.gun.machinegun.RpkItem;
import com.atsuishio.superbwarfare.item.gun.rifle.*; import com.atsuishio.superbwarfare.item.gun.rifle.*;
import com.atsuishio.superbwarfare.item.gun.shotgun.Aa12Item; import com.atsuishio.superbwarfare.item.gun.shotgun.Aa12Item;
import com.atsuishio.superbwarfare.item.gun.shotgun.AbekiriItem; import com.atsuishio.superbwarfare.item.gun.shotgun.HomemadeShotgunItem;
import com.atsuishio.superbwarfare.item.gun.shotgun.M870Item; import com.atsuishio.superbwarfare.item.gun.shotgun.M870Item;
import com.atsuishio.superbwarfare.item.gun.smg.VectorItem; import com.atsuishio.superbwarfare.item.gun.smg.VectorItem;
import com.atsuishio.superbwarfare.item.gun.sniper.*; import com.atsuishio.superbwarfare.item.gun.sniper.*;
@ -51,7 +51,7 @@ public class ModItems {
public static final RegistryObject<Item> GLOCK_18 = GUNS.register("glock_18", Glock18Item::new); public static final RegistryObject<Item> GLOCK_18 = GUNS.register("glock_18", Glock18Item::new);
public static final RegistryObject<Item> MP_443 = GUNS.register("mp_443", Mp443Item::new); public static final RegistryObject<Item> MP_443 = GUNS.register("mp_443", Mp443Item::new);
public static final RegistryObject<Item> M_1911 = GUNS.register("m_1911", M1911Item::new); public static final RegistryObject<Item> M_1911 = GUNS.register("m_1911", M1911Item::new);
public static final RegistryObject<Item> ABEKIRI = GUNS.register("abekiri", AbekiriItem::new); public static final RegistryObject<Item> HOMEMADE_SHOTGUN = GUNS.register("homemade_shotgun", HomemadeShotgunItem::new);
public static final RegistryObject<Item> TRACHELIUM = GUNS.register("trachelium", Trachelium::new); public static final RegistryObject<Item> TRACHELIUM = GUNS.register("trachelium", Trachelium::new);
public static final RegistryObject<Item> VECTOR = GUNS.register("vector", VectorItem::new); public static final RegistryObject<Item> VECTOR = GUNS.register("vector", VectorItem::new);
public static final RegistryObject<Item> AK_47 = GUNS.register("ak_47", AK47Item::new); public static final RegistryObject<Item> AK_47 = GUNS.register("ak_47", AK47Item::new);

View file

@ -70,12 +70,12 @@ public class ModSounds {
public static final RegistryObject<SoundEvent> SKS_FAR = REGISTRY.register("sks_far", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("sks_far"))); public static final RegistryObject<SoundEvent> SKS_FAR = REGISTRY.register("sks_far", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("sks_far")));
public static final RegistryObject<SoundEvent> SKS_VERYFAR = REGISTRY.register("sks_veryfar", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("sks_veryfar"))); public static final RegistryObject<SoundEvent> SKS_VERYFAR = REGISTRY.register("sks_veryfar", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("sks_veryfar")));
public static final RegistryObject<SoundEvent> ABEKIRI_FIRE_1P = REGISTRY.register("abekiri_fire_1p", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("abekiri_fire_1p"))); public static final RegistryObject<SoundEvent> HOMEMADE_SHOTGUN_FIRE_1P = REGISTRY.register("homemade_shotgun_fire_1p", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("homemade_shotgun_fire_1p")));
public static final RegistryObject<SoundEvent> ABEKIRI_FIRE_3P = REGISTRY.register("abekiri_fire_3p", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("abekiri_fire_3p"))); public static final RegistryObject<SoundEvent> HOMEMADE_SHOTGUN_FIRE_3P = REGISTRY.register("homemade_shotgun_fire_3p", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("homemade_shotgun_fire_3p")));
public static final RegistryObject<SoundEvent> ABEKIRI_FAR = REGISTRY.register("abekiri_far", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("abekiri_far"))); public static final RegistryObject<SoundEvent> HOMEMADE_SHOTGUN_FAR = REGISTRY.register("homemade_shotgun_far", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("homemade_shotgun_far")));
public static final RegistryObject<SoundEvent> ABEKIRI_VERYFAR = REGISTRY.register("abekiri_veryfar", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("abekiri_veryfar"))); public static final RegistryObject<SoundEvent> HOMEMADE_SHOTGUN_VERYFAR = REGISTRY.register("homemade_shotgun_veryfar", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("homemade_shotgun_veryfar")));
public static final RegistryObject<SoundEvent> ABEKIRI_RELOAD_NORMAL = REGISTRY.register("abekiri_reload_normal", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("abekiri_reload_normal"))); public static final RegistryObject<SoundEvent> HOMEMADE_SHOTGUN_NORMAL = REGISTRY.register("homemade_shotgun_reload_normal", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("homemade_shotgun_reload_normal")));
public static final RegistryObject<SoundEvent> ABEKIRI_RELOAD_EMPTY = REGISTRY.register("abekiri_reload_empty", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("abekiri_reload_empty"))); public static final RegistryObject<SoundEvent> HOMEMADE_SHOTGUN_RELOAD_EMPTY = REGISTRY.register("homemade_shotgun_reload_empty", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("homemade_shotgun_reload_empty")));
public static final RegistryObject<SoundEvent> AK_47_FIRE_1P = REGISTRY.register("ak_47_fire_1p", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("ak_47_fire_1p"))); public static final RegistryObject<SoundEvent> AK_47_FIRE_1P = REGISTRY.register("ak_47_fire_1p", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("ak_47_fire_1p")));
public static final RegistryObject<SoundEvent> AK_47_FIRE_3P = REGISTRY.register("ak_47_fire_3p", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("ak_47_fire_3p"))); public static final RegistryObject<SoundEvent> AK_47_FIRE_3P = REGISTRY.register("ak_47_fire_3p", () -> SoundEvent.createVariableRangeEvent(ModUtils.loc("ak_47_fire_3p")));

View file

@ -15,7 +15,7 @@ import com.atsuishio.superbwarfare.item.gun.machinegun.MinigunItem;
import com.atsuishio.superbwarfare.item.gun.machinegun.RpkItem; import com.atsuishio.superbwarfare.item.gun.machinegun.RpkItem;
import com.atsuishio.superbwarfare.item.gun.rifle.*; import com.atsuishio.superbwarfare.item.gun.rifle.*;
import com.atsuishio.superbwarfare.item.gun.shotgun.Aa12Item; import com.atsuishio.superbwarfare.item.gun.shotgun.Aa12Item;
import com.atsuishio.superbwarfare.item.gun.shotgun.AbekiriItem; import com.atsuishio.superbwarfare.item.gun.shotgun.HomemadeShotgunItem;
import com.atsuishio.superbwarfare.item.gun.shotgun.M870Item; import com.atsuishio.superbwarfare.item.gun.shotgun.M870Item;
import com.atsuishio.superbwarfare.item.gun.smg.VectorItem; import com.atsuishio.superbwarfare.item.gun.smg.VectorItem;
import com.atsuishio.superbwarfare.item.gun.sniper.*; import com.atsuishio.superbwarfare.item.gun.sniper.*;
@ -57,7 +57,7 @@ public class ModTabs {
output.accept(Glock18Item.getGunInstance()); output.accept(Glock18Item.getGunInstance());
output.accept(M1911Item.getGunInstance()); output.accept(M1911Item.getGunInstance());
output.accept(Mp443Item.getGunInstance()); output.accept(Mp443Item.getGunInstance());
output.accept(AbekiriItem.getGunInstance()); output.accept(HomemadeShotgunItem.getGunInstance());
output.accept(Trachelium.getGunInstance()); output.accept(Trachelium.getGunInstance());
output.accept(VectorItem.getGunInstance()); output.accept(VectorItem.getGunInstance());
output.accept(SksItem.getGunInstance()); output.accept(SksItem.getGunInstance());

View file

@ -41,17 +41,17 @@ import java.util.Optional;
import java.util.Set; import java.util.Set;
import java.util.function.Consumer; import java.util.function.Consumer;
public class AbekiriItem extends GunItem implements GeoItem { public class HomemadeShotgunItem extends GunItem implements GeoItem {
private final AnimatableInstanceCache cache = GeckoLibUtil.createInstanceCache(this); private final AnimatableInstanceCache cache = GeckoLibUtil.createInstanceCache(this);
public static ItemDisplayContext transformType; public static ItemDisplayContext transformType;
@Override @Override
public Set<SoundEvent> getReloadSound() { public Set<SoundEvent> getReloadSound() {
return Set.of(ModSounds.ABEKIRI_RELOAD_EMPTY.get(), ModSounds.ABEKIRI_RELOAD_NORMAL.get()); return Set.of(ModSounds.HOMEMADE_SHOTGUN_RELOAD_EMPTY.get(), ModSounds.HOMEMADE_SHOTGUN_NORMAL.get());
} }
public AbekiriItem() { public HomemadeShotgunItem() {
super(new Item.Properties().durability(24).rarity(Rarity.COMMON)); super(new Item.Properties().durability(24).rarity(Rarity.COMMON));
} }
@ -77,7 +77,7 @@ public class AbekiriItem extends GunItem implements GeoItem {
transformType = type; transformType = type;
} }
private PlayState idlePredicate(AnimationState<AbekiriItem> event) { private PlayState idlePredicate(AnimationState<HomemadeShotgunItem> event) {
LocalPlayer player = Minecraft.getInstance().player; LocalPlayer player = Minecraft.getInstance().player;
if (player == null) return PlayState.STOP; if (player == null) return PlayState.STOP;
ItemStack stack = player.getMainHandItem(); ItemStack stack = player.getMainHandItem();
@ -114,19 +114,19 @@ public class AbekiriItem extends GunItem implements GeoItem {
} }
public static ItemStack getGunInstance() { public static ItemStack getGunInstance() {
ItemStack stack = new ItemStack(ModItems.ABEKIRI.get()); ItemStack stack = new ItemStack(ModItems.HOMEMADE_SHOTGUN.get());
GunsTool.initCreativeGun(stack, ModItems.ABEKIRI.getId().getPath()); GunsTool.initCreativeGun(stack, ModItems.HOMEMADE_SHOTGUN.getId().getPath());
return stack; return stack;
} }
@Override @Override
public ResourceLocation getGunIcon() { public ResourceLocation getGunIcon() {
return ModUtils.loc("textures/gun_icon/abekiri_icon.png"); return ModUtils.loc("textures/gun_icon/homemade_shotgun_icon.png");
} }
@Override @Override
public String getGunDisplayName() { public String getGunDisplayName() {
return "Abekiri"; return "Homemade Shotgun";
} }
@Override @Override

View file

@ -79,7 +79,7 @@ public class ShootMessage {
GunsTool.setGunBooleanTag(stack, "HideBulletChain", true); GunsTool.setGunBooleanTag(stack, "HideBulletChain", true);
} }
if (stack.getItem() == ModItems.ABEKIRI.get()) { if (stack.getItem() == ModItems.HOMEMADE_SHOTGUN.get()) {
stack.hurtAndBreak(1, player, p -> p.broadcastBreakEvent(InteractionHand.MAIN_HAND)); stack.hurtAndBreak(1, player, p -> p.broadcastBreakEvent(InteractionHand.MAIN_HAND));
if (player instanceof ServerPlayer serverPlayer && player.level() instanceof ServerLevel serverLevel) { if (player instanceof ServerPlayer serverPlayer && player.level() instanceof ServerLevel serverLevel) {
ParticleTool.sendParticle(serverLevel, ParticleTypes.CLOUD, player.getX() + 1.8 * player.getLookAngle().x, player.getY() + player.getBbHeight() - 0.1 + 1.8 * player.getLookAngle().y, ParticleTool.sendParticle(serverLevel, ParticleTypes.CLOUD, player.getX() + 1.8 * player.getLookAngle().x, player.getY() + player.getBbHeight() - 0.1 + 1.8 * player.getLookAngle().y,

View file

@ -223,50 +223,50 @@
} }
] ]
}, },
"abekiri_fire_1p": { "homemade_shotgun_fire_1p": {
"sounds": [ "sounds": [
{ {
"name": "superbwarfare:abekiri/abekiri_fire_1p", "name": "superbwarfare:homemade_shotgun/homemade_shotgun_fire_1p",
"stream": false "stream": false
} }
] ]
}, },
"abekiri_fire_3p": { "homemade_shotgun_fire_3p": {
"sounds": [ "sounds": [
{ {
"name": "superbwarfare:abekiri/abekiri_fire_3p", "name": "superbwarfare:homemade_shotgun/homemade_shotgun_fire_3p",
"stream": false "stream": false
} }
] ]
}, },
"abekiri_far": { "homemade_shotgun_far": {
"sounds": [ "sounds": [
{ {
"name": "superbwarfare:abekiri/abekiri_far", "name": "superbwarfare:homemade_shotgun/homemade_shotgun_far",
"stream": false "stream": false
} }
] ]
}, },
"abekiri_veryfar": { "homemade_shotgun_veryfar": {
"sounds": [ "sounds": [
{ {
"name": "superbwarfare:abekiri/abekiri_veryfar", "name": "superbwarfare:homemade_shotgun/homemade_shotgun_veryfar",
"stream": false "stream": false
} }
] ]
}, },
"abekiri_reload_normal": { "homemade_shotgun_reload_normal": {
"sounds": [ "sounds": [
{ {
"name": "superbwarfare:abekiri/abekiri_reload_normal", "name": "superbwarfare:homemade_shotgun/homemade_shotgun_reload_normal",
"stream": false "stream": false
} }
] ]
}, },
"abekiri_reload_empty": { "homemade_shotgun_reload_empty": {
"sounds": [ "sounds": [
{ {
"name": "superbwarfare:abekiri/abekiri_reload_empty", "name": "superbwarfare:homemade_shotgun/homemade_shotgun_reload_empty",
"stream": false "stream": false
} }
] ]