MFF

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

    Dimension, structures.

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.x
    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.
    • T Hors-ligne
      totos51
      dernière édition par

      @utybo, non merci, pas de mod sur du vanilla :3
      @robin, cette classe est faite avec je ne sais plus quelle tool, sa principale est ainsi:

      
      public MommyDungeon(World world, Random rand, int i, int j, int k)
      {
      this.generate(world, rand, i, j, k);
      }
      
      

      visiblement le soucis vient de la condition car il ne me fais pas de print.
      serai-ce l’update qui pose un soucis?
      je suis en train de test pour la nuit je vais edit après

      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 devrait fonctionner alors oui, donc le problème vient de la fonction update.

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

          la nuit passe et le soleil se lève toujours.
          le problème vient visiblement des conditions. j’ai viré toutes les conditions, ils la fait respawn à chaque tick.

          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 y a une variable skylightSubtracted dans la classe World, faudrait voir pour la garder sur un nombre voulu (genre 4 ou 5) depuis un tick handler de type world.

            Après pour les games rules tu as la fonction getGameRules dans la classe world, donc dans le constructeur du provider tu peux tenter de faire :
            this.worldObj.getGameRules().setOrCreateGameRule(“keepInventory”, “true”);

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

              pour la nuit, j’ai simplement mis la variable hasnosky sur true 🙂
              pour le gamerule où mettre ça, pck je voudrais que ça s’applique à tout les mondes.
              j’ai test dans le worldprovider de la dimension que j’ai créé, je perd ma stuff.

              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

                Essaye depuis WorldEvent.Load dans ce cas.

                1 réponse Dernière réponse Répondre Citer 0
                • elias54E Hors-ligne
                  elias54 Administrateurs
                  dernière édition par

                  @‘robin4002’:

                  Pour la nuit, dans ton world provider essaye de mettre :

                  public boolean isDaytime()
                  {
                  return false;
                  }
                  

                  Pour le gamerule, aucune idée.

                  Pour ma dimension ça ne marche pas, le cycle jour/nuit continue de défiler. Il faut procéder autrement, je l’ai fait sur ma dimension.

                  https://github.com/elias54/FakeOres/blob/master/common/fr/elias/fakeores/dimension/FD_WorldProvider.java

                  Mon site | GitHub

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

                    oui le cycle continue de défiler mais en mettant ce bout de code + hasnosky sur true, il continue de défiler mais il fait toujours sombre.

                    1 réponse Dernière réponse Répondre Citer 0
                    • elias54E Hors-ligne
                      elias54 Administrateurs
                      dernière édition par

                      Pour la lumière regarde mon code ^^

                      Mon site | GitHub

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

                        J’ai fait quelques test au sujet du bloc quid oit faire spawn la maman creeper.
                        j’ai utilisé ce code:

                        
                        public class TileEntityCreepyBlock extends TileEntity
                        {
                        public Random rand;
                        public int count = 0;
                        public Date D = new java.util.Date();;
                        public int H = 0;
                        public int M = 0;
                        public int S = 0;
                        
                        @Override
                        public void updateEntity()
                        {
                        H = D.getHours();
                        M = D.getMinutes();
                        S = D.getSeconds();
                        System.out.println(H + "h");
                        System.out.println(M + "m");
                        System.out.println(S + "s");
                        
                        if (H == 12 && H == 16 && H == 20 && H == 22)
                        {
                        if (M == 49)
                        {
                        if (S == 0)
                        {
                        if (count == 0)
                        {
                        System.out.println("Mommy Creepy Respawn!");
                        final IEntitySelector livingFilter = new MommyFilter();
                        AxisAlignedBB Axis = AxisAlignedBB.getAABBPool().getAABB(this.xCoord - 24, this.yCoord - 2, this.zCoord - 25, this.xCoord + 24, this.yCoord + 2, this.zCoord + 25);
                        List entityTargetList = this.worldObj.selectEntitiesWithinAABB(Entity.class, Axis, livingFilter);
                        for (int i = 0; i < entityTargetList.size(); i++)
                        {
                        Entity entityTarget = (Entity)entityTargetList.get(i);
                        if (entityTarget instanceof EntityMommyCreepy)
                        {
                        entityTarget.setDead();
                        }
                        }
                        new MommyDungeon(this.worldObj, rand, this.xCoord, this.yCoord, this.zCoord);
                        if(!worldObj.isRemote)
                        {
                        spawnMommyCreepy(this.worldObj, (double)(this.xCoord + 23), (double)(this.yCoord + 1), (double)(this.zCoord + 24));
                        }
                        count++;
                        }
                        
                        }
                        if (S == 1)
                        {
                        count = 0;
                        }
                        }
                        }
                        }
                        
                        public void spawnMommyCreepy(World world, double posX, double posY, double posZ)
                        {
                        Entity entity = new EntityMommyCreepy(world);
                        entity.setPosition(posX, posY, posZ);
                        world.spawnEntityInWorld(entity);
                        }
                        }
                        
                        

                        et le résultat dans la console est le suivant:

                        
                        2014-06-12 11:02:05 [Infos] [STDOUT] 11h
                        2014-06-12 11:02:05 [Infos] [STDOUT] 1m
                        2014-06-12 11:02:05 [Infos] [STDOUT] 54s
                        2014-06-12 11:02:05 [Infos] [STDOUT] 11h
                        2014-06-12 11:02:05 [Infos] [STDOUT] 1m
                        2014-06-12 11:02:05 [Infos] [STDOUT] 54s
                        2014-06-12 11:02:05 [Infos] [STDOUT] 11h
                        2014-06-12 11:02:05 [Infos] [STDOUT] 1m
                        2014-06-12 11:02:05 [Infos] [STDOUT] 53s
                        2014-06-12 11:02:05 [Infos] [STDOUT] 11h
                        2014-06-12 11:02:05 [Infos] [STDOUT] 1m
                        2014-06-12 11:02:05 [Infos] [STDOUT] 53s
                        2014-06-12 11:02:05 [Infos] [STDOUT] 11h
                        2014-06-12 11:02:05 [Infos] [STDOUT] 1m
                        2014-06-12 11:02:05 [Infos] [STDOUT] 54s
                        2014-06-12 11:02:05 [Infos] [STDOUT] 11h
                        2014-06-12 11:02:05 [Infos] [STDOUT] 1m
                        2014-06-12 11:02:05 [Infos] [STDOUT] 53s
                        2014-06-12 11:02:05 [Infos] [STDOUT] 11h
                        2014-06-12 11:02:05 [Infos] [STDOUT] 1m
                        2014-06-12 11:02:05 [Infos] [STDOUT] 54s
                        2014-06-12 11:02:05 [Infos] [STDOUT] 11h
                        2014-06-12 11:02:05 [Infos] [STDOUT] 1m
                        2014-06-12 11:02:05 [Infos] [STDOUT] 53s
                        
                        

                        il semblerait, que la valeur est attribué une fois, puis n’est jamais modifié à partir du lancement du jeu.
                        Autre chose, quand j’avais pas mis les ’ = 0’ à ce code:

                        
                        public int H = 0;
                        public int M = 0;
                        public int S = 0;
                        
                        

                        mes print ne se faisait pas du tout, est ce normal?

                        quelqu’un a t’il une idée? moi concrétement je sèche.

                        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

                          Normal, puisque tu instancie l’objet Date dans le constructeur, donc il n’est jamais mit à jour.

                          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