MFF

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

    [1.6.4]Besoin d'un guide

    Planifier Épinglé Verrouillé Déplacé Sans suite
    1.7.x
    55 Messages 5 Publieurs 14.4k 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.
    • MugiwaxarM Hors-ligne
      Mugiwaxar
      dernière édition par

      Rebonjours a tous !

      J’ai une petite question, je voudrais simplement savoir si il y à une fonction qui permet de dire par exemple:

      -Si un joueur s’approche à moins de 10 blocs de ce bloc, sa vie remonte

      Merci de votre aide ^^

      1 réponse Dernière réponse Répondre Citer 0
      • Superloup10S Hors-ligne
        Superloup10 Modérateurs
        dernière édition par

        Regarde dans le code du Beacon, c’est le seul bloc du jeu qui redonne de la santé jusqu’à une certaine distance.

        Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

        Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

        1 réponse Dernière réponse Répondre Citer 1
        • MugiwaxarM Hors-ligne
          Mugiwaxar
          dernière édition par

          Mais tu sais que t’es génial, sa marche ^^

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

            Le beacon donne un effet de potion, en utilisant une méthode pour savoir si le joueur est a (Niveau * 10) + 10 blocks du beacon il me semble

            "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
            • MugiwaxarM Hors-ligne
              Mugiwaxar
              dernière édition par

              @‘Gugu42’:

              Je suis membre de la FFMT ! N’hésitez pas a me demander de l’aide 🙂

              Mon pauvre, faut jamais me dire un truc du genre à moi 😄 (même dans une signature)

              Par toute hasard, est-ce que tu aurais la possibilité (et le temps) de me faire un petit exemple ? J’ai un ptit peut du mal 😞

              Mici beaucoup !

              Edit: Grosse faute de grammaire

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

                Pour l’exemple, il faut que ton block soit une TileEntity, et ensuite tu peux copier / coller le code du beacon.

                ( Surtout cette partie :

                
                public void updateEntity()
                {
                this.addEffectsToPlayers();
                }
                
                private void addEffectsToPlayers()
                {
                double d0 = DISTANCE_D\'EFFET;
                byte b0 = NIVEAU DE L\'EFFET;
                
                AxisAlignedBB axisalignedbb = AxisAlignedBB.getAABBPool().getAABB((double)this.xCoord, (double)this.yCoord, (double)this.zCoord, (double)(this.xCoord + 1), (double)(this.yCoord + 1), (double)(this.zCoord + 1)).expand(d0, d0, d0);
                axisalignedbb.maxY = (double)this.worldObj.getHeight();
                List list = this.worldObj.getEntitiesWithinAABB(EntityPlayer.class, axisalignedbb);
                Iterator iterator = list.iterator();
                EntityPlayer entityplayer;
                
                while (iterator.hasNext())
                {
                entityplayer = (EntityPlayer)iterator.next();
                entityplayer.addPotionEffect(new PotionEffect(TON_EFFET_DE_POTION, 180, b0, true));
                }
                }
                
                

                Le addEffectsToPlayer vérifie qu’un joueur se trouve a portée ( AxisAlignedBB = Boite de collisions en gros, ou plutôt boite de détection ), et lui ajoute l’effet si c’est le cas.

                Le updateEntity tick la méthode

                "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
                • MugiwaxarM Hors-ligne
                  Mugiwaxar
                  dernière édition par

                  Génial, merci beaucoup ^^
                  Je suis pas grand fan de copier/coller un code que je comprend pas par contre 🙂

                  Je vais tester et je te tiens au courant !

                  Faire d’un bloc une TileEntity, je fait comment ?

                  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

                    http://www.minecraftforgefrance.fr/showthread.php?tid=106

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

                      http://www.minecraftforgefrance.fr/showthread.php?tid=106

                      ^ Pour les TileEntity

                      J’ai expliqué la base des méthodes, après elles sont assez simple

                      "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
                      • MugiwaxarM Hors-ligne
                        Mugiwaxar
                        dernière édition par

                        Jolie syncro

                        Merci !

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

                          Y-a t’il par hasard aussi un tutoriel qui montre comment par exemple: supprimer un bloc x secondes après qu’il est été posé?

                          1 réponse Dernière réponse Répondre Citer 0
                          • Superloup10S Hors-ligne
                            Superloup10 Modérateurs
                            dernière édition par

                            Il faudrait que ton bloc soit aussi une entitée (comme la TNT), pour tuer l’entitée et donc détruire le bloc, je sais pas trop.

                            Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

                            Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

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

                              Ba en gros, je cherche un moyen de faire un chronos qui dit: wait avant la prochaine instruction

                              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

                                Pas forcement, dans la fonction updateEntity, tu fais un timer, puis tu fais un worldObj.setBlockToAir(xCoord, yCoord, zCoord); quand le timer à atteint un certain nombre.

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

                                  Hum… du genre ?

                                  
                                  import java.util.Timer;
                                  import java.util.TimerTask;
                                  
                                  @Override
                                  public int onBlockPlaced(final World world, final int x, final int y, final int z, int side, float hitX, float hitY, float hitZ, int metadata)
                                  {
                                  
                                  Timer timer = new Timer();
                                  final int time = 2;
                                  final int timeInSeconds = time * 1000;
                                  TimerTask task = new TimerTask()
                                  {
                                  public void run()
                                  {
                                  world.setBlockToAir(x, y, z);
                                  }
                                  };
                                  
                                  timer.schedule( task, timeInSeconds );
                                  
                                  return super.onBlockPlaced(world, x, y, z, side, hitX, hitY, hitZ, metadata);
                                  }
                                  
                                  

                                  Au fait, quel différence entre x et hitX ??

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

                                    Pas vraiment;

                                    Dans ton tileEntity, tu défini une variable int temps de (secondes * 20) qui représente le temps que le block reste

                                    Dans la méthode d’update, tu mets temps–;
                                    Tu ajoute une condition if(temps <= 0){ //Transforme ton block en air } dans la méthode update

                                    "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
                                    • MugiwaxarM Hors-ligne
                                      Mugiwaxar
                                      dernière édition par

                                      Ok, super, je comprend de mieux en mieux ^^
                                      Merci beaucoup !

                                      Par contre, dans la fonction: notifyBlockChange, a quoi correspond la dernière valeur ?

                                      Y a t’il un tutoriel qui explique comment utiliser la communication client <-> serveur ? Je galère vachement à ce niveau la 😞

                                      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

                                        /**
                                        * The block type change and need to notify other systems Args: x, y, z, blockID
                                        */
                                        public void notifyBlockChange(int par1, int par2, int par3, int par4)
                                        {
                                        this.notifyBlocksOfNeighborChange(par1, par2, par3, par4);
                                        }
                                        

                                        Le dernier paramètre est l"id du bloc qui a changé.

                                        Non, il y a pas de tutoriel communication client ? serveur, mais ça a été traité ici :
                                        http://www.minecraftforgefrance.fr/showthread.php?tid=391&pid=4167#pid4167

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

                                          Jvai voir ça, et si je peux je ferais un tutoriel la dessu

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

                                            Y a t-il un moyen de savoir si une entité est à proximité d’un bloc ?
                                            (Sans scanner la position de toute les entités à chaque tick ce qui pourrait s’avérée très lourd pour le serveur :D)

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

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB