Problème Isound



  • Bonjour

    Mon serveur crash quand je mais le mod

    Crash-report

    –-- Minecraft Crash Report ----
    // There are four lights!
    
    Time: 3/8/17 3:39 PM
    Description: Exception in server tick loop
    
    java.lang.NoClassDefFoundError: net/minecraft/client/audio/ISound
    at java.lang.Class.getDeclaredConstructors0(Native Method)
    at java.lang.Class.privateGetDeclaredConstructors(Class.java:2595)
    at java.lang.Class.getConstructor0(Class.java:2895)
    at java.lang.Class.getConstructor(Class.java:1731)
    at net.minecraft.entity.EntityList.func_75615_a(EntityList.java:160)
    at net.minecraft.world.chunk.storage.AnvilChunkLoader.loadEntities(AnvilChunkLoader.java:487)
    at net.minecraftforge.common.chunkio.ChunkIOProvider.callStage2(ChunkIOProvider.java:44)
    at net.minecraftforge.common.chunkio.ChunkIOProvider.callStage2(ChunkIOProvider.java:15)
    at net.minecraftforge.common.util.AsynchronousExecutor$Task.finish(AsynchronousExecutor.java:189)
    at net.minecraftforge.common.util.AsynchronousExecutor.finishActive(AsynchronousExecutor.java:354)
    at net.minecraftforge.common.chunkio.ChunkIOExecutor.tick(ChunkIOExecutor.java:30)
    at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:874)
    at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:423)
    at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:798)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:658)
    at java.lang.Thread.run(Thread.java:745)
    Caused by: java.lang.ClassNotFoundException: net.minecraft.client.audio.ISound
    at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:188)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
    ... 16 more
    Caused by: java.lang.NullPointerException
    
    A detailed walkthrough of the error, its code path and all known details is as follows:
    
    
    package fr.kerlann.packet;
    
    import cpw.mods.fml.common.network.ByteBufUtils;
    import cpw.mods.fml.common.network.simpleimpl.IMessage;
    import cpw.mods.fml.common.network.simpleimpl.IMessageHandler;
    import cpw.mods.fml.common.network.simpleimpl.MessageContext;
    import cpw.mods.fml.relauncher.Side;
    import cpw.mods.fml.relauncher.SideOnly;
    import io.netty.buffer.ByteBuf;
    import net.minecraft.client.Minecraft;
    import net.minecraft.client.audio.ISound;
    import net.minecraft.client.audio.ISound.AttenuationType;
    import net.minecraft.client.audio.PositionedSoundRecord;
    import net.minecraft.client.audio.SoundCategory;
    import net.minecraft.client.audio.SoundHandler;
    import net.minecraft.util.ResourceLocation;
    
    public class PacketKlaxon
     implements IMessage
    {
    
    public static int Xpklaxon;
    public static int Ypklaxon;
    public static int Zpklaxon;
    private Integer integer;
    
     public PacketKlaxon() {}
    
     public PacketKlaxon(Integer i)
     {
       this.integer = i;
     }
    
     public void fromBytes(ByteBuf buf)
     {
       this.integer = Integer.valueOf(buf.readInt());
     }
    
     public void toBytes(ByteBuf buf)
     {
       buf.writeInt(this.integer.intValue());
     }
    
       public static class Handler implements IMessageHandler <packetklaxon, imessage="">{
    
           @Override
           @SideOnly(Side.CLIENT)
           public IMessage onMessage(PacketKlaxon message, MessageContext ctx) {
               Minecraft.getMinecraft().getSoundHandler().playSound(new PositionedSoundRecord(new ResourceLocation("noria:klaxon"), 2.0F, 1.0F, Xpklaxon, Ypklaxon, Zpklaxon));
               System.out.println("test");
               return null; // no response in this case
           }
       }
    
    }
    
    

    Je ne comprend pas pourquoi sa crash

    Merci d'avance !</packetklaxon,>



  • Tu n'a que ça dans ton crash report ?



  • Bah c'est la partie la plus intéressante



  • envoie le tout pour voir 😄


  • Administrateurs

    Salut,
    Je ne pense pas que le crash vient de ton paquet.



  • @'robin4002':

    Salut,
    Je ne pense pas que le crash vient de ton paquet.

    Alors il peut venir de quoi ?



  • ça m'a l'air d'être une entitée/peut-être une TileEntity, tu n'en as pas où tu fais référence aux classes de son ?



  • c'est bon j'ai trouver l'erreur mais le problème c'est que le son ne marche pas sur le serveur

    Code de l'envoye du packet

        PacketKlaxon.Xpklaxon = (int) player.posX;
        PacketKlaxon.Ypklaxon = (int) player.posY;
        PacketKlaxon.Zpklaxon = (int) player.posZ;
        player.addChatMessage(new ChatComponentText("Klaxon"));
        noria.network.sendToAllAround(new PacketKlaxon(Integer.valueOf(0)), new NetworkRegistry.TargetPoint(player.dimension, player.posX, player.posY, player.posZ, 5.0D));
    

    Main

        network = NetworkRegistry.INSTANCE.newSimpleChannel("noria:");
        network.registerMessage(PacketKlaxon.Handler.class, PacketKlaxon.class, 0, Side.CLIENT);
    

  • Administrateurs

    Pourquoi tu t'embête avec un paquet ?
    world.playSound gère déjà l'envoie au client.



  • J'ai pas trop compris (world.playSound) je doit mettre ou ?

    Ps: je suis débutant en Java


  • Administrateurs

    Là où tu veux jouer ton son, il faut compléter la fonction avec les bons arguments. (je ne me souviens pas de la liste exacte, eclipse devrait te les donner si tu tapes world.playSou et que tu appuies sur ctrl + espace).



  • Bonjour

    J'ai mit cette ligne et j'entend pas le son(client/serveur)

    Minecraft.getMinecraft().theWorld.playSoundAtEntity(player, "noria:klaxon", 1.0F, 1.0F);
    

  • Administrateurs

    player.worldObj.playSoundAtEntity(player, "noria:klaxon", 1.0F, 1.0F);



  • je n'entend toujours rien



  • As-tu un "Unable to play unknow sound event: noria:klaxon" dans la console ?



  • Non et quand je fait /playsound noria:klaxon sa marche bien



  • Bonjour j'ai fait sa

    World world = player.getEntityWorld();
      world.playSound(player.posX, player.posY, player.posZ, "noria:klaxon", 1.0F, 1.0F, false);
    

    Mais personne entend sur le serveur.


  • Administrateurs

    Pourtant il n'y a pas de raison que ça ne fonctionne pas.
    Est-ce qu'il y a un message dans les logs ?



  • non aucun message dans les log

    quand moi j'appuie sur la touche j'entend le son et pas les autres

    c'est bizarre


  • Administrateurs

    Tu cherches à jouer le son à quel moment ?
    Tu peux envoyer la classe entière où tu joue le son ?