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

Résolu Problème de lit

1.8.x
1.8
4
46
7.8k
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.
  • EmotionFox
    EmotionFox dernière édition par 30 juin 2015, 13:11

    commentaires six :

    “Robin, j’ai utilisé pas mal de System.out.print() tous relativement intéressant. D’une première part la valeur “ring” est égal à false lors du deuxième event, j’ai donc placé un print lors de la condition :”

    Bref j’ai placé un print à la fin et l’erreur pour faire court doit venir de :

    player.getEntityData().setBoolean("ring", true);
    

    1 réponse Dernière réponse Répondre Citer 0
    • SCAREX
      SCAREX dernière édition par 30 juin 2015, 13:12

      Bon, écoute, si tu ne veux pas que je t’aide, dit le. Je vois pas comment il pourrais y avoir un problème à cet endroit. Le problème vient forcément d’un autre endroit.

      Site web contenant mes scripts : http://SCAREXgaming.github.io

      Pas de demandes de support par MP ni par skype SVP.
      Je n'accepte sur skype que l…

      1 réponse Dernière réponse Répondre Citer 0
      • EmotionFox
        EmotionFox dernière édition par 30 juin 2015, 13:17

        Non c’est juste que tu devrais prendre le temps de lire, j’écris correctement français et je prend le temps de tout expliquer alors je vois pas pourquoi il y aurait un problème ^^’

        Pourtant si puisque lors du deuxième event “ring” = false et le print ne s’affiche pas dans la console dans le premier event comme si ça n’existais pas or le code du début avec cette même condition fonctionné parfaitement (donc ça ne viens pas de mon code principale).

        Ps: Ce print ci :

        if(player.inventory.getStackInSlot(i) != null && player.inventory.getStackInSlot(i).getItem() == EmotionItems.purpuraRing)
        {
        player.getEntityData().setBoolean("ring", true);
        player.getEntityData().setInteger("posX", pos.getX());
        player.getEntityData().setInteger("posY", pos.getY());
        player.getEntityData().setInteger("posZ", pos.getZ());
        System.out.print(player.getEntityData().getBoolean("ring"));
        }

        1 réponse Dernière réponse Répondre Citer 0
        • SCAREX
          SCAREX dernière édition par 30 juin 2015, 14:24

          J’ai trouvé d’où venait le problème : il y a 2 joueurs, l’ancien et le nouveau.

          Voici un code qui marche (remplace juste Items.apple par ton item) :

          @SubscribeEvent
          public void onLivingDeath(LivingDeathEvent event) {
          if (event.entityLiving instanceof EntityPlayer) {
          EntityPlayer player = (EntityPlayer) event.entityLiving;
          for (int i = 0; i < player.inventory.getSizeInventory(); i++) {
          if (player.inventory.getStackInSlot(i) != null && player.inventory.getStackInSlot(i).getItem() == Items.apple) {
          BlockPos pos = player.getPosition();
          player.getEntityData().setBoolean("ring", true);
          player.getEntityData().setInteger("posX", pos.getX());
          player.getEntityData().setInteger("posY", pos.getY());
          player.getEntityData().setInteger("posZ", pos.getZ());
          }
          }
          }
          }
          @SubscribeEvent
          public void onEntitySpawn(PlayerEvent.Clone event) {
          if (event.wasDeath) {
          EntityPlayer player = event.original;
          if (player.getEntityData().getBoolean("ring")) {
          event.entityPlayer.addPotionEffect(new PotionEffect(Potion.fireResistance.getId(), 800, 0, true, false));
          event.entityPlayer.setPosition(player.getEntityData().getInteger("posX"), player.getEntityData().getInteger("posY"), player.getEntityData().getInteger("posZ"));
          }
          }
          }

          Site web contenant mes scripts : http://SCAREXgaming.github.io

          Pas de demandes de support par MP ni par skype SVP.
          Je n'accepte sur skype que l…

          1 réponse Dernière réponse Répondre Citer 0
          • EmotionFox
            EmotionFox dernière édition par 30 juin 2015, 16:07

            D’accord merci beaucoup Scarex, bon du coup pour le problème online c’est réglé reste plus qu’à trouver comment téléporter le joueur même si il a un point de spawn grâce au lit 😕

            Ps: J’ai essayé avec l’event “LivingSpawnEvent” pour le respawn mais marche pas :C

            1 réponse Dernière réponse Répondre Citer 0
            • robin4002
              robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 30 juin 2015, 16:09

              Utilise un thread pour tp au bout de une seconde.

              1 réponse Dernière réponse Répondre Citer 0
              • SCAREX
                SCAREX dernière édition par 30 juin 2015, 16:53

                Dans le code que je t’ai donné, le joueur est téléporté quand il spawn même s’il a un lit.

                Site web contenant mes scripts : http://SCAREXgaming.github.io

                Pas de demandes de support par MP ni par skype SVP.
                Je n'accepte sur skype que l…

                1 réponse Dernière réponse Répondre Citer 0
                • EmotionFox
                  EmotionFox dernière édition par 30 juin 2015, 20:11

                  Robin : Malheureusement le thread ne fait que retarder le spawn d’une seconde 😕 Et même avec l’autre event ça ne fonctionne pas :C

                  Scarex : Chez moi ça ne fonctionne toujours pas 😕

                  1 réponse Dernière réponse Répondre Citer 0
                  • SCAREX
                    SCAREX dernière édition par 30 juin 2015, 20:14

                    Tu as bien mis exactement le même code ?

                    Site web contenant mes scripts : http://SCAREXgaming.github.io

                    Pas de demandes de support par MP ni par skype SVP.
                    Je n'accepte sur skype que l…

                    1 réponse Dernière réponse Répondre Citer 0
                    • EmotionFox
                      EmotionFox dernière édition par 30 juin 2015, 20:19

                      Oui Scarex, complétement identique 😕

                      1 réponse Dernière réponse Répondre Citer 0
                      • SCAREX
                        SCAREX dernière édition par 30 juin 2015, 20:44

                        Tu as bien pensé à mettre event.entityPlayer pour le setPosition, tu as l’effet de fire resistance ?

                        Site web contenant mes scripts : http://SCAREXgaming.github.io

                        Pas de demandes de support par MP ni par skype SVP.
                        Je n'accepte sur skype que l…

                        1 réponse Dernière réponse Répondre Citer 0
                        • EmotionFox
                          EmotionFox dernière édition par 30 juin 2015, 20:46

                          Oui tout fonctionne très bien, la téléportation sans le lit et le fire resistance dans tous les cas. J’ai pris le temps aussi de rajouter cette condition pour pallier au problème éventuelle et ça fonctionne parfaitement :

                          if(player.worldObj.provider.getDimensionId() == 0){}
                          

                          Dans le pire des cas sinon on vas pas débattre pendant une heure pour un petit problème comme ça et puis tempi.

                          1 réponse Dernière réponse Répondre Citer 0
                          • robin4002
                            robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 30 juin 2015, 20:57

                            Vérifier la version de Forge que vous utilisez chacun.

                            1 réponse Dernière réponse Répondre Citer 0
                            • EmotionFox
                              EmotionFox dernière édition par 30 juin 2015, 20:59

                              “forge-1.8-11.14.3.1449”

                              1 réponse Dernière réponse Répondre Citer 0
                              • SCAREX
                                SCAREX dernière édition par 30 juin 2015, 21:00

                                1.8 11.14.1.1336 : je l’ai mis sur mon mod de test que je ne mets pas à jour souvent. Je mets à jour mon workspace.

                                Site web contenant mes scripts : http://SCAREXgaming.github.io

                                Pas de demandes de support par MP ni par skype SVP.
                                Je n'accepte sur skype que l…

                                1 réponse Dernière réponse Répondre Citer 0
                                • robin4002
                                  robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 30 juin 2015, 21:19

                                  Dans ce cas faut check s’il n’y a pas eu un changement du côté de Forge.

                                  1 réponse Dernière réponse Répondre Citer 0
                                  • SCAREX
                                    SCAREX dernière édition par 30 juin 2015, 21:28

                                    1.8 11.14.3.1450 : fonctionne, le problème vient de toi. As-tu bien enregistré l’événement avec MinecraftForge et non FMLComonHandler ?

                                    Je te renvois le code utilisé :

                                    @SubscribeEvent
                                    public void onLivingDeath(LivingDeathEvent event) {
                                    if (event.entityLiving instanceof EntityPlayer) {
                                    EntityPlayer player = (EntityPlayer) event.entityLiving;
                                    for (int i = 0; i < player.inventory.getSizeInventory(); i++) {
                                    if (player.inventory.getStackInSlot(i) != null && player.inventory.getStackInSlot(i).getItem() == Items.apple) {
                                    BlockPos pos = player.getPosition();
                                    player.getEntityData().setBoolean("ring", true);
                                    player.getEntityData().setInteger("posX", pos.getX());
                                    player.getEntityData().setInteger("posY", pos.getY());
                                    player.getEntityData().setInteger("posZ", pos.getZ());
                                    }
                                    }
                                    }
                                    }
                                    @SubscribeEvent
                                    public void onEntitySpawn(PlayerEvent.Clone event) {
                                    if (event.wasDeath) {
                                    EntityPlayer player = event.original;
                                    if (player.getEntityData().getBoolean("ring")) {
                                    event.entityPlayer.addPotionEffect(new PotionEffect(Potion.fireResistance.getId(), 800, 0, true, false));
                                    event.entityPlayer.setPosition(player.getEntityData().getInteger("posX"), player.getEntityData().getInteger("posY"), player.getEntityData().getInteger("posZ"));
                                    }
                                    }
                                    }

                                    Site web contenant mes scripts : http://SCAREXgaming.github.io

                                    Pas de demandes de support par MP ni par skype SVP.
                                    Je n'accepte sur skype que l…

                                    1 réponse Dernière réponse Répondre Citer 0
                                    • EmotionFox
                                      EmotionFox dernière édition par 1 juil. 2015, 00:55

                                      Oui heureusement que oui ^^’ Et j’ai fais du copier coller, mais vraiment, pourtant quand on définie un point de spawn avec le lit et qu’ensuite on essaye de ce suicider avec la bague dans l’inventaire rien à faire la téléportation ne fonctionne pas :C

                                      Ps: J’ai update vers la dernière version de forge mais même dans l’autre aussi ça ne marchais pas alors il doit vraiment y avoir un problème quelque pars.

                                      1 réponse Dernière réponse Répondre Citer 0
                                      • SCAREX
                                        SCAREX dernière édition par 1 juil. 2015, 13:53

                                        Effectivement, j’ai regardé un peu le code, et en fait le clone est appelé après la téléportation au spawn mais avant la téléportation au lit.

                                        La seule solution que j’ai pu trouvé c’est d’utiliser le PlayerRespawnEvent de fml qui est appelé après, le seul problème c’est que les NBT tags ne sont pas clonés avec, il faut donc utiliser le clone event pour copier les NBT dans les tags du nouveau joueur pour ensuite les utiliser dans le PlayerRespawnEvent.

                                        Site web contenant mes scripts : http://SCAREXgaming.github.io

                                        Pas de demandes de support par MP ni par skype SVP.
                                        Je n'accepte sur skype que l…

                                        1 réponse Dernière réponse Répondre Citer 0
                                        • robin4002
                                          robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 1 juil. 2015, 15:49

                                          PlayerRespawnEvent vient aussi de Forge non ?

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

                                          MINECRAFT FORGE FRANCE © 2018

                                          Powered by NodeBB