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

    Non résolu Spawn entity via Keybind

    Sans suite
    1.12.2
    2
    5
    185
    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.
    • FeedBack
      FeedBack dernière édition par

      Bonjour,
      je veux faire spawn une entité avec un keybind et pour ce faire j’utiliser un packet (ENCORE)
      Malheureusement, l’entité n’est pas summon.
      Merci de votre aide ^^

      public class KeybindHandler
      {
          KeyBinding[] keyBindings = ClientProxy.keyBindings;
      
          @SubscribeEvent
          public void onKeyInput(KeyInputEvent e)
          {
              Minecraft mc = Minecraft.getMinecraft();
              EntityPlayer player = Minecraft.getMinecraft().player;
      
              if(keyBindings[0].isPressed() && player.getHeldItem(EnumHand.MAIN_HAND).getItem() == ItemInit.THOR_HAMMER)
              {
                  RayTraceResult rayTraceResult = player.rayTrace(15, mc.getRenderPartialTicks());
      
                  BlockPos pos = rayTraceResult.getBlockPos();
      
                  // System.out.println(pos.getX() + " " + pos.getY() + " " + pos.getZ() + " ");
      
                  Main.network.sendToServer(new SyncThunder(pos.getX(), pos.getY(), pos.getZ()));
              }
          }
      }
      
      
      public class SyncThunder implements IMessage
      {
          private int x, y, z;
      
          public SyncThunder(int _x, int _y, int _z)
          {
              this.x = _x;
              this.y = _y + 1;
              this.z = _z;
          }
      
          public SyncThunder()
          {}
      
          public static class Handler implements IMessageHandler<SyncThunder, IMessage>
          {
      
              @Override
              public IMessage onMessage(SyncThunder message, MessageContext ctx)
              {
                  EntityPlayerMP serverPlayer = ctx.getServerHandler().player;
      
                  WorldServer worldServer = serverPlayer.getServerWorld();
                  worldServer.addScheduledTask(() ->
                  {
                      serverPlayer.world.spawnEntity(new EntityBabyEarthDragon(serverPlayer.world, (double)message.x, (double)message.y, (double)message.z));
                  });
                  return null;
              }
      
              public static EntityPlayer getPlayer(MessageContext context)
              {
                  return Main.proxy.getPlayer(context);
              }
          }
      
          @Override
          public void fromBytes(ByteBuf buf)
          {
      
          }
      
          @Override
          public void toBytes(ByteBuf buf)
          {
      
          }
      
      }
      
      1 réponse Dernière réponse Répondre Citer 0
      • robin4002
        robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

        Bonsoir,
        La fonction onMessage du paquet est-elle bien appelé ?

        Est-ce qu’il y a une erreur dans la console ?

        FeedBack 1 réponse Dernière réponse Répondre Citer 0
        • FeedBack
          FeedBack @robin4002 dernière édition par

          @robin4002 bonsoir,
          J’ai bien testé et la fonction appelée par “addScheduleTask” est bien appelée
          Il n’y a pas non plus d’erreurs.

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

            L’entité fonctionne correctement ? (par exemple, as-tu déjà essayé de la spawn via un œuf ou la commande /summon) ?

            FeedBack 1 réponse Dernière réponse Répondre Citer 0
            • FeedBack
              FeedBack @robin4002 dernière édition par

              @robin4002 oui elle marche parfaitement.
              J’ai aussi testé avec une entité vanilla

              1 réponse Dernière réponse Répondre Citer 0
              • Déplacé de Support pour les moddeurs par  robin4002 robin4002 
              • 1 / 1
              • Premier message
                Dernier message
              Design by Woryk
              Contact / Mentions Légales

              MINECRAFT FORGE FRANCE © 2018

              Powered by NodeBB