• S'inscrire
    • Se connecter
    • Recherche
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes

    Résolu Problème sendToAllAround

    1.8.x
    1.8
    2
    9
    1643
    Charger plus de messages
    • Du plus ancien au plus récent
    • Du plus récent au plus ancien
    • Les plus votés
    Répondre
    • Répondre à l'aide d'un nouveau sujet
    Se connecter pour répondre
    Ce sujet a été supprimé. Seuls les utilisateurs avec les droits d'administration peuvent le voir.
    • Gabs
      Gabs dernière édition par

      Bonsoir,

      Je voudrais jouer un son dans un rayon de 5 bloc autour du joueur qui exécute la commande.

      Pour cela j’utilise un packet avec l’envoie sendToAllAround quand j’utilise sendtoserver aucun soucis le son est bien jouer mais il est jouer a tout les joueurs et pas dans un rayon de bloc autour du joueur qui exécute la commande !

      Commande:

      
      package com.CSC.net.Commands;
      
      import com.CSC.net.Main;
      import com.CSC.net.packet.PacketSounds;
      
      import net.minecraft.client.Minecraft;
      import net.minecraft.command.CommandBase;
      import net.minecraft.command.CommandException;
      import net.minecraft.command.ICommandSender;
      import net.minecraft.entity.player.EntityPlayer;
      import net.minecraft.server.MinecraftServer;
      import net.minecraft.util.ChatComponentText;
      import net.minecraftforge.fml.common.network.NetworkRegistry;
      import net.minecraftforge.fml.common.network.NetworkRegistry.TargetPoint;
      
      public class Command1097 extends CommandBase{
      
      @Override
      public String getName() {
      return "10-97";
      }
      
      @Override
      public String getCommandUsage(ICommandSender sender) {
      return null;
      }
      
      @Override
      public void execute(ICommandSender sender, String[] args)
      throws CommandException {
      EntityPlayer player = (EntityPlayer)sender;
      if(player instanceof EntityPlayer)
      {
      System.out.println("");
      Main.network.sendToAllAround(new PacketSounds(0), new NetworkRegistry.TargetPoint(player.dimension, player.posX, player.posY, player.posZ, 5));
      }
      else
      {
      System.out.println("Impossible d executer cette commande avec une console");
      }
      }
      
      }
      
      

      Packet:

      
      package com.CSC.net.packet;
      
      import io.netty.buffer.ByteBuf;
      import net.minecraft.entity.player.EntityPlayerMP;
      import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
      import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler;
      import net.minecraftforge.fml.common.network.simpleimpl.MessageContext;
      import net.minecraftforge.fml.relauncher.Side;
      import net.minecraftforge.fml.relauncher.SideOnly;
      
      public class PacketSounds implements IMessage{
      
      private Integer integer;
      
      public PacketSounds()
      {
      
      }
      
      public PacketSounds(Integer i)
      {
      this.integer = i;
      }
      
      @Override
      public void fromBytes(ByteBuf buf) {
      this.integer = buf.readInt();
      }
      
      @Override
      public void toBytes(ByteBuf buf) {
      buf.writeInt(this.integer);
      }
      
      public static class Handler implements IMessageHandler <packetsounds, imessage="">{
      @Override
         public IMessage onMessage(PacketSounds message, MessageContext ctx) 
         {
      EntityPlayerMP player = ctx.getServerHandler().playerEntity;
      switch(message.integer)
      {
      case 0:
      player.worldObj.playSoundAtEntity(player, "csc:10-97", 1.0F, 1.0F);
      System.out.println("");
      break;
      case 1:
      ctx.getServerHandler().playerEntity.playSound("csc:administrer", 1.0F, 1.0F);
      break;
      default:
      break;
      }
      return null;
      
         }
      }
      
      }
      
      

      register packet:

              network.registerMessage(PacketSounds.Handler.class, PacketSounds.class, 1, Side.SERVER);
      

      Merci d’avance pour votre aide !</packetsounds,>

      1 réponse Dernière réponse Répondre Citer 0
      • robin4002
        robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

        network.registerMessage(PacketSounds.Handler.class, PacketSounds.class, 1, Side.SERVER);
        ->
        network.registerMessage(PacketSounds.Handler.class, PacketSounds.class, 1, Side.CLIENT);

        Le side indiqué doit être celui qui reçoit le paquet.

        1 réponse Dernière réponse Répondre Citer 0
        • Gabs
          Gabs dernière édition par

          @‘robin4002’:

          network.registerMessage(PacketSounds.Handler.class, PacketSounds.class, 1, Side.SERVER);
          ->
                 network.registerMessage(PacketSounds.Handler.class, PacketSounds.class, 1, Side.CLIENT);

          Le side indiqué doit être celui qui reçoit le paquet.

          D’accord je sais jamais quel side utiliser c’est chiant…

          J’ai un crash par contre:

          
          [19:48:13] [Netty Local Client IO #0/ERROR] [FML]: SimpleChannelHandlerWrapper exception
          java.lang.ClassCastException: net.minecraft.client.network.NetHandlerPlayClient cannot be cast to net.minecraft.network.NetHandlerPlayServer
          at net.minecraftforge.fml.common.network.simpleimpl.MessageContext.getServerHandler(MessageContext.java:36) ~[MessageContext.class:?]
          at com.CSC.net.packet.PacketSounds$Handler.onMessage(PacketSounds.java:41) ~[PacketSounds$Handler.class:?]
          at com.CSC.net.packet.PacketSounds$Handler.onMessage(PacketSounds.java:1) ~[PacketSounds$Handler.class:?]
          at net.minecraftforge.fml.common.network.simpleimpl.SimpleChannelHandlerWrapper.channelRead0(SimpleChannelHandlerWrapper.java:37) ~[SimpleChannelHandlerWrapper.class:?]
          at net.minecraftforge.fml.common.network.simpleimpl.SimpleChannelHandlerWrapper.channelRead0(SimpleChannelHandlerWrapper.java:17) ~[SimpleChannelHandlerWrapper.class:?]
          at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:103) ~[SimpleChannelInboundHandler.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) [MessageToMessageDecoder.class:4.0.15.Final]
          at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) [MessageToMessageCodec.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:785) [DefaultChannelPipeline.class:4.0.15.Final]
          at io.netty.channel.embedded.EmbeddedChannel.writeInbound(EmbeddedChannel.java:169) [EmbeddedChannel.class:4.0.15.Final]
          at net.minecraftforge.fml.common.network.internal.FMLProxyPacket.processPacket(FMLProxyPacket.java:88) [FMLProxyPacket.class:?]
          at net.minecraft.network.NetworkManager.channelRead0(NetworkManager.java:144) [NetworkManager.class:?]
          at net.minecraft.network.NetworkManager.channelRead0(NetworkManager.java:469) [NetworkManager.class:?]
          at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:103) [SimpleChannelInboundHandler.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.handleClientSideCustomPacket(NetworkDispatcher.java:363) [NetworkDispatcher.class:?]
          at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.channelRead0(NetworkDispatcher.java:230) [NetworkDispatcher.class:?]
          at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.channelRead0(NetworkDispatcher.java:49) [NetworkDispatcher.class:?]
          at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:103) [SimpleChannelInboundHandler.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:785) [DefaultChannelPipeline.class:4.0.15.Final]
          at io.netty.channel.local.LocalChannel.finishPeerRead(LocalChannel.java:312) [LocalChannel.class:4.0.15.Final]
          at io.netty.channel.local.LocalChannel.access$400(LocalChannel.java:44) [LocalChannel.class:4.0.15.Final]
          at io.netty.channel.local.LocalChannel$6.run(LocalChannel.java:298) [LocalChannel$6.class:4.0.15.Final]
          at io.netty.channel.local.LocalEventLoop.run(LocalEventLoop.java:33) [LocalEventLoop.class:4.0.15.Final]
          at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:101) [SingleThreadEventExecutor$2.class:4.0.15.Final]
          at java.lang.Thread.run(Thread.java:745) [?:1.8.0_45]
          [19:48:13] [Netty Local Client IO #0/ERROR] [FML]: SimpleChannelHandlerWrapper exception
          java.lang.ClassCastException: net.minecraft.client.network.NetHandlerPlayClient cannot be cast to net.minecraft.network.NetHandlerPlayServer
          at net.minecraftforge.fml.common.network.simpleimpl.MessageContext.getServerHandler(MessageContext.java:36) ~[MessageContext.class:?]
          at com.CSC.net.packet.PacketSounds$Handler.onMessage(PacketSounds.java:41) ~[PacketSounds$Handler.class:?]
          at com.CSC.net.packet.PacketSounds$Handler.onMessage(PacketSounds.java:1) ~[PacketSounds$Handler.class:?]
          at net.minecraftforge.fml.common.network.simpleimpl.SimpleChannelHandlerWrapper.channelRead0(SimpleChannelHandlerWrapper.java:37) ~[SimpleChannelHandlerWrapper.class:?]
          at net.minecraftforge.fml.common.network.simpleimpl.SimpleChannelHandlerWrapper.channelRead0(SimpleChannelHandlerWrapper.java:17) ~[SimpleChannelHandlerWrapper.class:?]
          at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:103) ~[SimpleChannelInboundHandler.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) [MessageToMessageDecoder.class:4.0.15.Final]
          at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) [MessageToMessageCodec.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:785) [DefaultChannelPipeline.class:4.0.15.Final]
          at io.netty.channel.embedded.EmbeddedChannel.writeInbound(EmbeddedChannel.java:169) [EmbeddedChannel.class:4.0.15.Final]
          at net.minecraftforge.fml.common.network.internal.FMLProxyPacket.processPacket(FMLProxyPacket.java:88) [FMLProxyPacket.class:?]
          at net.minecraft.network.NetworkManager.channelRead0(NetworkManager.java:144) [NetworkManager.class:?]
          at net.minecraft.network.NetworkManager.channelRead0(NetworkManager.java:469) [NetworkManager.class:?]
          at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:103) [SimpleChannelInboundHandler.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.handleClientSideCustomPacket(NetworkDispatcher.java:363) [NetworkDispatcher.class:?]
          at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.channelRead0(NetworkDispatcher.java:230) [NetworkDispatcher.class:?]
          at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.channelRead0(NetworkDispatcher.java:49) [NetworkDispatcher.class:?]
          at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:103) [SimpleChannelInboundHandler.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:785) [DefaultChannelPipeline.class:4.0.15.Final]
          at io.netty.channel.local.LocalChannel.finishPeerRead(LocalChannel.java:312) [LocalChannel.class:4.0.15.Final]
          at io.netty.channel.local.LocalChannel.access$400(LocalChannel.java:44) [LocalChannel.class:4.0.15.Final]
          at io.netty.channel.local.LocalChannel$6.run(LocalChannel.java:298) [LocalChannel$6.class:4.0.15.Final]
          at io.netty.channel.local.LocalEventLoop.run(LocalEventLoop.java:33) [LocalEventLoop.class:4.0.15.Final]
          at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:101) [SingleThreadEventExecutor$2.class:4.0.15.Final]
          at java.lang.Thread.run(Thread.java:745) [?:1.8.0_45]
          [19:48:13] [Netty Local Client IO #0/ERROR] [FML]: There was a critical exception handling a packet on channel csc:
          java.lang.ClassCastException: net.minecraft.client.network.NetHandlerPlayClient cannot be cast to net.minecraft.network.NetHandlerPlayServer
          at net.minecraftforge.fml.common.network.simpleimpl.MessageContext.getServerHandler(MessageContext.java:36) ~[MessageContext.class:?]
          at com.CSC.net.packet.PacketSounds$Handler.onMessage(PacketSounds.java:41) ~[PacketSounds$Handler.class:?]
          at com.CSC.net.packet.PacketSounds$Handler.onMessage(PacketSounds.java:1) ~[PacketSounds$Handler.class:?]
          at net.minecraftforge.fml.common.network.simpleimpl.SimpleChannelHandlerWrapper.channelRead0(SimpleChannelHandlerWrapper.java:37) ~[SimpleChannelHandlerWrapper.class:?]
          at net.minecraftforge.fml.common.network.simpleimpl.SimpleChannelHandlerWrapper.channelRead0(SimpleChannelHandlerWrapper.java:17) ~[SimpleChannelHandlerWrapper.class:?]
          at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:103) ~[SimpleChannelInboundHandler.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338) ~[DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324) ~[DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.handler.codec.MessageToMessageDecoder.channelRead(MessageToMessageDecoder.java:103) ~[MessageToMessageDecoder.class:4.0.15.Final]
          at io.netty.handler.codec.MessageToMessageCodec.channelRead(MessageToMessageCodec.java:111) ~[MessageToMessageCodec.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338) ~[DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324) ~[DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:785) ~[DefaultChannelPipeline.class:4.0.15.Final]
          at io.netty.channel.embedded.EmbeddedChannel.writeInbound(EmbeddedChannel.java:169) ~[EmbeddedChannel.class:4.0.15.Final]
          at net.minecraftforge.fml.common.network.internal.FMLProxyPacket.processPacket(FMLProxyPacket.java:88) [FMLProxyPacket.class:?]
          at net.minecraft.network.NetworkManager.channelRead0(NetworkManager.java:144) [NetworkManager.class:?]
          at net.minecraft.network.NetworkManager.channelRead0(NetworkManager.java:469) [NetworkManager.class:?]
          at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:103) [SimpleChannelInboundHandler.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.handleClientSideCustomPacket(NetworkDispatcher.java:363) [NetworkDispatcher.class:?]
          at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.channelRead0(NetworkDispatcher.java:230) [NetworkDispatcher.class:?]
          at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.channelRead0(NetworkDispatcher.java:49) [NetworkDispatcher.class:?]
          at io.netty.channel.SimpleChannelInboundHandler.channelRead(SimpleChannelInboundHandler.java:103) [SimpleChannelInboundHandler.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.invokeChannelRead(DefaultChannelHandlerContext.java:338) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelHandlerContext.fireChannelRead(DefaultChannelHandlerContext.java:324) [DefaultChannelHandlerContext.class:4.0.15.Final]
          at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:785) [DefaultChannelPipeline.class:4.0.15.Final]
          at io.netty.channel.local.LocalChannel.finishPeerRead(LocalChannel.java:312) [LocalChannel.class:4.0.15.Final]
          at io.netty.channel.local.LocalChannel.access$400(LocalChannel.java:44) [LocalChannel.class:4.0.15.Final]
          at io.netty.channel.local.LocalChannel$6.run(LocalChannel.java:298) [LocalChannel$6.class:4.0.15.Final]
          at io.netty.channel.local.LocalEventLoop.run(LocalEventLoop.java:33) [LocalEventLoop.class:4.0.15.Final]
          at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:101) [SingleThreadEventExecutor$2.class:4.0.15.Final]
          at java.lang.Thread.run(Thread.java:745) [?:1.8.0_45]
          

          Packet: (ligne 41 indiqué )

          
          package com.CSC.net.packet;
          
          import io.netty.buffer.ByteBuf;
          import net.minecraft.entity.player.EntityPlayer;
          import net.minecraft.entity.player.EntityPlayerMP;
          import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
          import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler;
          import net.minecraftforge.fml.common.network.simpleimpl.MessageContext;
          import net.minecraftforge.fml.relauncher.Side;
          import net.minecraftforge.fml.relauncher.SideOnly;
          
          public class PacketSounds implements IMessage{
          
          private Integer integer;
          
          public PacketSounds()
          {
          
          }
          
          public PacketSounds(Integer i)
          {
          this.integer = i;
          }
          
          @Override
          public void fromBytes(ByteBuf buf) {
          this.integer = buf.readInt();
          }
          
          @Override
          public void toBytes(ByteBuf buf) {
          buf.writeInt(this.integer);
          }
          
          public static class Handler implements IMessageHandler <packetsounds, imessage="">{
          @Override
             public IMessage onMessage(PacketSounds message, MessageContext ctx) 
             {
          EntityPlayerMP player = ctx.getServerHandler().playerEntity; // ligne 41
          switch(message.integer)
          {
          case 0:
          player.worldObj.playSoundAtEntity(player, "csc:10-97", 1.0F, 1.0F);
          System.out.println("");
          break;
          case 1:
          ctx.getServerHandler().playerEntity.playSound("csc:administrer", 1.0F, 1.0F);
          break;
          
          default:
          break;
          }
          return null;
          
             }
          }
          
          }
          
          

          et ma classe pour la commande:

          
          package com.CSC.net.Commands;
          
          import com.CSC.net.Main;
          import com.CSC.net.packet.PacketSounds;
          
          import net.minecraft.client.Minecraft;
          import net.minecraft.command.CommandBase;
          import net.minecraft.command.CommandException;
          import net.minecraft.command.ICommandSender;
          import net.minecraft.entity.player.EntityPlayer;
          import net.minecraft.server.MinecraftServer;
          import net.minecraft.util.ChatComponentText;
          import net.minecraftforge.fml.common.network.NetworkRegistry;
          import net.minecraftforge.fml.common.network.NetworkRegistry.TargetPoint;
          
          public class Command1097 extends CommandBase{
          
          @Override
          public String getName() {
          return "10-97";
          }
          
          @Override
          public String getCommandUsage(ICommandSender sender) {
          return null;
          }
          
          @Override
          public void execute(ICommandSender sender, String[] args)
          throws CommandException {
          EntityPlayer player = (EntityPlayer)sender;
          if(player instanceof EntityPlayer)
          {
          System.out.println("");
          Main.network.sendToAllAround(new PacketSounds(0), new NetworkRegistry.TargetPoint(player.dimension, player.posX, player.posY, player.posZ, 5));
          }
          else
          {
          System.out.println("Impossible d executer cette commande avec une console");
          }
          }
          
          }
          
          ```</packetsounds,>
          1 réponse Dernière réponse Répondre Citer 0
          • robin4002
            robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

            ctx.getServerHandler() n’est pas dispo en client.
            Si tu veux l’instance du joueur il faut utiliser Minecraft.getMinecraft().thePlayer

            1 réponse Dernière réponse Répondre Citer 0
            • Gabs
              Gabs dernière édition par

              @‘robin4002’:

              ctx.getServerHandler() n’est pas dispo en client.
              Si tu veux l’instance du joueur il faut utiliser Minecraft.getMinecraft().thePlayer

              D’acc !

              J’ai plus de crash mais mon son n’est pas jouer (quand je fais un sendtoserver ça marche)

              J’ai mis du debug un peu partout tout est bien appeler !

              Ma classe:

              
              package com.CSC.net.packet;
              
              import io.netty.buffer.ByteBuf;
              import net.minecraft.client.Minecraft;
              import net.minecraft.entity.player.EntityPlayer;
              import net.minecraft.entity.player.EntityPlayerMP;
              import net.minecraftforge.fml.common.network.simpleimpl.IMessage;
              import net.minecraftforge.fml.common.network.simpleimpl.IMessageHandler;
              import net.minecraftforge.fml.common.network.simpleimpl.MessageContext;
              import net.minecraftforge.fml.relauncher.Side;
              import net.minecraftforge.fml.relauncher.SideOnly;
              
              public class PacketSounds implements IMessage{
              
              private Integer integer;
              
              public PacketSounds()
              {
              
              }
              
              public PacketSounds(Integer i)
              {
              this.integer = i;
              }
              
              @Override
              public void fromBytes(ByteBuf buf) {
              this.integer = buf.readInt();
              }
              
              @Override
              public void toBytes(ByteBuf buf) {
              buf.writeInt(this.integer);
              }
              
              public static class Handler implements IMessageHandler <packetsounds, imessage="">{
              @Override
                 public IMessage onMessage(PacketSounds message, MessageContext ctx) 
                 {
              EntityPlayer player = Minecraft.getMinecraft().thePlayer;
              switch(message.integer)
              {
              case 0:
              player.worldObj.playSoundAtEntity(player, "csc:10-97", 1.0F, 1.0F);
              System.out.println("");
              break;
              case 1:
              //ctx.getServerHandler().playerEntity.playSound("csc:administrer", 1.0F, 1.0F);
              break;
              
              default:
              break;
              }
              return null;
              
                 }
              }
              
              }
              
              ```</packetsounds,>
              1 réponse Dernière réponse Répondre Citer 0
              • robin4002
                robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

                Surement car la fonction playSoundAtEntity ne fait rien côté client.
                Il y a une autre fonction pour jouer le son côté client, regardes dans GuiButton

                1 réponse Dernière réponse Répondre Citer 0
                • Gabs
                  Gabs dernière édition par

                      public void playPressSound(SoundHandler soundHandlerIn)
                      {
                          soundHandlerIn.playSound(PositionedSoundRecord.create(new ResourceLocation("gui.button.press"), 1.0F));
                      }
                  

                  le son est jouer comme ça mais j’arrive pas a importer SoundHandler du coup je suis bloqué !

                  1 réponse Dernière réponse Répondre Citer 0
                  • robin4002
                    robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

                    Minecraft.getMinecraft().getSoundHandler().playSound(PositionedSoundRecord.create(new ResourceLocation(“gui.button.press”), 1.0F));

                    1 réponse Dernière réponse Répondre Citer 1
                    • Gabs
                      Gabs dernière édition par

                      @‘robin4002’:

                      Minecraft.getMinecraft().getSoundHandler().playSound(PositionedSoundRecord.create(new ResourceLocation(“gui.button.press”), 1.0F));

                      Merci !

                      1 réponse Dernière réponse Répondre Citer 0
                      • 1 / 1
                      • Premier message
                        Dernier message
                      Design by Woryk
                      Contact / Mentions Légales

                      MINECRAFT FORGE FRANCE © 2018

                      Powered by NodeBB