MFF

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

    Les events en 1.8

    Planifier Épinglé Verrouillé Déplacé Résolu 1.8.x
    1.8
    16 Messages 5 Publieurs 4.0k 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.
    • isadorI Hors-ligne
      isador Moddeurs confirmés Modérateurs
      dernière édition par

      si tu ne nous dis pas les erreur ca va être difficile de t’aider

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

        @‘geekuko’:

        Bonjour j’ai un souci avec mon event (event pour créer un portail) , j’ai récupéré qui date de la 1.7 et quand je le met en 1.8 il y a un max d’erreur.
        pouvez-vous m’aider à la corriger please

        package EpicBoss;
        
        import net.minecraft.block.Block;
        import net.minecraft.entity.player.EntityPlayer;
        import net.minecraft.init.Blocks;
        import net.minecraft.item.Item;
        import net.minecraft.item.ItemBlock;
        import net.minecraft.item.ItemStack;
        import net.minecraft.world.World;
        import net.minecraftforge.event.entity.player.PlayerInteractEvent;
        import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
        
        public class eventmanager {
        
        @SubscribeEvent
        public void onPlayerInteract(PlayerInteractEvent event){
        System.out.print("true event");
        final World world = event.entityLiving.worldObj;
        if (world.isRemote || !event.action.equals(PlayerInteractEvent.Action.RIGHT_CLICK_BLOCK))
        return;
        
        ItemStack stack = event.entityPlayer.inventory.getCurrentItem();
        EntityPlayer player = event.entityPlayer;
        
        int x = event.x, y = event.y, z = event.z;
        if (event.face == 0)
        –y;
        else if (event.face == 1)
        ++y;
           else if (event.face == 2)
        --y;
        else if (event.face == 3)
        ++y;
        else if (event.face == 4)
        --x;
        else if (event.face == 5)
        ++x;
        if (stack != null && stack.getItem() instanceof ItemBlock){
        if (Item.getIdFromItem(stack.getItem()) == Block.getIdFromBlock(Blocks.diamond_block)){
        if (world.getBlock(x, y, z + 1) == Blocks.air &&
        world.getBlock(x, y, z - 1) == Blocks.air &&
           world.getBlock(x + 1, y, z) == Blocks.air &&
        world.getBlock(x - 1, y, z) == Blocks.air &&
        world.getBlock(x, y, z + 2) == Blocks.stone &&
        world.getBlock(x, y, z - 2) == Blocks.stone &&
        world.getBlock(x + 2, y, z) == Blocks.stone &&
        world.getBlock(x - 2, y, z) == Blocks.stone &&
        world.getBlock(x + 1, y, z + 1) == Blocks.air &&
        world.getBlock(x + 1, y, z - 1) == Blocks.air &&
           world.getBlock(x - 1, y, z + 1) == Blocks.air &&
        world.getBlock(x - 1, y, z - 1) == Blocks.air ) {
        
        world.setBlock(x, y, z, epicboss.blockteleporter, 0, 2);
        world.setBlock(x - 1, y, z, epicboss.blockteleporter, 0, 2);
        world.setBlock(x + 1, y, z, epicboss.blockteleporter, 0, 2);
        world.setBlock(x, y, z - 1, epicboss.blockteleporter, 0, 2);
        world.setBlock(x, y, z + 1, epicboss.blockteleporter, 0, 2);
        }
        
        }
        }
        }
        }
        
        

        d’avance merci

        Premièrement, serait-il possible de dire où sont les erreurs.
        Deuxièmement, tu utilises un PlayerInteractEvent donc il ne devrait apparaître nulle part dans ton code event.entityLiving.
        Troisièmement, pour le position utilise la position du joueur au lieu de celle de l’event.
        Quatrièmement, je suppose que le event.face correspond à là où regarde le joueur, pour ça il faut utiliser EnumFacing directionHorizontal = event.entityPlayer.getHorizontalFacing;
        Cinquièmement, pour trouver si l’item correspond à un certain Item, il faut faire stack.getItem == TonItem (si c’est un block, il faut faire Item.getItemFromBlock(TonBlock).
        Sixièmement, pour savoir si les blocs autour sont un certain bloc, il faut utiliser world.getBlockState(BlockPos).getBlock() == Blocks.air .

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

          je comprend pas tt , puis ce code il fonctionnai tres bien en 1.7 !!
          il y a tellement d’erreur que pour les voir il te serai plus facile pour toi de copier le code et de le tester ('enfin si tu à l’envi et le temps)

          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

            Pour les coordonnés, si il faut utiliser ceux de l’event puisqu’il faut les coordonnés où le joueur à fait le clic droit et non les coordonnées du joueur.
            Ce qui change c’est qu’il faut utiliser les BlockPos à la place de x y z

            Pour event.entityLiving ça ne cause aucun problème puisque de toute façon EntityPlayer est extends EntityLivingBase

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

              Un package avec des majuscules et une classe qui commence par une minuscule, c’est une erreur de convention.
              Utiliser event.entityLiving quand on est dans un PlayerInteractEvent, c’est une erreur de sémantique.
              Les events.face vont être remplacé par des Enum si ce n’est pas déjà fait.

              Si tu codes dans eclipse, tu as un onglet “problems”, la dedans toutes les erreurs sont décrites.

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

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

                je comprend pas comment on utilise le BlockPos …

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

                  @‘geekuko’:

                  je comprend pas comment on utilise le BlockPos …

                  BlockPos est simplement une classe contenant les coordonnées d’un bloc exemple : new BlockPos(x,y,z).
                  il remplace la plupart des paramètres x,y,z.

                  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 1
                  • geekukoG Hors-ligne
                    geekuko
                    dernière édition par

                    quelqu’un pourrai me le corriger directement ? car la je tourne en rond please cela serai trop simpa

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

                      @‘geekuko’:

                      quelqu’un pourrai me le corriger directement ? car la je tourne en rond please cela serai trop simpa

                      Je suis en train mais j’ai un problème avec le event.face == 0, il faudrait que tu me redonnes les directions sans les numéros car pour moi 0 = south or tes nombres vont jusqu’à 5 mais il n’y a que 4 directions !

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

                        merde ben la … au pire ta skype? ca serai plus simple non? demande moi c’est geekuko

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

                          
                          @SubscribeEvent
                          public void onPlayerInteract(PlayerInteractEvent event) {
                          ItemStack stack = event.entityPlayer.getCurrentEquippedItem();
                          
                          if (!event.world.isRemote && event.action == PlayerInteractEvent.Action.RIGHT_CLICK_BLOCK && stack != null && stack.getItem() == Items.apple && event.world.getBlockState(event.pos).getBlock() == Blocks.diamond_block) {
                          BlockPos pos = event.pos;
                          Block block = Blocks.air;
                          Block block1 = Blocks.stone;
                          boolean flag = event.world.getBlockState(pos.south()).getBlock() == block && event.world.getBlockState(pos.north()).getBlock() == block && event.world.getBlockState(pos.east()).getBlock() == block && event.world.getBlockState(pos.west()).getBlock() == block;
                          boolean flag1 = event.world.getBlockState(pos.south().south()).getBlock() == block1 && event.world.getBlockState(pos.north().north()).getBlock() == block1 && event.world.getBlockState(pos.east().east()).getBlock() == block1 && event.world.getBlockState(pos.west().west()).getBlock() == block1;
                          boolean flag2 = event.world.getBlockState(pos.south().east()).getBlock() == block1 && event.world.getBlockState(pos.south().west()).getBlock() == block1 && event.world.getBlockState(pos.north().east()).getBlock() == block1 && event.world.getBlockState(pos.north().west()).getBlock() == block1;
                          
                          if (flag && flag1 && flag2) {
                          event.world.setBlockState(pos, Blocks.gold_block.getDefaultState());
                          event.world.setBlockState(pos.south(), Blocks.gold_block.getDefaultState());
                          event.world.setBlockState(pos.north(), Blocks.gold_block.getDefaultState());
                          event.world.setBlockState(pos.east(), Blocks.gold_block.getDefaultState());
                          event.world.setBlockState(pos.west(), Blocks.gold_block.getDefaultState());
                          event.entityPlayer.inventory.consumeInventoryItem(Items.apple);
                          }
                          }
                          }
                          
                          

                          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 1
                          • geekukoG Hors-ligne
                            geekuko
                            dernière édition par

                            merciiiiiiiii SCAREX!!!

                            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

                              Si c’est résolu, mets la balise résolu.

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

                                c’est ou la balise?

                                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 faut tu édites ton premier message puis que tu change la balise.

                                  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