MFF

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

    Régénération d'un mob aux contact d'autres

    Planifier Épinglé Verrouillé Déplacé Les entités
    1.7.x
    18 Messages 5 Publieurs 7.8k 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

      currentPosX = this.posX;
      currentPosY = this.posY;
      currentPosZ = this.posZ;
      

      Ceci ne sert à rien, car tu as déjà appelé la méthode avec les mêmes valeurs.

      Sinon le tutoriel est pas mal, le seul problème c’est que je ne le trouve pas assez général, et donc je me demande s’il va servir à beaucoup de personne.

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

        Oui je sais mais je me suis rendu compte que ça ne mets pas les valeurs que je veut 😞

        Et pour le tuto, oui je sais que c’est pas général mais bon ça peut toujours servir !

        Et j’aurais une question : est ce que se serait utile de faire un tuto pour coder plusieurs mods en meme temps en 1.7 ? quand je dis coder plusieurs mods je veut dire avoir chaque mod séparément 😄

        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

          Ça peut toujours servir oui, je compte aussi faire un tutoriel pour faire un setup comme je le fait moi quand j’aurai plus avancé dans les autres tuto.

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

            Oki donc pas la peine que je le fasse moi ?

            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

              Ça dépend, on a peut être pas la même façon de faire et mon tuto va mettre du temps à sortir.

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

                Ok alors je ferais quand j’aurais le temps 😉

                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
                • Y Hors-ligne
                  Ydriss
                  dernière édition par

                  Salut,

                  Déjà merci pour ce tuto 🙂 ! Cependant j’aurai une petite question, tout marche comme il faut, mais comment peut t-on ajouter un effet de cœur sur le mob “chef” afin de montrer aux joueurs que le mob est entrain de se régénérer ?
                  Car pour le moment il se régénère, mais les joueurs ne peuvent “pas le savoir” ! J’aimerai donc rajouter un effet visuel ^^’ !

                  Merci d’avance 🙂 !

                  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

                    Tu peux utiliser world.spawnParticule pour faire apparaitre des particules de cœurs.

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

                      Merci, de l’info mais … peut tu me dire comment l’incorporer dans le code du mob car je ne vois pas bien comment faire 😕

                      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

                        Il suffit de le mettre au même endroit que la fonction heal. Après tu peux regarder le code four ou d’autre truc de mc qui font des particules pour un exemple d’utilisation de cette fonction.

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

                          import java.util.List;
                          
                          import net.minecraft.entity.SharedMonsterAttributes;
                          import net.minecraft.entity.monster.EntityMob;
                          import net.minecraft.entity.monster.EntityZombie;
                          import net.minecraft.util.AxisAlignedBB;
                          import net.minecraft.world.World;
                          
                          public class BlastOrg extends EntityMob {
                          
                          public BlastOrg(World world) 
                          {
                          super(world);
                          }
                          
                          public void applyEntityAttributes()
                          {
                          super.applyEntityAttributes();
                          this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(20D);
                          this.getEntityAttribute(SharedMonsterAttributes.attackDamage).setBaseValue(6D);
                          this.getEntityAttribute(SharedMonsterAttributes.knockbackResistance).setBaseValue(1D);
                          this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.8D);
                          
                          }
                          
                          public void onLivingUpdate()
                          {
                          super.onLivingUpdate();
                          this.getEntitiesNearby(this.worldObj, this.posX, this.posY, this.posZ);
                          }
                          
                          private void getEntitiesNearby(World world, double currentPosX, double currentPosY, double currentPosZ) 
                          {
                          currentPosX = this.posX;
                          currentPosY = this.posY;
                          currentPosZ = this.posZ;
                          List entitiesNearby = world.getEntitiesWithinAABB(EntityZombie.class, AxisAlignedBB.getBoundingBox(currentPosX, currentPosY, currentPosZ, currentPosX + 32, currentPosY + 32, currentPosZ + 32));
                          
                          for (float i = 0; i <= entitiesNearby.size(); i++)
                          {
                          if (!this.worldObj.isRemote)
                          {
                          this.heal(i);
                          worldObj.spawnParticle("heart", (double)(0.5F + 0.6F), (double)0.7F, (double)(0.7F - 0.6F), 0.0D, 0.0D, 0.0D);
                          }
                          
                          }
                          
                          }
                          
                          }
                          
                          
                          1 réponse Dernière réponse Répondre Citer 0
                          • Y Hors-ligne
                            Ydriss
                            dernière édition par

                            Déso du double post, mais j’ai essayé de faire comme tu m’a dit, mais les particules n’apparaissent pas sur le mob “chef” au contact des autres 😕

                            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

                              spawnParticle est une méthode qui n’a que effet côté client il me semble, il faudrait donc le sortir de la condition if (!this.worldObj.isRemote)

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

                                Bha je cherche je cherche, mais aucun résultat concluant pour le moment 😕 !
                                Si jamais t’a un morceau de code qui marche je suis preneur, en attendant je continu de chercher, j’éditerai ce post si je trouve.

                                [Si je trouve je placerai le morceau de code, comme ça si quelqu’un en a besoin il pourra trouver le morceau de code 🙂 ]

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

                                  Regardes dans referenced libraries ensuite forge et ensuite dans un package qui se finit par block recherche dans BlockFurnace.java

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

                                    J’ai déjà cherché, j’ai déjà trouver la partie du code du four mais pas moyen d’arriver à l’adapter pour le mob

                                    1 réponse Dernière réponse Répondre Citer 0
                                    • RedRelayR Hors-ligne
                                      RedRelay Moddeurs confirmés
                                      dernière édition par

                                      Pour moi c’est plus un exemple qu’un tutoriel.
                                      Par contre, il y a des truc qui ne servent a rien comme l’a dit Robin.

                                      ​private void getEntitiesNearby(World world, double currentPosX, double currentPosY, double currentPosZ)
                                      
                                      {
                                      currentPosX = this.posX;
                                      currentPosY = this.posY;
                                      currentPosZ = this.posZ;
                                      
                                      List entitiesNearby = world.getEntitiesWithinAABB(VotreSousFifre.class, AxisAlignedBB.getBoundingBox(currentPosX, currentPosY, currentPosZ, currentPosX + 32, currentPosY + 32, currentPosZ + 32));
                                      }
                                      

                                      Ça typiquement ça ne sert a rien, ça a l’air d’être faux et c’est une erreur de conception orientée objet.
                                      C’est pas propre du tout, ça duplique des variables, ça rend le code illisible, en tout cas pas clair du tout.

                                      Normalement le code de ta fonction devrais juste être :

                                      ​​private List <entity>getEntitiesNearby()
                                      {
                                      
                                      return this.worldObj.getEntitiesWithinAABB(VotreSousFifre.class, AxisAlignedBB.getBoundingBox(this.posX, this.posY, this.posZ, this.posX + 32, this.posY + 32, this.posZ + 32));
                                      }
                                      

                                      Mais vu que tu n’as qu’une seule instruction dans ta fonction et que la visibilité de celle-ci est privée, ça ne sert a rien de faire une fonction pour ça. Autant directement écrire l’instruction dans [size=xx-smallonLivingUpdate()]

                                      Edit : je n’avais pas vu que tu avais mis le heal dans la fonction getEntitiesNearby(), c’est encore pire du coup puisque la fonction n’a pas un nom correct. Déjà faire un assesseur qui retourne void c’est louche, mais getEntitiesNearby() veut bien dire “obtenir les entités à proximités” et pas faire le calcul des entités puis soigner au cas ou. Il faut mettre ton code au propre.</entity>

                                      –------------------------------------------------------------------------------------
                                      Si tu trouves mon intervention pertinente, n'hésite pas a m…

                                      1 réponse Dernière réponse Répondre Citer 0
                                      • robin4002R robin4002 a fait référence à ce sujet sur
                                      • robin4002R robin4002 a fait référence à ce sujet sur
                                      • robin4002R robin4002 a fait référence à ce sujet sur
                                      • 1 / 1
                                      • Premier message
                                        Dernier message
                                      Design by Woryk
                                      ContactMentions Légales

                                      MINECRAFT FORGE FRANCE © 2024

                                      Powered by NodeBB