#1100: Add methods to get sounds from entities
By: Parker Hawke <hawkeboyz2@hotmail.com>
This commit is contained in:
@@ -15,6 +15,7 @@ import net.minecraft.network.chat.IChatBaseComponent;
|
||||
import net.minecraft.server.level.EntityPlayer;
|
||||
import net.minecraft.server.level.PlayerChunkMap;
|
||||
import net.minecraft.server.level.WorldServer;
|
||||
import net.minecraft.sounds.SoundEffect;
|
||||
import net.minecraft.world.damagesource.DamageSource;
|
||||
import net.minecraft.world.entity.Entity;
|
||||
import net.minecraft.world.entity.EntityAreaEffectCloud;
|
||||
@@ -162,10 +163,12 @@ import net.minecraft.world.phys.AxisAlignedBB;
|
||||
import org.bukkit.EntityEffect;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.Server;
|
||||
import org.bukkit.Sound;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.block.BlockFace;
|
||||
import org.bukkit.block.PistonMoveReaction;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.craftbukkit.CraftSound;
|
||||
import org.bukkit.craftbukkit.CraftWorld;
|
||||
import org.bukkit.craftbukkit.block.CraftBlock;
|
||||
import org.bukkit.craftbukkit.persistence.CraftPersistentDataContainer;
|
||||
@@ -757,6 +760,21 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public Sound getSwimSound() {
|
||||
return CraftSound.getBukkit(getHandle().getSwimSound0());
|
||||
}
|
||||
|
||||
@Override
|
||||
public Sound getSwimSplashSound() {
|
||||
return CraftSound.getBukkit(getHandle().getSwimSplashSound0());
|
||||
}
|
||||
|
||||
@Override
|
||||
public Sound getSwimHighSpeedSplashSound() {
|
||||
return CraftSound.getBukkit(getHandle().getSwimHighSpeedSplashSound0());
|
||||
}
|
||||
|
||||
public void setHandle(final Entity entity) {
|
||||
this.entity = entity;
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.UUID;
|
||||
import net.minecraft.sounds.SoundEffect;
|
||||
import net.minecraft.world.EnumHand;
|
||||
import net.minecraft.world.damagesource.DamageSource;
|
||||
import net.minecraft.world.effect.MobEffect;
|
||||
@@ -43,10 +44,12 @@ import org.apache.commons.lang.Validate;
|
||||
import org.bukkit.FluidCollisionMode;
|
||||
import org.bukkit.Location;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.Sound;
|
||||
import org.bukkit.attribute.Attribute;
|
||||
import org.bukkit.attribute.AttributeInstance;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.craftbukkit.CraftSound;
|
||||
import org.bukkit.craftbukkit.CraftWorld;
|
||||
import org.bukkit.craftbukkit.entity.memory.CraftMemoryKey;
|
||||
import org.bukkit.craftbukkit.entity.memory.CraftMemoryMapper;
|
||||
@@ -697,6 +700,45 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
|
||||
getHandle().getBrain().setMemory(CraftMemoryKey.fromMemoryKey(memoryKey), CraftMemoryMapper.toNms(t));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Sound getHurtSound() {
|
||||
SoundEffect sound = getHandle().getHurtSound0(DamageSource.GENERIC);
|
||||
return (sound != null) ? CraftSound.getBukkit(sound) : null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Sound getDeathSound() {
|
||||
SoundEffect sound = getHandle().getDeathSound0();
|
||||
return (sound != null) ? CraftSound.getBukkit(sound) : null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Sound getFallDamageSound(int fallHeight) {
|
||||
return CraftSound.getBukkit(getHandle().getFallDamageSound0(fallHeight));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Sound getFallDamageSoundSmall() {
|
||||
return CraftSound.getBukkit(getHandle().getFallSounds().small());
|
||||
}
|
||||
|
||||
@Override
|
||||
public Sound getFallDamageSoundBig() {
|
||||
return CraftSound.getBukkit(getHandle().getFallSounds().big());
|
||||
}
|
||||
|
||||
@Override
|
||||
public Sound getDrinkingSound(ItemStack itemStack) {
|
||||
Preconditions.checkArgument(itemStack != null, "itemStack must not be null");
|
||||
return CraftSound.getBukkit(getHandle().getDrinkingSound0(CraftItemStack.asNMSCopy(itemStack)));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Sound getEatingSound(ItemStack itemStack) {
|
||||
Preconditions.checkArgument(itemStack != null, "itemStack must not be null");
|
||||
return CraftSound.getBukkit(getHandle().getEatingSound0(CraftItemStack.asNMSCopy(itemStack)));
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean canBreatheUnderwater() {
|
||||
return getHandle().canBreatheUnderwater();
|
||||
|
||||
@@ -1,11 +1,13 @@
|
||||
package org.bukkit.craftbukkit.entity;
|
||||
|
||||
import com.google.common.base.Preconditions;
|
||||
import net.minecraft.resources.MinecraftKey;
|
||||
import net.minecraft.sounds.SoundEffect;
|
||||
import net.minecraft.world.entity.EntityInsentient;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.NamespacedKey;
|
||||
import org.bukkit.Sound;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.craftbukkit.CraftSound;
|
||||
import org.bukkit.craftbukkit.util.CraftNamespacedKey;
|
||||
import org.bukkit.entity.LivingEntity;
|
||||
import org.bukkit.entity.Mob;
|
||||
@@ -45,6 +47,12 @@ public abstract class CraftMob extends CraftLivingEntity implements Mob {
|
||||
return getHandle().aware;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Sound getAmbientSound() {
|
||||
SoundEffect sound = getHandle().getAmbientSound0();
|
||||
return (sound != null) ? CraftSound.getBukkit(sound) : null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public EntityInsentient getHandle() {
|
||||
return (EntityInsentient) entity;
|
||||
|
||||
@@ -3,8 +3,10 @@ package org.bukkit.craftbukkit.entity;
|
||||
import com.google.common.base.Preconditions;
|
||||
import net.minecraft.core.BlockPosition;
|
||||
import net.minecraft.world.entity.raid.EntityRaider;
|
||||
import org.bukkit.Sound;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.craftbukkit.CraftServer;
|
||||
import org.bukkit.craftbukkit.CraftSound;
|
||||
import org.bukkit.craftbukkit.block.CraftBlock;
|
||||
import org.bukkit.entity.Raider;
|
||||
|
||||
@@ -59,4 +61,9 @@ public abstract class CraftRaider extends CraftMonster implements Raider {
|
||||
public void setCanJoinRaid(boolean join) {
|
||||
getHandle().setCanJoinRaid(join);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Sound getCelebrationSound() {
|
||||
return CraftSound.getBukkit(getHandle().getCelebrateSound());
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user