MFF

    Minecraft Forge France
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes
    • Forge Events
      • Automatique
      • Foncé
      • Clair
    • S'inscrire
    • Se connecter

    Problème de rendu d'entité custom

    Planifier Épinglé Verrouillé Déplacé Résolu Anciennes versions
    1.6.4
    15 Messages 4 Publieurs 5.1k Vues 1 Watching
    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.
    • robin4002R Hors-ligne
      robin4002 Moddeurs confirmés Rédacteurs Administrateurs
      dernière édition par

      @‘AlphaSwittleTeam’:

      Mais ce n’est pas un problème d’entity, puisqu’elle apparait et explose, sauf que quand elle apparait elle est invisible !

      Si. Enregistrer une entité sert pour les paquets, pour rappel, il y a deux monde :
      WorldClient (world.isRemote) qui s’occupe du rendu.
      WorldServer (!world.isRemote) qui s’occupe de tout le reste.

      Il est logique que l’entité spawn sur le world server, puis le paquet envoie au client et le client fait le rendu. Et c’est la que ça coince, ton entité existe sur le world serveur (donc elle explose bien) mais pas sur le world client, donc elle ne se voit pas. C’est un problème de synchro, faut que je regarde ça plus en détail (d’ailleurs il y a le même problème avec les projectiles, j’avais prévu de faire un tutoriel sur les projectiles je vais essayer de faire ça au plus vite).

      1 réponse Dernière réponse Répondre Citer 0
      • ÜberfapÜ Hors-ligne
        Überfap
        dernière édition par

        Merci de m’en informer, mais en attendant je fais quoi x) ?

        Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
        Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

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

          Continuer à chercher de ton côté et donner la solution si tu trouve avant moi 😉

          1 réponse Dernière réponse Répondre Citer 0
          • T Hors-ligne
            totos51
            dernière édition par

            Je n’ai malheursement pas la solution, je me rappelle que quand j’avais fais mon mod en vanilla au début, pour la TNT il avait fallu que j’enregistre dans les packets mon entité, c’est peut être une piste je n’en sais rien, plus exactement j’enregistrait dans le netLoginHandler je crois qui lui appellait le packet qu correspond. Désolé de ne pas pouvoir aidé plus.

            Peut être devrais tu regarder le code d’IC2?

            1 réponse Dernière réponse Répondre Citer 0
            • ÜberfapÜ Hors-ligne
              Überfap
              dernière édition par

              Je vais essayer merci de la piste !
              @Robin4002 la course à la solution x)

              Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
              Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

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

                Trouvé :
                Dans la fonction init de ta classe principale ajoute :

                EntityRegistry.registerModEntity(EntityPowderBarrel.class, "powderbarrel", 201, this.instance, 256, 1, true);
                

                Dans la classe de ton entité :

                public class EntityPowderBarrel extends Entity
                

                devient :

                public class EntityPowderBarrel extends Entity implements IEntityAdditionalSpawnData
                

                Et ajoute (toujours dans la classe de l’entité) les deux fonctions :

                @Override
                public void writeSpawnData(ByteArrayDataOutput data)
                {
                data.writeInt(this.fuse);
                }
                
                @Override
                public void readSpawnData(ByteArrayDataInput data)
                {
                this.fuse = data.readInt();
                }
                
                1 réponse Dernière réponse Répondre Citer 0
                • T Hors-ligne
                  totos51
                  dernière édition par

                  je suis curieux de savoir comme t’es venu l’idée de chercher ça?

                  1 réponse Dernière réponse Répondre Citer 0
                  • GuguG Hors-ligne
                    Gugu
                    dernière édition par

                    Robin est un fan de débuggage 😛

                    Et j’avais le même soucis pour un mod sur le quel je travail :3

                    "If you have a comprehensive explanation for everything then it decreases uncertainty and anxiety and reduces your cognitive load. And if you can use that simplifying algorithm to put yourself on the side of moral virtue then you’re constantly a good person with a minimum of effort."
                    ― Jordan B. Peterson

                    1 réponse Dernière réponse Répondre Citer 0
                    • T Hors-ligne
                      totos51
                      dernière édition par

                      Hum j’oublie pas que cette page existe, ça pouura me servir ^^
                      Edit: La touche entrée est trop pret du reste du clavier à cette heure ci je trouve, pas vous?

                      1 réponse Dernière réponse Répondre Citer 0
                      • ÜberfapÜ Hors-ligne
                        Überfap
                        dernière édition par

                        Merci Robin Je t’aime 😄 Tu seras dans les crédits du mod !

                        Si je t'ai aidé, n'hésites pas à mettre un point de réputation positif !
                        Si tu m'as aidé, je n'hésiterais pas à t'en donner à mon tour !

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

                        MINECRAFT FORGE FRANCE © 2024

                        Powered by NodeBB