• S'inscrire
    • Se connecter
    • Recherche
    • Récent
    • Mots-clés
    • Populaire
    • Utilisateurs
    • Groupes

    Résolu Comment animer un bloc rendu TESR constamment ?

    1.7.x
    1.7.10
    5
    14
    4365
    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.
    • NicoKing60
      NicoKing60 dernière édition par

      Bonjour/Bonsoir j’ai un nouveau problème, et ce problème est que je ne trouve pas de tuto pour animer un bloc avec rendu TESR.

      Héhé je vous vois venir en disant : “Ouvre tes yeux : http://www.minecraftforgefrance.fr/showthread.php?tid=375”

      Mais ce n’est pas ce que je veux.

      Voici le bloc que je veux animer :

      Je veux que le noyau jaune au centre tourne sur lui-même, le problème du tuto d’animation sur le site c’est que cela nous permet de faire une animation que quand le joueur ouvre et ferme le placard, mais je veux que le noyau tourne tout le temps sans interruption et sans l’aide d’un joueur.

      J’ai cherché partout un tuto sur ça mais non seulement c’est très rare mais en plus quand j’en trouve un c’est pour animer un coffre donc cela reviens au tuto de robin, je sais que les demandes de tuto pour animer un coffre sont surement plus grandes que pour celle de faire tourner un noyau mais au moins c’est la base de l’animation.

      Bon, j’ai quand même essayer de trouver mon bonheur dans le tuto de robin mais quand j’ai tester le noyau ne tournait pas…

      Donc si jamais vous avez la solution pour animer mon p’tit noyau ou le bon tutoriel je serai ravi que vous m’en fassiez part, je suis sure que c’est beaucoup plus simple que ce que je pense mais ça va faire 2 heure que je cherche 🙂

      Merci d’avance.

      PS : Si quelqu’un a le courage de rédiger un tuto en 1.7 sur le rendu via TESR et (surtout) sur les bases de l’animation** **des rendus TESR (genre “je vais vous apprendre à faire tourner un noyau dans un bloc avec rendu TESR” 😄 ) ça ne serait pas de refus comme ça les prochains qui galéreront comme moi à animer leurs blocs trouveront la solution en un clic et n’embêteront personne.

      1 réponse Dernière réponse Répondre Citer 0
      • mindany2
        mindany2 dernière édition par

        “OUVRE TES YEUX !”
        😛 
        Nan plus sérieusement : essaye de voir si tu peux pas utiliser l’updateTick du bloc pour le render ou quelque chose comme ça

        ^^

        1 réponse Dernière réponse Répondre Citer 0
        • robin4002
          robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

          @‘NicoKing60’:

          Je veux que le noyau jaune au centre tourne sur lui-même, le problème du tuto d’animation sur le site c’est que cela nous permet de faire une animation que quand le joueur ouvre et ferme le placard, mais je veux que le noyau tourne tout le temps sans interruption et sans l’aide d’un joueur.

          Sérieusement c’est exactement la même chose –’
          Sauf que au lieu de faire tourner ton morceau en fonction de la variable du coffre, tu le fais tourner en fonction d’une autre variable qui augmente en continu.

          Et puis je sais que ce tutoriel n’a jamais été terminé (j’ai jamais rédigé la deuxième partie) mais si tu aurai regardé l’introduction, tu aurai vu que dans la deuxième partie je fais tourner quelque chose en continu, et comme je n’aime pas laisser les choses vide, j’ai mit le commit github : https://github.com/FFMT/ModTutoriel/commit/38671521bc9b537e484cc299400cac8414fc4947

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

            Ce qui est génial avec mon mod, c’est qu’il répond souvent au problèmes des gens.
            https://github.com/Gugu42/RatchetAndClankMod/blob/master/java/com/gugu42/rcmod/render/TileEntityVersaTargetGSpecialRenderer.java

            "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
            • NicoKing60
              NicoKing60 dernière édition par

              J’y comprend rien quoi que je fasse le noyau tourne pas, même en essayant toute les solutions que vous me proposez, j’ai dû louper quelque chose où quoi ?

              1 réponse Dernière réponse Répondre Citer 0
              • pulgan
                pulgan dernière édition par

                Montre tes codes sa peut aide

                1 réponse Dernière réponse Répondre Citer 0
                • NicoKing60
                  NicoKing60 dernière édition par

                  Ah oui les codes…

                  Sachant que j’ai enlevé tout les codes qui aurait du permettre de faire l’animation, parce que après j’ai décider de faire autre chose en attendent de trouver une solution, et aussi une autre chose moins importante quand je tiens le bloc dans la main il n’apparaît pas mais ce n’est pas grave puisque le joueur ne pourra jamais avoir le bloc dans son inventaire

                  La class TileEntitySpecialRender

                  
                  package com.nicoking60.cwm.client;
                  
                  import net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher;
                  import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
                  import net.minecraft.tileentity.TileEntity;
                  import net.minecraft.util.ResourceLocation;
                  
                  import org.lwjgl.opengl.GL11;
                  
                  import com.nicoking60.cwm.common.ModelLegendaryStoneOfGround;
                  import com.nicoking60.cwm.common.TElegendaryStoneG;
                  
                  public class TElegendaryStoneGSpecialRender extends TileEntitySpecialRenderer implements IInventoryRenderer {
                  
                  private final ModelLegendaryStoneOfGround model = new ModelLegendaryStoneOfGround();
                  public static final ResourceLocation textureLocation = new ResourceLocation("cwm", "textures/blocks/legendary_stone_ground.png");
                  public TElegendaryStoneGSpecialRender()
                  {
                  this.func_147497_a(TileEntityRendererDispatcher.instance);
                  }
                  
                  @Override
                  public void renderTileEntityAt(TileEntity te, double x,
                  double y, double z, float tick) {
                  this.renderTElegendaryStoneGAt((TElegendaryStoneG)te, x, y, z, tick);
                  }
                  
                  @Override
                  public void renderInventory(double x, double y, double z) {
                  this.renderTElegendaryStoneGAt((TElegendaryStoneG)tileentity, x, y, z, tick);
                  }
                  
                  public void renderTElegendaryStoneGAt(TElegendaryStoneG te, double x, double y, double z, float tick)
                  {
                  GL11.glPushMatrix();
                  GL11.glTranslated(x + 0.5F, y + 1.5F, z + 0.5F);
                  this.bindTexture(textureLocation);
                  GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
                  this.model.render(0.0625F);
                  GL11.glPopMatrix();
                  
                  }
                  }
                  

                  La class du model

                  
                  package com.nicoking60.cwm.common;
                  
                  import net.minecraft.client.model.ModelBase;
                  import net.minecraft.client.model.ModelRenderer;
                  
                  public class ModelLegendaryStoneOfGround extends ModelBase
                  {
                    //fields
                      ModelRenderer Shaped1;
                      ModelRenderer Shaped2;
                      ModelRenderer Shaped3;
                      ModelRenderer Shaped4;
                      ModelRenderer Shaped5;
                      ModelRenderer Shaped6;
                      ModelRenderer Shaped7;
                      ModelRenderer Shaped8;
                      ModelRenderer Shaped9;
                      ModelRenderer Shaped10;
                      ModelRenderer Shaped11;
                      ModelRenderer Shaped12;
                      ModelRenderer Shape1;
                      ModelRenderer Shape2;
                      ModelRenderer Shape3;
                      ModelRenderer Shape4;
                      ModelRenderer Shape5;
                      ModelRenderer Shape6;
                      ModelRenderer Shape7;
                      ModelRenderer Shape8;
                      ModelRenderer Shape9;
                      ModelRenderer Shape10;
                      ModelRenderer Shape11;
                      ModelRenderer Shape12;
                      ModelRenderer Shape13;
                      ModelRenderer Shape14;
                      ModelRenderer Shape15;
                      ModelRenderer Shape16;
                      ModelRenderer Shape17;
                      ModelRenderer Shape18;
                      ModelRenderer Shape19;
                      ModelRenderer Shape20;
                      ModelRenderer Shape21;
                      ModelRenderer Shape22;
                      ModelRenderer Shape23;
                      ModelRenderer Shape24;
                      ModelRenderer Noyau1;
                      ModelRenderer Noyau2;
                  
                    public ModelLegendaryStoneOfGround()
                    {
                      textureWidth = 64;
                      textureHeight = 32;
                  
                        Shaped1 = new ModelRenderer(this, 30, 0);
                        Shaped1.addBox(0F, 0F, 0F, 1, 16, 1);
                        Shaped1.setRotationPoint(-8F, 8F, -8F);
                        Shaped1.setTextureSize(64, 32);
                        Shaped1.mirror = true;
                        setRotation(Shaped1, 0F, 0F, 0F);
                        Shaped2 = new ModelRenderer(this, 30, 0);
                        Shaped2.addBox(0F, 0F, 0F, 1, 16, 1);
                        Shaped2.setRotationPoint(7F, 8F, 7F);
                        Shaped2.setTextureSize(64, 32);
                        Shaped2.mirror = true;
                        setRotation(Shaped2, 0F, 0F, 0F);
                        Shaped3 = new ModelRenderer(this, 30, 0);
                        Shaped3.addBox(0F, 0F, 0F, 1, 16, 1);
                        Shaped3.setRotationPoint(-8F, 8F, 7F);
                        Shaped3.setTextureSize(64, 32);
                        Shaped3.mirror = true;
                        setRotation(Shaped3, 0F, 0F, 0F);
                        Shaped4 = new ModelRenderer(this, 30, 0);
                        Shaped4.addBox(0F, 0F, 0F, 1, 16, 1);
                        Shaped4.setRotationPoint(7F, 8F, -8F);
                        Shaped4.setTextureSize(64, 32);
                        Shaped4.mirror = true;
                        setRotation(Shaped4, 0F, 0F, 0F);
                        Shaped5 = new ModelRenderer(this, 34, 0);
                        Shaped5.addBox(0F, 0F, 0F, 1, 1, 14);
                        Shaped5.setRotationPoint(7F, 23F, -7F);
                        Shaped5.setTextureSize(64, 32);
                        Shaped5.mirror = true;
                        setRotation(Shaped5, 0F, 0F, 0F);
                        Shaped6 = new ModelRenderer(this, 34, 0);
                        Shaped6.addBox(0F, 0F, 0F, 1, 1, 14);
                        Shaped6.setRotationPoint(-8F, 23F, -7F);
                        Shaped6.setTextureSize(64, 32);
                        Shaped6.mirror = true;
                        setRotation(Shaped6, 0F, 0F, 0F);
                        Shaped7 = new ModelRenderer(this, 0, 0);
                        Shaped7.addBox(0F, 0F, 0F, 14, 1, 1);
                        Shaped7.setRotationPoint(-7F, 23F, 7F);
                        Shaped7.setTextureSize(64, 32);
                        Shaped7.mirror = true;
                        setRotation(Shaped7, 0F, 0F, 0F);
                        Shaped8 = new ModelRenderer(this, 0, 0);
                        Shaped8.addBox(0F, 0F, 0F, 14, 1, 1);
                        Shaped8.setRotationPoint(-7F, 23F, -8F);
                        Shaped8.setTextureSize(64, 32);
                        Shaped8.mirror = true;
                        setRotation(Shaped8, 0F, 0F, 0F);
                        Shaped9 = new ModelRenderer(this, 0, 0);
                        Shaped9.addBox(0F, 0F, 0F, 14, 1, 1);
                        Shaped9.setRotationPoint(-7F, 8F, 7F);
                        Shaped9.setTextureSize(64, 32);
                        Shaped9.mirror = true;
                        setRotation(Shaped9, 0F, 0F, 0F);
                        Shaped10 = new ModelRenderer(this, 0, 0);
                        Shaped10.addBox(0F, 0F, 0F, 14, 1, 1);
                        Shaped10.setRotationPoint(-7F, 8F, -8F);
                        Shaped10.setTextureSize(64, 32);
                        Shaped10.mirror = true;
                        setRotation(Shaped10, 0F, 0F, 0F);
                        Shaped11 = new ModelRenderer(this, 34, 0);
                        Shaped11.addBox(0F, 0F, 0F, 1, 1, 14);
                        Shaped11.setRotationPoint(7F, 8F, -7F);
                        Shaped11.setTextureSize(64, 32);
                        Shaped11.mirror = true;
                        setRotation(Shaped11, 0F, 0F, 0F);
                        Shaped12 = new ModelRenderer(this, 34, 0);
                        Shaped12.addBox(0F, 0F, 0F, 1, 1, 14);
                        Shaped12.setRotationPoint(-8F, 8F, -7F);
                        Shaped12.setTextureSize(64, 32);
                        Shaped12.mirror = true;
                        setRotation(Shaped12, 0F, 0F, 0F);
                        Shape1 = new ModelRenderer(this, 0, 2);
                        Shape1.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape1.setRotationPoint(-8F, 9F, -7F);
                        Shape1.setTextureSize(64, 32);
                        Shape1.mirror = true;
                        setRotation(Shape1, 0F, 0F, 0F);
                        Shape2 = new ModelRenderer(this, 0, 2);
                        Shape2.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape2.setRotationPoint(-8F, 9F, 6F);
                        Shape2.setTextureSize(64, 32);
                        Shape2.mirror = true;
                        setRotation(Shape2, 0F, 0F, 0F);
                        Shape3 = new ModelRenderer(this, 0, 2);
                        Shape3.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape3.setRotationPoint(-8F, 22F, -7F);
                        Shape3.setTextureSize(64, 32);
                        Shape3.mirror = true;
                        setRotation(Shape3, 0F, 0F, 0F);
                        Shape4 = new ModelRenderer(this, 0, 2);
                        Shape4.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape4.setRotationPoint(-8F, 22F, 6F);
                        Shape4.setTextureSize(64, 32);
                        Shape4.mirror = true;
                        setRotation(Shape4, 0F, 0F, 0F);
                        Shape5 = new ModelRenderer(this, 0, 2);
                        Shape5.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape5.setRotationPoint(6F, 9F, -8F);
                        Shape5.setTextureSize(64, 32);
                        Shape5.mirror = true;
                        setRotation(Shape5, 0F, 0F, 0F);
                        Shape6 = new ModelRenderer(this, 0, 2);
                        Shape6.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape6.setRotationPoint(-7F, 9F, -8F);
                        Shape6.setTextureSize(64, 32);
                        Shape6.mirror = true;
                        setRotation(Shape6, 0F, 0F, 0F);
                        Shape7 = new ModelRenderer(this, 0, 2);
                        Shape7.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape7.setRotationPoint(6F, 22F, -8F);
                        Shape7.setTextureSize(64, 32);
                        Shape7.mirror = true;
                        setRotation(Shape7, 0F, 0F, 0F);
                        Shape8 = new ModelRenderer(this, 0, 2);
                        Shape8.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape8.setRotationPoint(-7F, 22F, -8F);
                        Shape8.setTextureSize(64, 32);
                        Shape8.mirror = true;
                        setRotation(Shape8, 0F, 0F, 0F);
                        Shape9 = new ModelRenderer(this, 0, 2);
                        Shape9.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape9.setRotationPoint(7F, 22F, 6F);
                        Shape9.setTextureSize(64, 32);
                        Shape9.mirror = true;
                        setRotation(Shape9, 0F, 0F, 0F);
                        Shape10 = new ModelRenderer(this, 0, 2);
                        Shape10.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape10.setRotationPoint(7F, 22F, -7F);
                        Shape10.setTextureSize(64, 32);
                        Shape10.mirror = true;
                        setRotation(Shape10, 0F, 0F, 0F);
                        Shape11 = new ModelRenderer(this, 0, 2);
                        Shape11.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape11.setRotationPoint(7F, 9F, -7F);
                        Shape11.setTextureSize(64, 32);
                        Shape11.mirror = true;
                        setRotation(Shape11, 0F, 0F, 0F);
                        Shape12 = new ModelRenderer(this, 0, 2);
                        Shape12.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape12.setRotationPoint(7F, 9F, 6F);
                        Shape12.setTextureSize(64, 32);
                        Shape12.mirror = true;
                        setRotation(Shape12, 0F, 0F, 0F);
                        Shape13 = new ModelRenderer(this, 0, 2);
                        Shape13.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape13.setRotationPoint(6F, 9F, 7F);
                        Shape13.setTextureSize(64, 32);
                        Shape13.mirror = true;
                        setRotation(Shape13, 0F, 0F, 0F);
                        Shape14 = new ModelRenderer(this, 0, 2);
                        Shape14.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape14.setRotationPoint(-7F, 9F, 7F);
                        Shape14.setTextureSize(64, 32);
                        Shape14.mirror = true;
                        setRotation(Shape14, 0F, 0F, 0F);
                        Shape15 = new ModelRenderer(this, 0, 2);
                        Shape15.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape15.setRotationPoint(6F, 22F, 7F);
                        Shape15.setTextureSize(64, 32);
                        Shape15.mirror = true;
                        setRotation(Shape15, 0F, 0F, 0F);
                        Shape16 = new ModelRenderer(this, 0, 2);
                        Shape16.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape16.setRotationPoint(-7F, 22F, 7F);
                        Shape16.setTextureSize(64, 32);
                        Shape16.mirror = true;
                        setRotation(Shape16, 0F, 0F, 0F);
                        Shape17 = new ModelRenderer(this, 0, 2);
                        Shape17.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape17.setRotationPoint(-7F, 8F, 6F);
                        Shape17.setTextureSize(64, 32);
                        Shape17.mirror = true;
                        setRotation(Shape17, 0F, 0F, 0F);
                        Shape18 = new ModelRenderer(this, 0, 2);
                        Shape18.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape18.setRotationPoint(6F, 8F, -7F);
                        Shape18.setTextureSize(64, 32);
                        Shape18.mirror = true;
                        setRotation(Shape18, 0F, 0F, 0F);
                        Shape19 = new ModelRenderer(this, 0, 2);
                        Shape19.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape19.setRotationPoint(6F, 8F, 6F);
                        Shape19.setTextureSize(64, 32);
                        Shape19.mirror = true;
                        setRotation(Shape19, 0F, 0F, 0F);
                        Shape20 = new ModelRenderer(this, 0, 2);
                        Shape20.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape20.setRotationPoint(-7F, 23F, 6F);
                        Shape20.setTextureSize(64, 32);
                        Shape20.mirror = true;
                        setRotation(Shape20, 0F, 0F, 0F);
                        Shape21 = new ModelRenderer(this, 0, 2);
                        Shape21.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape21.setRotationPoint(-7F, 8F, -7F);
                        Shape21.setTextureSize(64, 32);
                        Shape21.mirror = true;
                        setRotation(Shape21, 0F, 0F, 0F);
                        Shape22 = new ModelRenderer(this, 0, 2);
                        Shape22.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape22.setRotationPoint(-7F, 23F, -7F);
                        Shape22.setTextureSize(64, 32);
                        Shape22.mirror = true;
                        setRotation(Shape22, 0F, 0F, 0F);
                        Shape23 = new ModelRenderer(this, 0, 2);
                        Shape23.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape23.setRotationPoint(6F, 23F, -7F);
                        Shape23.setTextureSize(64, 32);
                        Shape23.mirror = true;
                        setRotation(Shape23, 0F, 0F, 0F);
                        Shape24 = new ModelRenderer(this, 0, 2);
                        Shape24.addBox(0F, 0F, 0F, 1, 1, 1);
                        Shape24.setRotationPoint(6F, 23F, 6F);
                        Shape24.setTextureSize(64, 32);
                        Shape24.mirror = true;
                        setRotation(Shape24, 0F, 0F, 0F);
                        Noyau1 = new ModelRenderer(this, 14, 2);
                        Noyau1.addBox(0F, 0F, 0F, 4, 4, 4);
                        Noyau1.setRotationPoint(-2F, 14F, -2F);
                        Noyau1.setTextureSize(64, 32);
                        Noyau1.mirror = true;
                        setRotation(Noyau1, 0F, 0F, 0F);
                        Noyau2 = new ModelRenderer(this, 14, 2);
                        Noyau2.addBox(0F, 0F, 0F, 4, 4, 4);
                        Noyau2.setRotationPoint(0F, 13.2F, -2F);
                        Noyau2.setTextureSize(64, 32);
                        Noyau2.mirror = true;
                        setRotation(Noyau2, 0F, 0F, 0.7853982F);
                    }
                  
                    public void render(float f)
                    {
                      Shaped1.render(f);
                      Shaped2.render(f);
                      Shaped3.render(f);
                      Shaped4.render(f);
                      Shaped5.render(f);
                      Shaped6.render(f);
                      Shaped7.render(f);
                      Shaped8.render(f);
                      Shaped9.render(f);
                      Shaped10.render(f);
                      Shaped11.render(f);
                      Shaped12.render(f);
                      Shape1.render(f);
                      Shape2.render(f);
                      Shape3.render(f);
                      Shape4.render(f);
                      Shape5.render(f);
                      Shape6.render(f);
                      Shape7.render(f);
                      Shape8.render(f);
                      Shape9.render(f);
                      Shape10.render(f);
                      Shape11.render(f);
                      Shape12.render(f);
                      Shape13.render(f);
                      Shape14.render(f);
                      Shape15.render(f);
                      Shape16.render(f);
                      Shape17.render(f);
                      Shape18.render(f);
                      Shape19.render(f);
                      Shape20.render(f);
                      Shape21.render(f);
                      Shape22.render(f);
                      Shape23.render(f);
                      Shape24.render(f);
                      Noyau1.render(f);
                      Noyau2.render(f);
                    }
                  
                    private void setRotation(ModelRenderer model, float x, float y, float z)
                    {
                      model.rotateAngleX = x;
                      model.rotateAngleY = y;
                      model.rotateAngleZ = z;
                    }
                  }
                  

                  La class du bloc

                  
                  package com.nicoking60.cwm.common;
                  
                  import com.nicoking60.cwm.proxy.ClientProxy;
                  
                  import cpw.mods.fml.relauncher.Side;
                  import cpw.mods.fml.relauncher.SideOnly;
                  import net.minecraft.block.Block;
                  import net.minecraft.block.material.Material;
                  import net.minecraft.tileentity.TileEntity;
                  import net.minecraft.world.World;
                  
                  public class LegendaryStoneG extends Block {
                  
                  protected LegendaryStoneG(Material material) {
                  super(material);
                  }
                  
                  @Override
                      public TileEntity createTileEntity(World world, int metadata)
                      {
                          return new TElegendaryStoneG();
                      }
                  
                  public boolean hasTileEntity(int metadata)
                  {
                  return true;
                  }
                  public boolean renderAsNormalBlock()
                  {
                  return false;
                  }
                  
                  public boolean isOpaqueCube()
                  {
                  return false;
                  }
                  
                  @SideOnly(Side.CLIENT)
                  public int getRenderType()
                  {
                  return ClientProxy.renderInventoryTESRId;
                  }
                  
                  }
                  

                  La classe du TileEntity est vide.

                  En attendant votre réponse je vais encore tenter autre chose.

                  1 réponse Dernière réponse Répondre Citer 0
                  • robin4002
                    robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

                    Dans ta classe TElegendaryStoneGSpecialRender, avant :

                    this.model.render(0.0625F);
                    

                    ajoute :

                    if(te != null)
                    {
                        float angle = te.prevAngle + (te.angle - te.prevAngle);
                        this.model.Noyau1.rotateAngleY = (angle * (float)Math.PI * 2.0F);
                        this.model.Noyau2.rotateAngleY = (angle * (float)Math.PI * 2.0F);
                    }
                    

                    Et dans TElegendaryStoneG, ajoute ça :

                    ​ public float angle, prevAngle;
                    
                    public void updateEntity()
                    {
                    this.prevAngle = this.angle;
                    this.angle += 0.1F;
                    if(angle >= 0)
                    {
                    if(angle > (prevAngle + (angle - prevAngle)) * (float)Math.PI * 2.0F)
                    {
                    angle = 0.0F;
                    }
                    }
                    else
                    {
                    if(angle > (prevAngle + (angle - prevAngle)) * (float)Math.PI * 2.0F)
                    {
                    angle = 1.0F;
                    }
                    }
                    }
                    

                    Pour la vitesse, il y a cette ligne :
                    this.angle += 0.1F;
                    Si tu mets plus petit, ça sera plus lent, si tu mets plus grand, ça sera plus rapide.

                    1 réponse Dernière réponse Répondre Citer 0
                    • NicoKing60
                      NicoKing60 dernière édition par

                      Merci robin mais il y a une erreur… Enfin 2 erreurs là :

                      
                       this.model.Noyau1.rotateAngleY = (angle * (float)Math.PI * 2.0F);
                       this.model.Noyau2.rotateAngleY = (angle * (float)Math.PI * 2.0F);
                      
                      

                      Sut Noyau1 et Noyau2 il me dis “The field ModelLegendaryStoneOfGround.Noyau1/Noyau2 is not visible” et me propose :

                      • Change visibility of ‘Noyau1/Noyau2’ to ‘public’
                      • Create getter and setter for ‘Noyau1/Noyau2’

                      Sinon en fin de comptes la 1ère chose que j’ai essayer en voyant le code de ta machine était bonne mais il manquait l’updateEntity que j’avais essayer lors de ma 2ème tentative mais différemment et qui à fait crash mon jeu, mais en tout cas j’ai enfin compris comment ça marche je vais pouvoir me débrouiller tout seul maintenant.

                      1 réponse Dernière réponse Répondre Citer 0
                      • mindany2
                        mindany2 dernière édition par

                        Ouh là c’est les bases là ^^’
                        Tu le mets en public tout simplement >.<
                        updateEntity marche mais ce que tu mets dedans peut faire crash ._.

                        ^^

                        1 réponse Dernière réponse Répondre Citer 0
                        • robin4002
                          robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

                          En effet, suffit de les mettre sur public.

                          1 réponse Dernière réponse Répondre Citer 0
                          • NicoKing60
                            NicoKing60 dernière édition par

                            Ah… ok… Pourtant quand j’ai vu le code de ta machine il ne sont pas en public donc je me suis dis que ce n’était pas normal… Enfin bon c’est bon ça tourne même si le Noyau1 ne tourne pas comme il faut en faite comme il est incliner son axe Y l’est aussi est du coup il tourne dans le mauvais sens, mais ça je pense pouvoir y arriver tout seul même si ça met beaucoup de temps.

                            Merci et désoler de vous avoir déranger pour si peu de chose.

                            1 réponse Dernière réponse Répondre Citer 0
                            • robin4002
                              robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par

                              C’est parce que ton modèle et ton rendu ne sont pas dans le même package que tu as du le mettre en public.

                              1 réponse Dernière réponse Répondre Citer 0
                              • NicoKing60
                                NicoKing60 dernière édition par

                                Ok merci pour l’info robin et j’ai déjà résolu mon problème comme quoi dès que je comprend comment ça marche je suis capable de résoudre les problèmes tout seul ^^

                                Voilà le nouveau code :

                                
                                GL11.glPushMatrix();
                                
                                GL11.glTranslated(x + 0.5F, y + 1.5F, z + 0.5F);
                                this.bindTexture(textureLocation);
                                GL11.glRotatef(180F, 0.0F, 0.0F, 1.0F);
                                this.model.render(0.0625F);
                                if(te != null)
                                {
                                float angle = te.prevAngle + (te.angle - te.prevAngle);
                                
                                this.model.Noyau1.rotateAngleY = (angle * (float)Math.PI * 2.0F);
                                this.model.Noyau1.rotateAngleX = (0.8F);
                                this.model.Noyau1.rotateAngleZ = (0.0F);
                                this.model.Noyau2.rotateAngleY = (angle * (float)Math.PI * 2.0F);
                                }
                                GL11.glPopMatrix();
                                
                                1 réponse Dernière réponse Répondre Citer 0
                                • 1 / 1
                                • Premier message
                                  Dernier message
                                Design by Woryk
                                Contact / Mentions Légales

                                MINECRAFT FORGE FRANCE © 2018

                                Powered by NodeBB