package mods.eln.sound; import cpw.mods.fml.common.FMLCommonHandler; import mods.eln.Eln; import mods.eln.misc.Utils; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.server.MinecraftServer; import java.io.ByteArrayOutputStream; import java.io.DataOutputStream; import java.io.IOException; public class SoundServer { /*public static void playFromBlock(World world,int x, int y, int z, String track, float volume, float pitch,float rangeNominal,float rangeMax){ play(world, x+0.5, y+0.5, z+0.5, track, volume, pitch, rangeNominal, rangeMax,1); } public static void playFromCoord(Coordonate c, String track, float volume, float pitch,float rangeNominal,float rangeMax){ play(c.world(), c.x+0.5, c.y+0.5, c.z+0.5, track, volume, pitch, rangeNominal, rangeMax,1); } public static void playFromCoord(Coordonate c, String track, float volume, float pitch,float rangeNominal,float rangeMax,float blockFactor){ play(c.world(), c.x+0.5, c.y+0.5, c.z+0.5, track, volume, pitch, rangeNominal, rangeMax,blockFactor); }*/ public static void play(SoundCommand p) { ByteArrayOutputStream bos = new ByteArrayOutputStream(64); DataOutputStream stream = new DataOutputStream(bos); try { stream.writeByte(Eln.packetPlaySound); stream.writeByte(p.world.provider.dimensionId); p.writeTo(stream); MinecraftServer server = FMLCommonHandler.instance().getMinecraftServerInstance(); for (Object obj : server.getConfigurationManager().playerEntityList) { EntityPlayerMP player = (EntityPlayerMP) obj; if (player.dimension == p.world.provider.dimensionId && player.getDistance(p.x, p.y, p.z) < p.rangeMax + 2) ; Utils.sendPacketToClient(bos, player); } } catch (IOException e) { e.printStackTrace(); } } }