MFF

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

    Grief et setblocktoair

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    14 Messages 4 Publieurs 2.5k 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.
    • SCAREXS Hors-ligne
      SCAREX
      dernière édition par

      @‘floriangabet’:

      Ok d’acc pour le second , mais le premier je vais essayer si je coince je reviens vers vous merci 🙂
      edit:
      j’ai réussis pour le grief merci!
      Par contre l’event que quand on pose un bloc j’ai pas trouvé.

      BlockEvent.PlaceEvent

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

        Merci,

        Alors j’ai fais ça j’ai oublier pas mal de chose je sais pas comment savoir si mon entity est a côté et faire le timer dans la class event.
        J’ai un problème aussi avec le setblocktoair pour les coords je fais comment je serrai dans le onplaceblock j’aurai fait event.x , event.y … mais dans living je procède comment merci.

        
        @SubscribeEvent
        public void onPlaceBlock(BlockEvent.PlaceEvent event){
        EntityLivingBase target = event.player.getAITarget();
        World world = event.world;
        if(event.placedBlock == Blocks.glass && ?)//entity à côté comment faire ?? && [font=Ubuntu, sans-serifd'autres aux alentours ont été posés ? -> je vois pas trop comment peut-etre avec le boundsblock]
        {
        System.out.println("bloc de verre placer");
        
        }
        }
        
        @SubscribeEvent
        public void onLiving(LivingUpdateEvent event){
        EntityLivingBase target = event.entityLiving;
        
        World world = target.worldObj;
        if(timer) // ??
        world.setBlockToAir(p_147468_1_, p_147468_2_, p_147468_3_);
        }
        
        

        En tout cas merci 🙂

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

          J’ai pas compris ce que tu voulais faire

          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
          • BrokenSwingB Hors-ligne
            BrokenSwing Moddeurs confirmés Rédacteurs
            dernière édition par

            Pour le timer il faut pas faire comme ça, regarde par ici : https://github.com/MFFbrokenSwing/FactionMod/blob/master/src/main/java/fr/mff/facmod/core/Homes.java#L110
            Tu ne peux pas faire de copier/coller, essai de comprendre

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

              Ah oui mais je viens d’y penser, je pense qu’utiliser l’event BlockEvent.PlaceEvent ne conviendra pas car il est fired uniquement lorsqu’il s’agit d’un joueur qui place le block. Seulement là on place les blocks grâce à du World#setBlock pas grâce au clic droit qu’aurait fait un joueur. Donc essaie de voir mais je pense que l’event n’est pas déclenché…
              Ensuite pour get ton entity à partir des coord’s de ta “prison de blocks de verre”, t’aurais pu te servir des AABB avec la méthode World#getEntitiesWithinAABB, qui t’aurais retourné une liste des entity se trouvant dans ta prison, mais comme logiquement il n’y en aurait qu’une seule, une boucle for ne t’aurait pas servi (un simple taList.get(0) aurait suffi).
              Sinon encore une autre alternative aurait été de parcourir la liste World#loadedEntityList, afin de voir si à chaque tour l’entity a pour même coords que celle de ta prison.

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

                Non il se déclenche pas… pas bien grave j’ai une idée c’est possible de faire en sorte que l’osque le monde “serveur” démarre tout les bloc de vitre du la map soit remplacer par des blocs d’air ?
                Logiquement oui mais pour get tout les blocs en verre je fais comment ?

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

                  @‘floriangabet’:

                  démarre** tout les bloc de vitre** du la map

                  Sa c’est juste impossible à faire. Le seul moyen aurait été d’avoir accès au constructeur de la classe du block de vitre, et qu’à chaque nouvelle instance, on l’ajoute à une liste, qu’on aurait ensuite parcouru pour ce que tu souhaites faire, mais comme on peut pas modif les .class…

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

                    @‘Plaigon’:

                    @‘floriangabet’:

                    démarre** tout les bloc de vitre** du la map

                    Sa c’est juste impossible à faire. Le seul moyen aurait été d’avoir accès au constructeur de la classe du block de vitre, et qu’à chaque nouvelle instance, on l’ajoute à une liste, qu’on aurait ensuite parcouru pour ce que tu souhaites faire, mais comme on peut pas modif les .class…

                    Je me suis tromper je voulais dire block d’air c’est quand même impossible ?

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

                      Sa ne change pas grand chose, même problème.
                      Après je n’ai pas pris le temps de chercher dans ma workspace 1.7x, mais de toutes manières je pense que c’est difficilement réalisable sans utiliser la réflexion, ou sans avoir à portée de main un PC gamer à 2000 balles 😉

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

                        Et en les changeant au fûr et à mesure du chargement des chunks, ça ne le ferai pas ?
                        Avec l’event ChunkEvent.Load (je crois) tu parcours les blocs du chunk (16 x 16 x 256) et si un bloc est une vitre, on le remplace par le l’air

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

                          @‘BrokenSwing’:

                          Et en les changeant au fûr et à mesure du chargement des chunks, ça ne le ferai pas ?
                          Avec l’event ChunkEvent.Load (je crois) tu parcours les blocs du chunk (16 x 16 x 256) et si un bloc est une vitre, on le remplace par le l’air

                          Au pire c’est bon vous inquiétez pas je vais changer de sort pour mon mod merci en tout cas les copains 🙂

                          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