From 30be20c0b067f9541c0c9dc83147d9372567d7e2 Mon Sep 17 00:00:00 2001 From: Atsuishio <842960157@qq.com> Date: Tue, 6 May 2025 16:27:05 +0800 Subject: [PATCH] =?UTF-8?q?=E9=80=82=E9=85=8D=E6=9B=B4=E5=A4=9A=E7=A7=BB?= =?UTF-8?q?=E5=8A=A8=E9=9F=B3=E6=95=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../client/LoudlyEntitySoundInstance.java | 115 ++++++++++++++++++ .../client/PlayerSoundInstance.java | 37 ------ .../client/VehicleSoundInstance.java | 14 +++ .../superbwarfare/entity/LoudlyEntity.java | 11 ++ .../entity/projectile/CannonShellEntity.java | 19 ++- .../entity/projectile/HeliRocketEntity.java | 19 ++- .../projectile/JavelinMissileEntity.java | 19 ++- .../entity/projectile/MortarShellEntity.java | 20 ++- .../entity/projectile/RpgRocketEntity.java | 19 ++- .../entity/projectile/SwarmDroneEntity.java | 19 ++- .../entity/projectile/WgMissileEntity.java | 19 ++- .../entity/vehicle/DroneEntity.java | 38 +++--- .../vehicle/base/MobileVehicleEntity.java | 7 +- .../event/ClientSoundHandler.java | 73 +---------- .../superbwarfare/init/ModSounds.java | 3 + .../assets/superbwarfare/sounds.json | 32 ++++- .../superbwarfare/sounds/drone_sound.ogg | Bin 4622 -> 10764 bytes .../superbwarfare/sounds/rocket_engine.ogg | Bin 0 -> 10618 bytes .../superbwarfare/sounds/rocket_fly.ogg | Bin 0 -> 48510 bytes .../assets/superbwarfare/sounds/shell_fly.ogg | Bin 0 -> 22171 bytes 20 files changed, 330 insertions(+), 134 deletions(-) create mode 100644 src/main/java/com/atsuishio/superbwarfare/client/LoudlyEntitySoundInstance.java delete mode 100644 src/main/java/com/atsuishio/superbwarfare/client/PlayerSoundInstance.java create mode 100644 src/main/java/com/atsuishio/superbwarfare/entity/LoudlyEntity.java create mode 100644 src/main/resources/assets/superbwarfare/sounds/rocket_engine.ogg create mode 100644 src/main/resources/assets/superbwarfare/sounds/rocket_fly.ogg create mode 100644 src/main/resources/assets/superbwarfare/sounds/shell_fly.ogg diff --git a/src/main/java/com/atsuishio/superbwarfare/client/LoudlyEntitySoundInstance.java b/src/main/java/com/atsuishio/superbwarfare/client/LoudlyEntitySoundInstance.java new file mode 100644 index 000000000..f21105a9d --- /dev/null +++ b/src/main/java/com/atsuishio/superbwarfare/client/LoudlyEntitySoundInstance.java @@ -0,0 +1,115 @@ +package com.atsuishio.superbwarfare.client; + +import com.atsuishio.superbwarfare.entity.LoudlyEntity; +import net.minecraft.client.Minecraft; +import net.minecraft.client.resources.sounds.AbstractTickableSoundInstance; +import net.minecraft.sounds.SoundEvent; +import net.minecraft.sounds.SoundSource; +import net.minecraft.world.entity.Entity; + +public abstract class LoudlyEntitySoundInstance extends AbstractTickableSoundInstance { + private final Minecraft client; + private final Entity entity; + private double lastDistance; + private int fade = 0; + private boolean die = false; + + public LoudlyEntitySoundInstance(SoundEvent sound, Minecraft client, Entity entity) { + super(sound, SoundSource.AMBIENT, entity.getCommandSenderWorld().getRandom()); + this.client = client; + this.entity = entity; + this.looping = true; + this.delay = 0; + } + + protected abstract boolean canPlay(Entity entity); + + protected abstract float getPitch(Entity entity); + + protected abstract float getVolume(Entity entity); + @Override + public void tick() { + var player = this.client.player; + if (entity.isRemoved() || player == null) { + this.stop(); + return; + } else if (!this.canPlay(entity)) { + this.die = true; + } + + if (this.die) { + if (this.fade > 0) this.fade--; + else if (this.fade == 0) { + this.stop(); + return; + } + } else if (this.fade < 3) { + this.fade++; + } + + this.volume = this.getVolume(this.entity) * fade; + + this.x = this.entity.getX(); + this.y = this.entity.getY(); + this.z = this.entity.getZ(); + + this.pitch = this.getPitch(this.entity); + + if (player.getVehicle() != this.entity) { + double distance = this.entity.position().subtract(player.position()).length(); + this.pitch += (float) (0.16 * java.lang.Math.atan(lastDistance - distance)); + + this.lastDistance = distance; + } else { + this.lastDistance = 0; + } + } + + public static class EntitySound extends LoudlyEntitySoundInstance { + public EntitySound(Entity entity) { + super(entity instanceof LoudlyEntity loudlyEntity ? loudlyEntity.getSound() : null, Minecraft.getInstance(), entity); + } + + @Override + protected boolean canPlay(Entity entity) { + return true; + } + + @Override + protected float getPitch(Entity entity) { + return 1; + } + + @Override + protected float getVolume(Entity entity) { + if (entity instanceof LoudlyEntity loudlyEntity) { + return loudlyEntity.getVolume(); + } + return 0; + } + } + + public static class EntitySoundClose extends LoudlyEntitySoundInstance { + public EntitySoundClose(Entity entity) { + super(entity instanceof LoudlyEntity loudlyEntity ? loudlyEntity.getCloseSound() : null, Minecraft.getInstance(), entity); + } + + @Override + protected boolean canPlay(Entity entity) { + return true; + } + + @Override + protected float getPitch(Entity entity) { + return 1; + } + + @Override + protected float getVolume(Entity entity) { + if (entity instanceof LoudlyEntity loudlyEntity) { + return loudlyEntity.getVolume() * 1.5f; + } + return 0; + } + } +} diff --git a/src/main/java/com/atsuishio/superbwarfare/client/PlayerSoundInstance.java b/src/main/java/com/atsuishio/superbwarfare/client/PlayerSoundInstance.java deleted file mode 100644 index ce0a21c65..000000000 --- a/src/main/java/com/atsuishio/superbwarfare/client/PlayerSoundInstance.java +++ /dev/null @@ -1,37 +0,0 @@ -package com.atsuishio.superbwarfare.client; - -import com.atsuishio.superbwarfare.entity.vehicle.Tom6Entity; -import net.minecraft.client.player.LocalPlayer; -import net.minecraft.client.resources.sounds.AbstractTickableSoundInstance; -import net.minecraft.client.resources.sounds.SoundInstance; -import net.minecraft.sounds.SoundEvents; -import net.minecraft.sounds.SoundSource; -import net.minecraft.util.Mth; - -public class PlayerSoundInstance extends AbstractTickableSoundInstance { - private final LocalPlayer player; - - public PlayerSoundInstance(LocalPlayer pPlayer) { - super(SoundEvents.ELYTRA_FLYING, SoundSource.PLAYERS, SoundInstance.createUnseededRandom()); - this.player = pPlayer; - this.looping = true; - this.delay = 0; - this.volume = 0.1F; - } - - public void tick() { - if (!this.player.isRemoved() && (this.player.getVehicle() instanceof Tom6Entity tom6Entity)) { - this.x = player.getX(); - this.y = player.getY(); - this.z = player.getZ(); - float $$0 = (float)tom6Entity.getDeltaMovement().lengthSqr(); - if ((double)$$0 >= 1.0E-7) { - this.volume = Mth.clamp($$0 / 4.0F, 0.0F, 1.0F); - } else { - this.volume = 0.0F; - } - } else { - this.stop(); - } - } -} diff --git a/src/main/java/com/atsuishio/superbwarfare/client/VehicleSoundInstance.java b/src/main/java/com/atsuishio/superbwarfare/client/VehicleSoundInstance.java index f0fe107c3..14b92d1fa 100644 --- a/src/main/java/com/atsuishio/superbwarfare/client/VehicleSoundInstance.java +++ b/src/main/java/com/atsuishio/superbwarfare/client/VehicleSoundInstance.java @@ -1,12 +1,17 @@ package com.atsuishio.superbwarfare.client; +import com.atsuishio.superbwarfare.entity.vehicle.DroneEntity; import com.atsuishio.superbwarfare.entity.vehicle.base.MobileVehicleEntity; +import com.atsuishio.superbwarfare.init.ModItems; import com.atsuishio.superbwarfare.init.ModSounds; +import com.atsuishio.superbwarfare.tools.EntityFindUtil; +import com.atsuishio.superbwarfare.tools.NBTTool; import net.minecraft.client.Minecraft; import net.minecraft.client.resources.sounds.AbstractTickableSoundInstance; import net.minecraft.sounds.SoundEvent; import net.minecraft.sounds.SoundSource; import net.minecraft.util.Mth; +import net.minecraft.world.item.ItemStack; public abstract class VehicleSoundInstance extends AbstractTickableSoundInstance { private final Minecraft client; @@ -28,6 +33,7 @@ public abstract class VehicleSoundInstance extends AbstractTickableSoundInstance protected abstract float getPitch(MobileVehicleEntity mobileVehicle); protected abstract float getVolume(MobileVehicleEntity mobileVehicle); + @Override public void tick() { var player = this.client.player; @@ -64,6 +70,14 @@ public abstract class VehicleSoundInstance extends AbstractTickableSoundInstance } else { this.lastDistance = 0; } + + ItemStack stack = player.getMainHandItem(); + if (stack.is(ModItems.MONITOR.get()) && NBTTool.getTag(stack).getBoolean("Using")) { + DroneEntity drone = EntityFindUtil.findDrone(player.level(), NBTTool.getTag(stack).getString("LinkedDrone")); + if (this.mobileVehicle == drone) { + pitch = 1; + } + } } public static class EngineSound extends VehicleSoundInstance { diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/LoudlyEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/LoudlyEntity.java new file mode 100644 index 000000000..c3433a249 --- /dev/null +++ b/src/main/java/com/atsuishio/superbwarfare/entity/LoudlyEntity.java @@ -0,0 +1,11 @@ +package com.atsuishio.superbwarfare.entity; + +import net.minecraft.sounds.SoundEvent; + +public interface LoudlyEntity { + + SoundEvent getCloseSound (); + SoundEvent getSound (); + + float getVolume(); +} diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/CannonShellEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/CannonShellEntity.java index 98b5b4bea..4bc9c49f0 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/CannonShellEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/CannonShellEntity.java @@ -1,6 +1,7 @@ package com.atsuishio.superbwarfare.entity.projectile; import com.atsuishio.superbwarfare.config.server.ExplosionConfig; +import com.atsuishio.superbwarfare.entity.LoudlyEntity; import com.atsuishio.superbwarfare.entity.vehicle.base.VehicleEntity; import com.atsuishio.superbwarfare.init.*; import com.atsuishio.superbwarfare.network.message.receive.ClientIndicatorMessage; @@ -15,6 +16,7 @@ import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.ListTag; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; +import net.minecraft.sounds.SoundEvent; import net.minecraft.sounds.SoundSource; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; @@ -40,7 +42,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import java.util.HashSet; import java.util.Set; -public class CannonShellEntity extends FastThrowableProjectile implements GeoEntity { +public class CannonShellEntity extends FastThrowableProjectile implements GeoEntity, LoudlyEntity { private final AnimatableInstanceCache cache = GeckoLibUtil.createInstanceCache(this); private float damage = 0; @@ -332,4 +334,19 @@ public class CannonShellEntity extends FastThrowableProjectile implements GeoEnt } super.onRemovedFromLevel(); } + + @Override + public SoundEvent getCloseSound() { + return null; + } + + @Override + public SoundEvent getSound() { + return ModSounds.SHELL_FLY.get(); + } + + @Override + public float getVolume() { + return 0.07f; + } } diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/HeliRocketEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/HeliRocketEntity.java index 5ac124edc..0bf2f52d5 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/HeliRocketEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/HeliRocketEntity.java @@ -1,6 +1,7 @@ package com.atsuishio.superbwarfare.entity.projectile; import com.atsuishio.superbwarfare.config.server.ExplosionConfig; +import com.atsuishio.superbwarfare.entity.LoudlyEntity; import com.atsuishio.superbwarfare.init.ModDamageTypes; import com.atsuishio.superbwarfare.init.ModEntities; import com.atsuishio.superbwarfare.init.ModItems; @@ -11,6 +12,7 @@ import com.atsuishio.superbwarfare.tools.ParticleTool; import net.minecraft.core.particles.ParticleTypes; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; +import net.minecraft.sounds.SoundEvent; import net.minecraft.sounds.SoundSource; import net.minecraft.world.damagesource.DamageSource; import net.minecraft.world.entity.Entity; @@ -32,7 +34,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import javax.annotation.Nullable; -public class HeliRocketEntity extends FastThrowableProjectile implements GeoEntity { +public class HeliRocketEntity extends FastThrowableProjectile implements GeoEntity, LoudlyEntity { private final AnimatableInstanceCache cache = GeckoLibUtil.createInstanceCache(this); private float damage = 140f; @@ -162,4 +164,19 @@ public class HeliRocketEntity extends FastThrowableProjectile implements GeoEnti public AnimatableInstanceCache getAnimatableInstanceCache() { return this.cache; } + + @Override + public SoundEvent getCloseSound() { + return ModSounds.ROCKET_ENGINE.get(); + } + + @Override + public SoundEvent getSound() { + return ModSounds.ROCKET_FLY.get(); + } + + @Override + public float getVolume() { + return 0.1f; + } } diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/JavelinMissileEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/JavelinMissileEntity.java index f6e937a7c..88d3b3d6c 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/JavelinMissileEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/JavelinMissileEntity.java @@ -1,6 +1,7 @@ package com.atsuishio.superbwarfare.entity.projectile; import com.atsuishio.superbwarfare.config.server.ExplosionConfig; +import com.atsuishio.superbwarfare.entity.LoudlyEntity; import com.atsuishio.superbwarfare.entity.vehicle.base.VehicleEntity; import com.atsuishio.superbwarfare.init.ModDamageTypes; import com.atsuishio.superbwarfare.init.ModEntities; @@ -16,6 +17,7 @@ import net.minecraft.network.syncher.EntityDataSerializers; import net.minecraft.network.syncher.SynchedEntityData; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; +import net.minecraft.sounds.SoundEvent; import net.minecraft.sounds.SoundEvents; import net.minecraft.sounds.SoundSource; import net.minecraft.util.Mth; @@ -48,7 +50,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import java.util.List; -public class JavelinMissileEntity extends FastThrowableProjectile implements GeoEntity, DestroyableProjectileEntity { +public class JavelinMissileEntity extends FastThrowableProjectile implements GeoEntity, DestroyableProjectileEntity, LoudlyEntity { public static final EntityDataAccessor HEALTH = SynchedEntityData.defineId(JavelinMissileEntity.class, EntityDataSerializers.FLOAT); public static final EntityDataAccessor TARGET_UUID = SynchedEntityData.defineId(JavelinMissileEntity.class, EntityDataSerializers.STRING); public static final EntityDataAccessor TOP = SynchedEntityData.defineId(JavelinMissileEntity.class, EntityDataSerializers.BOOLEAN); @@ -371,4 +373,19 @@ public class JavelinMissileEntity extends FastThrowableProjectile implements Geo public boolean shouldSyncMotion() { return true; } + + @Override + public SoundEvent getCloseSound() { + return ModSounds.ROCKET_ENGINE.get(); + } + + @Override + public SoundEvent getSound() { + return ModSounds.ROCKET_FLY.get(); + } + + @Override + public float getVolume() { + return 0.4f; + } } diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/MortarShellEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/MortarShellEntity.java index 03f4da3c3..1e3e1566d 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/MortarShellEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/MortarShellEntity.java @@ -1,9 +1,11 @@ package com.atsuishio.superbwarfare.entity.projectile; import com.atsuishio.superbwarfare.config.server.ExplosionConfig; +import com.atsuishio.superbwarfare.entity.LoudlyEntity; import com.atsuishio.superbwarfare.init.ModDamageTypes; import com.atsuishio.superbwarfare.init.ModEntities; import com.atsuishio.superbwarfare.init.ModItems; +import com.atsuishio.superbwarfare.init.ModSounds; import com.atsuishio.superbwarfare.tools.ChunkLoadTool; import com.atsuishio.superbwarfare.tools.CustomExplosion; import com.atsuishio.superbwarfare.tools.ParticleTool; @@ -16,6 +18,7 @@ import net.minecraft.nbt.CompoundTag; import net.minecraft.nbt.ListTag; import net.minecraft.resources.ResourceLocation; import net.minecraft.server.level.ServerLevel; +import net.minecraft.sounds.SoundEvent; import net.minecraft.world.effect.MobEffectInstance; import net.minecraft.world.entity.AreaEffectCloud; import net.minecraft.world.entity.Entity; @@ -44,7 +47,7 @@ import java.util.HashSet; import java.util.Objects; import java.util.Set; -public class MortarShellEntity extends FastThrowableProjectile implements GeoEntity { +public class MortarShellEntity extends FastThrowableProjectile implements GeoEntity, LoudlyEntity { private float damage = ExplosionConfig.MORTAR_SHELL_EXPLOSION_DAMAGE.get(); private int life = 600; @@ -280,4 +283,19 @@ public class MortarShellEntity extends FastThrowableProjectile implements GeoEnt } level.addFreshEntity(cloud); } + + @Override + public SoundEvent getCloseSound() { + return null; + } + + @Override + public SoundEvent getSound() { + return ModSounds.SHELL_FLY.get(); + } + + @Override + public float getVolume() { + return 0.06f; + } } diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/RpgRocketEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/RpgRocketEntity.java index 6f9ca50c4..62b9a3500 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/RpgRocketEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/RpgRocketEntity.java @@ -1,5 +1,6 @@ package com.atsuishio.superbwarfare.entity.projectile; +import com.atsuishio.superbwarfare.entity.LoudlyEntity; import com.atsuishio.superbwarfare.init.ModDamageTypes; import com.atsuishio.superbwarfare.init.ModEntities; import com.atsuishio.superbwarfare.init.ModItems; @@ -11,6 +12,7 @@ import net.minecraft.core.BlockPos; import net.minecraft.core.particles.ParticleTypes; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; +import net.minecraft.sounds.SoundEvent; import net.minecraft.sounds.SoundSource; import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.EntityType; @@ -30,7 +32,7 @@ import software.bernie.geckolib.animatable.instance.AnimatableInstanceCache; import software.bernie.geckolib.animation.*; import software.bernie.geckolib.util.GeckoLibUtil; -public class RpgRocketEntity extends FastThrowableProjectile implements GeoEntity { +public class RpgRocketEntity extends FastThrowableProjectile implements GeoEntity, LoudlyEntity { private final AnimatableInstanceCache cache = GeckoLibUtil.createInstanceCache(this); @@ -193,4 +195,19 @@ public class RpgRocketEntity extends FastThrowableProjectile implements GeoEntit public boolean shouldSyncMotion() { return true; } + + @Override + public SoundEvent getCloseSound() { + return ModSounds.ROCKET_ENGINE.get(); + } + + @Override + public SoundEvent getSound() { + return ModSounds.ROCKET_FLY.get(); + } + + @Override + public float getVolume() { + return 0.2f; + } } diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/SwarmDroneEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/SwarmDroneEntity.java index 173e2d656..47755055f 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/SwarmDroneEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/SwarmDroneEntity.java @@ -1,6 +1,7 @@ package com.atsuishio.superbwarfare.entity.projectile; import com.atsuishio.superbwarfare.config.server.ExplosionConfig; +import com.atsuishio.superbwarfare.entity.LoudlyEntity; import com.atsuishio.superbwarfare.init.ModDamageTypes; import com.atsuishio.superbwarfare.init.ModEntities; import com.atsuishio.superbwarfare.init.ModItems; @@ -17,6 +18,7 @@ import net.minecraft.network.syncher.EntityDataSerializers; import net.minecraft.network.syncher.SynchedEntityData; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; +import net.minecraft.sounds.SoundEvent; import net.minecraft.sounds.SoundSource; import net.minecraft.util.Mth; import net.minecraft.world.damagesource.DamageSource; @@ -43,7 +45,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import javax.annotation.Nullable; import java.util.List; -public class SwarmDroneEntity extends FastThrowableProjectile implements GeoEntity, DestroyableProjectileEntity { +public class SwarmDroneEntity extends FastThrowableProjectile implements GeoEntity, DestroyableProjectileEntity, LoudlyEntity { public static final EntityDataAccessor TARGET_UUID = SynchedEntityData.defineId(SwarmDroneEntity.class, EntityDataSerializers.STRING); public static final EntityDataAccessor TARGET_X = SynchedEntityData.defineId(SwarmDroneEntity.class, EntityDataSerializers.FLOAT); @@ -287,4 +289,19 @@ public class SwarmDroneEntity extends FastThrowableProjectile implements GeoEnti public boolean shouldSyncMotion() { return true; } + + @Override + public SoundEvent getCloseSound() { + return null; + } + + @Override + public SoundEvent getSound() { + return ModSounds.DRONE_SOUND.get(); + } + + @Override + public float getVolume() { + return 0.07f; + } } diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/WgMissileEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/WgMissileEntity.java index dfb2ec359..5cef0c2a5 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/projectile/WgMissileEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/projectile/WgMissileEntity.java @@ -1,6 +1,7 @@ package com.atsuishio.superbwarfare.entity.projectile; import com.atsuishio.superbwarfare.config.server.ExplosionConfig; +import com.atsuishio.superbwarfare.entity.LoudlyEntity; import com.atsuishio.superbwarfare.entity.vehicle.base.VehicleEntity; import com.atsuishio.superbwarfare.init.ModDamageTypes; import com.atsuishio.superbwarfare.init.ModEntities; @@ -17,6 +18,7 @@ import net.minecraft.network.syncher.EntityDataSerializers; import net.minecraft.network.syncher.SynchedEntityData; import net.minecraft.server.level.ServerLevel; import net.minecraft.server.level.ServerPlayer; +import net.minecraft.sounds.SoundEvent; import net.minecraft.sounds.SoundSource; import net.minecraft.world.damagesource.DamageSource; import net.minecraft.world.damagesource.DamageTypes; @@ -42,7 +44,7 @@ import software.bernie.geckolib.util.GeckoLibUtil; import javax.annotation.Nullable; -public class WgMissileEntity extends FastThrowableProjectile implements GeoEntity, DestroyableProjectileEntity { +public class WgMissileEntity extends FastThrowableProjectile implements GeoEntity, DestroyableProjectileEntity, LoudlyEntity { public static final EntityDataAccessor HEALTH = SynchedEntityData.defineId(WgMissileEntity.class, EntityDataSerializers.FLOAT); private final AnimatableInstanceCache cache = GeckoLibUtil.createInstanceCache(this); @@ -234,4 +236,19 @@ public class WgMissileEntity extends FastThrowableProjectile implements GeoEntit public boolean shouldSyncMotion() { return true; } + + @Override + public SoundEvent getCloseSound() { + return ModSounds.ROCKET_ENGINE.get(); + } + + @Override + public SoundEvent getSound() { + return ModSounds.ROCKET_FLY.get(); + } + + @Override + public float getVolume() { + return 0.4f; + } } diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/DroneEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/DroneEntity.java index 8bcb9dcdc..02ab0be0f 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/DroneEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/DroneEntity.java @@ -187,9 +187,9 @@ public class DroneEntity extends MobileVehicleEntity implements GeoEntity { ItemStack stack = controller.getMainHandItem(); var tag = NBTTool.getTag(stack); if (stack.is(ModItems.MONITOR.get()) && tag.getBoolean("Using")) { - if (controller.level().isClientSide) { - controller.playSound(ModSounds.DRONE_SOUND.get(), 114, 1); - } +// if (controller.level().isClientSide) { +// controller.playSound(ModSounds.DRONE_SOUND.get(), 114, 1); +// } } else { upInputDown = false; downInputDown = false; @@ -395,7 +395,7 @@ public class DroneEntity extends MobileVehicleEntity implements GeoEntity { holdTickZ = 0; } - this.setDeltaMovement(this.getDeltaMovement().multiply(0.94, 0.55, 0.94)); + this.setDeltaMovement(this.getDeltaMovement().multiply(0.97, 0.94, 0.97)); } else { this.setDeltaMovement(this.getDeltaMovement().multiply(0.8, 1, 0.8)); this.setZRot(this.roll * 0.7f); @@ -413,28 +413,36 @@ public class DroneEntity extends MobileVehicleEntity implements GeoEntity { if (up) { holdTickY++; - this.entityData.set(POWER, Math.min(this.entityData.get(POWER) + 0.06f * Math.min(holdTickY, 5), 0.9f)); + this.entityData.set(POWER, Math.min(this.entityData.get(POWER) + 0.02f * Math.min(holdTickY, 5), 0.4f)); } else if (down) { holdTickY++; - this.entityData.set(POWER, Math.max(this.entityData.get(POWER) - 0.06f * Math.min(holdTickY, 5), -0.9f)); + this.entityData.set(POWER, Math.max(this.entityData.get(POWER) - 0.02f * Math.min(holdTickY, 5), this.onGround() ? 0 : 0.01f)); } else { holdTickY = 0; } - this.entityData.set(POWER, this.entityData.get(POWER) * 0.7f); + if (!(up || down)) { + if (this.getDeltaMovement().y() < 0) { + this.entityData.set(POWER, Math.min(this.entityData.get(POWER) + 0.01f, 0.4f)); + } else { + this.entityData.set(POWER, Math.max(this.entityData.get(POWER) - 0.01f, 0f)); + } + } + + this.entityData.set(POWER, this.entityData.get(POWER) * 0.99f); this.entityData.set(DELTA_ROT, this.entityData.get(DELTA_ROT) * 0.7f); this.entityData.set(DELTA_X_ROT, this.entityData.get(DELTA_X_ROT) * 0.7f); this.setZRot(Mth.clamp(this.getRoll() - this.entityData.get(DELTA_ROT), -30, 30)); this.setBodyXRot(Mth.clamp(this.getBodyPitch() - this.entityData.get(DELTA_X_ROT), -30, 30)); - setDeltaMovement(getDeltaMovement().add(0.0f, Math.min(Math.sin((90 - this.getBodyPitch()) * Mth.DEG_TO_RAD), Math.sin((90 + this.getRoll()) * Mth.DEG_TO_RAD)) * this.entityData.get(POWER), 0.0f)); + setDeltaMovement(getDeltaMovement().add(0.0f, this.entityData.get(POWER) * 0.6f, 0.0f)); Vector3f direction = getRightDirection().mul(this.entityData.get(DELTA_ROT)); - setDeltaMovement(getDeltaMovement().add(new Vec3(direction.x, direction.y, direction.z).scale(0.04))); + setDeltaMovement(getDeltaMovement().add(new Vec3(direction.x, direction.y, direction.z).scale(0.03))); Vector3f directionZ = getForwardDirection().mul(-this.entityData.get(DELTA_X_ROT)); - setDeltaMovement(getDeltaMovement().add(new Vec3(directionZ.x, directionZ.y, directionZ.z).scale(0.04))); + setDeltaMovement(getDeltaMovement().add(new Vec3(directionZ.x, directionZ.y, directionZ.z).scale(0.03))); Player controller = EntityFindUtil.findPlayer(this.level(), this.entityData.get(CONTROLLER)); if (controller != null) { @@ -494,6 +502,11 @@ public class DroneEntity extends MobileVehicleEntity implements GeoEntity { return ModSounds.DRONE_SOUND.get(); } + @Override + public float getEngineSoundVolume() { + return onGround() ? 0 : 0.1f; + } + @Override public void move(@NotNull MoverType movementType, @NotNull Vec3 movement) { super.move(movementType, movement); @@ -628,11 +641,6 @@ public class DroneEntity extends MobileVehicleEntity implements GeoEntity { level.addFreshEntity(cloud); } - @Override - public boolean isNoGravity() { - return super.isNoGravity(); - } - @Override public void registerControllers(AnimatableManager.ControllerRegistrar data) { } diff --git a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/base/MobileVehicleEntity.java b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/base/MobileVehicleEntity.java index 4ac73c934..b56a322f0 100644 --- a/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/base/MobileVehicleEntity.java +++ b/src/main/java/com/atsuishio/superbwarfare/entity/vehicle/base/MobileVehicleEntity.java @@ -239,9 +239,7 @@ public abstract class MobileVehicleEntity extends EnergyVehicleEntity implements preventStacking(); crushEntities(this.getDeltaMovement()); - if (!(this instanceof DroneEntity)) { - this.setDeltaMovement(this.getDeltaMovement().add(0.0, -0.06, 0.0)); - } + this.setDeltaMovement(this.getDeltaMovement().add(0.0, -0.06, 0.0)); this.move(MoverType.SELF, this.getDeltaMovement()); baseCollideBlock(); @@ -692,9 +690,6 @@ public abstract class MobileVehicleEntity extends EnergyVehicleEntity implements public SoundEvent getEngineSound() { return SoundEvents.EMPTY; } - public int getEngineSoundRadius() { - return 32; - } public float getEngineSoundVolume() { return (float) Mth.lerp(Mth.clamp(getDeltaMovement().length(), 0F, 0.5F), 0.0F, 0.7F); diff --git a/src/main/java/com/atsuishio/superbwarfare/event/ClientSoundHandler.java b/src/main/java/com/atsuishio/superbwarfare/event/ClientSoundHandler.java index 85cac4dda..0740b294f 100644 --- a/src/main/java/com/atsuishio/superbwarfare/event/ClientSoundHandler.java +++ b/src/main/java/com/atsuishio/superbwarfare/event/ClientSoundHandler.java @@ -1,29 +1,15 @@ package com.atsuishio.superbwarfare.event; +import com.atsuishio.superbwarfare.client.LoudlyEntitySoundInstance; import com.atsuishio.superbwarfare.client.VehicleSoundInstance; -import com.atsuishio.superbwarfare.entity.projectile.SwarmDroneEntity; -import com.atsuishio.superbwarfare.entity.vehicle.DroneEntity; +import com.atsuishio.superbwarfare.entity.LoudlyEntity; import com.atsuishio.superbwarfare.entity.vehicle.base.MobileVehicleEntity; import com.atsuishio.superbwarfare.entity.vehicle.base.TrackEntity; -import com.atsuishio.superbwarfare.init.ModItems; -import com.atsuishio.superbwarfare.init.ModSounds; -import com.atsuishio.superbwarfare.tools.NBTTool; -import com.atsuishio.superbwarfare.tools.SeekTool; import net.minecraft.client.Minecraft; -import net.minecraft.client.player.LocalPlayer; -import net.minecraft.core.BlockPos; -import net.minecraft.sounds.SoundEvent; -import net.minecraft.world.entity.Entity; -import net.minecraft.world.item.ItemStack; -import net.minecraft.world.phys.Vec3; import net.neoforged.api.distmarker.Dist; import net.neoforged.bus.api.SubscribeEvent; import net.neoforged.fml.common.EventBusSubscriber; -import net.neoforged.neoforge.client.event.ClientTickEvent; import net.neoforged.neoforge.event.entity.EntityJoinLevelEvent; -import org.joml.Math; - -import java.util.List; @EventBusSubscriber(bus = EventBusSubscriber.Bus.GAME, value = Dist.CLIENT) public class ClientSoundHandler { @@ -37,58 +23,11 @@ public class ClientSoundHandler { if (event.getEntity() instanceof MobileVehicleEntity mobileVehicle && mobileVehicle instanceof TrackEntity) { Minecraft.getInstance().getSoundManager().play(new VehicleSoundInstance.TrackSound(mobileVehicle)); } - } - } - @SubscribeEvent - public static void handleClientTick(ClientTickEvent.Pre event) { - LocalPlayer player = Minecraft.getInstance().player; - if (player == null) return; - - List engineVehicle = SeekTool.getVehicleWithinRange(player, player.level(), 192); - - for (var e : engineVehicle) { - if (e instanceof MobileVehicleEntity mobileVehicle) { - - Vec3 listener = player.getEyePosition(); - Vec3 engineRealPos = e.getEyePosition(); - Vec3 toVec = listener.vectorTo(engineRealPos).normalize(); - double distance = listener.distanceTo(engineRealPos); - - var engineSoundPos = new Vec3(listener.x + toVec.x, listener.y + toVec.y, listener.z + toVec.z); - SoundEvent engineSound = mobileVehicle.getEngineSound(); - float distanceReduce; - - if (e instanceof DroneEntity) { - distanceReduce = (float) Math.max((1 - distance / 64), 0); - ItemStack stack = player.getMainHandItem(); - final var tag = NBTTool.getTag(stack); - if (stack.is(ModItems.MONITOR.get()) && tag.getBoolean("Using")) { - player.playSound(engineSound, 1, (float) ((2 * Math.random() - 1) * 0.002f + 1.05)); - } else { - player.level().playLocalSound(BlockPos.containing(engineSoundPos), engineSound, mobileVehicle.getSoundSource(), e.onGround() ? 0 : distanceReduce * distanceReduce, (float) ((2 * Math.random() - 1) * 0.002f + 1.05), false); - } - } - } - } - - List swarmDrone = SeekTool.getEntityWithinRange(player, player.level(), 64); - - for (var e : swarmDrone) { - if (e instanceof SwarmDroneEntity swarmDroneEntity) { - - Vec3 listener = player.getEyePosition(); - Vec3 engineRealPos = e.getEyePosition(); - Vec3 toVec = listener.vectorTo(engineRealPos).normalize(); - double distance = listener.distanceTo(engineRealPos); - - var engineSoundPos = new Vec3(listener.x + toVec.x, listener.y + toVec.y, listener.z + toVec.z); - SoundEvent engineSound = ModSounds.DRONE_SOUND.get(); - float distanceReduce; - - distanceReduce = (float) Math.max((1 - distance / 64), 0); - if (swarmDroneEntity.tickCount > 10) { - player.level().playLocalSound(BlockPos.containing(engineSoundPos), engineSound, swarmDroneEntity.getSoundSource(), distanceReduce * distanceReduce, (float) ((2 * Math.random() - 1) * 0.002f + 1.15), false); + if (event.getEntity() instanceof LoudlyEntity loudlyEntity) { + Minecraft.getInstance().getSoundManager().play(new LoudlyEntitySoundInstance.EntitySound(event.getEntity())); + if (loudlyEntity.getCloseSound() != null) { + Minecraft.getInstance().getSoundManager().play(new LoudlyEntitySoundInstance.EntitySoundClose(event.getEntity())); } } } diff --git a/src/main/java/com/atsuishio/superbwarfare/init/ModSounds.java b/src/main/java/com/atsuishio/superbwarfare/init/ModSounds.java index 2446b3e01..c15b1b01b 100644 --- a/src/main/java/com/atsuishio/superbwarfare/init/ModSounds.java +++ b/src/main/java/com/atsuishio/superbwarfare/init/ModSounds.java @@ -441,6 +441,9 @@ public class ModSounds { public static final DeferredHolder HPJ_11_FAR = REGISTRY.register("hpj_11_far", () -> SoundEvent.createVariableRangeEvent(Mod.loc("hpj_11_far"))); public static final DeferredHolder HPJ_11_VERYFAR = REGISTRY.register("hpj_11_veryfar", () -> SoundEvent.createVariableRangeEvent(Mod.loc("hpj_11_veryfar"))); public static final DeferredHolder TRACK_MOVE = REGISTRY.register("track_move", () -> SoundEvent.createVariableRangeEvent(Mod.loc("track_move"))); + public static final DeferredHolder ROCKET_FLY = REGISTRY.register("rocket_fly", () -> SoundEvent.createVariableRangeEvent(Mod.loc("rocket_fly"))); + public static final DeferredHolder SHELL_FLY = REGISTRY.register("shell_fly", () -> SoundEvent.createVariableRangeEvent(Mod.loc("shell_fly"))); + public static final DeferredHolder ROCKET_ENGINE = REGISTRY.register("rocket_engine", () -> SoundEvent.createVariableRangeEvent(Mod.loc("rocket_engine"))); public static final DeferredHolder A_10_ENGINE = REGISTRY.register("a10_engine", () -> SoundEvent.createVariableRangeEvent(Mod.loc("a10_engine"))); } diff --git a/src/main/resources/assets/superbwarfare/sounds.json b/src/main/resources/assets/superbwarfare/sounds.json index 0eda480cf..4bcd476f2 100644 --- a/src/main/resources/assets/superbwarfare/sounds.json +++ b/src/main/resources/assets/superbwarfare/sounds.json @@ -2186,8 +2186,9 @@ "drone_sound": { "sounds": [ { - "name": "superbwarfare:drone_sound", - "stream": false + "attenuation_distance": 48, + "stream": false, + "name": "superbwarfare:drone_sound" } ] }, @@ -3072,6 +3073,33 @@ } ] }, + "rocket_fly": { + "sounds": [ + { + "attenuation_distance": 128, + "stream": true, + "name": "superbwarfare:rocket_fly" + } + ] + }, + "shell_fly": { + "sounds": [ + { + "attenuation_distance": 160, + "stream": true, + "name": "superbwarfare:shell_fly" + } + ] + }, + "rocket_engine": { + "sounds": [ + { + "attenuation_distance": 48, + "stream": true, + "name": "superbwarfare:rocket_engine" + } + ] + }, "a10_engine": { "sounds": [ { diff --git a/src/main/resources/assets/superbwarfare/sounds/drone_sound.ogg b/src/main/resources/assets/superbwarfare/sounds/drone_sound.ogg index f68b56e420bc4fd50107d2623891db9e729be374..055547ca807e6ff995c0bdb3643afb1cf4fa6b78 100644 GIT binary patch literal 10764 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 aK9$bv(0HO;Zlh}RZoYUBnj;!c^8WxV+-DsC literal 4622 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/superbwarfare/sounds/rocket_fly.ogg b/src/main/resources/assets/superbwarfare/sounds/rocket_fly.ogg new file mode 100644 index 0000000000000000000000000000000000000000..8caf01997cc9835b86b398903da03c91b14af59e GIT binary patch literal 48510 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 Pb_OOY!S%6FQ0V^;=pT0m literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/superbwarfare/sounds/shell_fly.ogg b/src/main/resources/assets/superbwarfare/sounds/shell_fly.ogg new file mode 100644 index 0000000000000000000000000000000000000000..546b4956967dadfeeb67b74f938b40de8d9888b7 GIT binary patch literal 22171 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 literal 0 HcmV?d00001