MFF

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

    Problème arc rendu 3D et dégâts flèches

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

      Bonjour, je suis en train de développer un mod ou sont présents des arcs, j’ai suivi deux-trois tutoriels sur internet car je ne suis pas un dieu du Java et j’ai reussi, j’étais trop content toussa toussa sauf que j’ai découvert un autre problème, quand on se met en F5 on peut voir que le personnage tient son arc comme un item basique et non pas comme un arc… Alors je vous voit venir avec vos setFull3D mais j’ai déjà essayé et ça ne résout pas mon problème car le personnage tient ça comme une épée et non comme un arc (milieu de texture à peu près). Pour ceux qui ne comprennent rien voici des screens:

      Un rendu 3D d’arc dans Minecraft:

      Un rendu d’item basique dans Minecraft:

      Et enfin un rendu d’un item avec un .setFull3D (et donc ce n’est pas se que je recherche):

      Voici la classe de mon arc:

      
      import java.util.EnumSet;
      
      import cpw.mods.fml.relauncher.Side;
      import cpw.mods.fml.relauncher.SideOnly;
      import net.minecraft.client.renderer.texture.IIconRegister;
      import net.minecraft.creativetab.CreativeTabs;
      import net.minecraft.enchantment.Enchantment;
      import net.minecraft.enchantment.EnchantmentHelper;
      import net.minecraft.entity.player.EntityPlayer;
      import net.minecraft.entity.projectile.EntityArrow;
      import net.minecraft.init.Items;
      import net.minecraft.item.EnumAction;
      import net.minecraft.item.Item;
      import net.minecraft.item.ItemBow;
      import net.minecraft.item.ItemStack;
      import net.minecraft.util.IIcon;
      import net.minecraft.world.World;
      import net.minecraftforge.common.MinecraftForge;
      import net.minecraftforge.event.entity.player.ArrowLooseEvent;
      import net.minecraftforge.event.entity.player.ArrowNockEvent;
      
      public class ItemEmeraldBow extends ItemBow
      {
         public static final String[] bowPullIconNameArray = new String[] {"pulling_0", "pulling_1", "pulling_2"};
         @SideOnly(Side.CLIENT)
         private IIcon[] iconArray;
         private static final String __OBFID = "CL_00001777";
      
         public ItemEmeraldBow()
         {
             this.maxStackSize = 1;
             this.setMaxDamage(384);
             this.setCreativeTab(CreativeTabs.tabCombat);
             this.setFull3D();
         }
      
         /**
          * called when the player releases the use item button. Args: itemstack, world, entityplayer, itemInUseCount
          */
         public void onPlayerStoppedUsing(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer, int par4)
         {
             int j = this.getMaxItemUseDuration(par1ItemStack) - par4;
      
             ArrowLooseEvent event = new ArrowLooseEvent(par3EntityPlayer, par1ItemStack, j);
             MinecraftForge.EVENT_BUS.post(event);
             if (event.isCanceled())
             {
                 return;
             }
             j = event.charge;
      
             boolean flag = par3EntityPlayer.capabilities.isCreativeMode || EnchantmentHelper.getEnchantmentLevel(Enchantment.infinity.effectId, par1ItemStack) > 0;
      
             if (flag || par3EntityPlayer.inventory.hasItem(Items.arrow))
             {
                 float f = (float)j / 20.0F;
                 f = (f * f + f * 2.0F) / 3.0F;
      
                 if ((double)f < 0.1D)
                 {
                     return;
                 }
      
                 if (f > 1.0F)
                 {
                     f = 1.0F;
                 }
      
                 EntityArrowEmerald entityarrow = new EntityArrowEmerald(par2World, par3EntityPlayer, f * 3.0F);
      
                 if (f == 1.0F)
                 {
                     entityarrow.setIsCritical(true);
                 }
      
                 int k = EnchantmentHelper.getEnchantmentLevel(Enchantment.power.effectId, par1ItemStack);
      
                 if (k > 0)
                 {
                     entityarrow.setDamage(entityarrow.getDamage() + (double)k * 0.5D + 0.5D);
                 }
      
                 int l = EnchantmentHelper.getEnchantmentLevel(Enchantment.punch.effectId, par1ItemStack);
      
                 if (l > 0)
                 {
                     entityarrow.setKnockbackStrength(l);
                 }
      
                 if (EnchantmentHelper.getEnchantmentLevel(Enchantment.flame.effectId, par1ItemStack) > 0)
                 {
                     entityarrow.setFire(100);
                 }
      
                 par1ItemStack.damageItem(1, par3EntityPlayer);
                 par2World.playSoundAtEntity(par3EntityPlayer, "random.bow", 1.0F, 1.0F / (itemRand.nextFloat() * 0.4F + 1.2F) + f * 0.5F);
      
                 if (flag)
                 {
                     entityarrow.canBePickedUp = 2;
                 }
                 else
                 {
                     par3EntityPlayer.inventory.consumeInventoryItem(Items.arrow);
                 }
      
                 if (!par2World.isRemote)
                 {
                     par2World.spawnEntityInWorld(entityarrow);
                 }
             }
         }
      
         public ItemStack onEaten(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer)
         {
             return par1ItemStack;
         }
      
         /**
          * How long it takes to use or consume an item
          */
         public int getMaxItemUseDuration(ItemStack par1ItemStack)
         {
             return 72000;
         }
      
         /**
          * returns the action that specifies what animation to play when the items is being used
          */
      
         public EnumAction getItemUseAction(ItemStack par1ItemStack)
         {
             return EnumAction.bow;
         }
      
         /**
          * Called whenever this item is equipped and the right mouse button is pressed. Args: itemStack, world, entityPlayer
          */
         public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer)
         {
             ArrowNockEvent event = new ArrowNockEvent(par3EntityPlayer, par1ItemStack);
             MinecraftForge.EVENT_BUS.post(event);
             if (event.isCanceled())
             {
                 return event.result;
             }
      
             if (par3EntityPlayer.capabilities.isCreativeMode || par3EntityPlayer.inventory.hasItem(Items.arrow))
             {
                 par3EntityPlayer.setItemInUse(par1ItemStack, this.getMaxItemUseDuration(par1ItemStack));
             }
      
             return par1ItemStack;
         }
      
         /**
          * Return the enchantability factor of the item, most of the time is based on material.
          */
         public int getItemEnchantability()
         {
             return 1;
         }
      
         @SideOnly(Side.CLIENT)
         public void registerIcons(IIconRegister par1IconRegister)
         {
             this.itemIcon = par1IconRegister.registerIcon("mod:emerald_bow_standby");
             this.iconArray = new IIcon[bowPullIconNameArray.length];
      
             for (int i = 0; i < this.iconArray.length; ++i)
             {
                 this.iconArray* = par1IconRegister.registerIcon("mod:emerald_bow_" + bowPullIconNameArray*);
             }
         }
      
         @Override
         @SideOnly(Side.CLIENT)
         public IIcon getIcon (ItemStack stack, int renderPass, EntityPlayer player, ItemStack usingItem, int useRemaining){
          if (usingItem == null) { return itemIcon; }
          int ticksInUse = stack.getMaxItemUseDuration() - useRemaining;
          if (ticksInUse > 17){
          return iconArray[2];
          } else if (ticksInUse > 13){
          return iconArray[1];
          } else if (ticksInUse > 0) {
          return iconArray[0];
          } else{
          return itemIcon;
          }
         }
      
         /**
          * used to cycle through icons based on their used duration, i.e. for the bow
          */
         @SideOnly(Side.CLIENT)
         public IIcon getItemIconForUseDuration(int par1)
         {
             return this.iconArray[par1];
         }
      }
      
      

      Voilà pour le premier problème mais j’en ai un deuxième enfin ce n’est pas vraiment un problème mais je n’arrive juste pas à trouver comment modifier les dégats d’un arc. Je suis presque sûr qu’il faut recréer une classe EntityArrow pour son arc mais ou se trouvent les dégâts dans la classe ???

      Merci d’avance à ceux qui auront la gentilesse de m’aider 🙂

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

        Salut,
        Tout d’abord si tu pourrais utilisé la balise java se serrai mieux pour lire ton code.

        Alors pour ton premier problème c’est bizarre essaye de copier coller la classe ItemBow et supprime le String_OBFID.

        Pour ton second problème c’est dans la fonction onPlayerStoppedUsing plus précisément ici:

        if(!world.isRemote)
                   {
                    world.spawnEntityInWorld(entityarrow);
        // ici un entityarrow.setdamage
        }
        
        
        1 réponse Dernière réponse Répondre Citer 0
        • DeletedD Hors-ligne
          Deleted
          dernière édition par

          Pour ton premier problème, peut-être que cela vient de ta texture. Elle-elle dirigée de la même manière que l’est celle de l’arc par-défaut ??

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

            Merci pour ta rèponse mais j’ai déjà essayé de copier collé la classe ItemBow sans rien changer et toujours le même problème… Et pour les dégats je vais essayé 🙂

            Et plaigon, oui c’est la même texture sauf qu’elle est en faithfull et recolorée en vert ^^

            EDIT: les dégâts marchent mais le problème c’est que je pense que sa ne prend pas en compte le niveau de charge de l’arc même si on charge l’arc pendant 1s ça va faire les mêmes dégâts je me trompe ?

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

              Pour les dégâts c’est simple ils sont ici

               EntityArrow entityarrow = new EntityArrow(p_77615_2_, p_77615_3_, f * 3.0F); /*le 3.0F*/
              

              Mais tu va me dire où ???
              dans cette méthode 🙂

                public void onPlayerStoppedUsing(ItemStack p_77615_1_, World p_77615_2_, EntityPlayer p_77615_3_, int p_77615_4_)
                  {
                      int j = this.getMaxItemUseDuration(p_77615_1_) - p_77615_4_;
              
                      ArrowLooseEvent event = new ArrowLooseEvent(p_77615_3_, p_77615_1_, j);
                      MinecraftForge.EVENT_BUS.post(event);
                      if (event.isCanceled())
                      {
                          return;
                      }
                      j = event.charge;
              
                      boolean flag = p_77615_3_.capabilities.isCreativeMode || EnchantmentHelper.getEnchantmentLevel(Enchantment.infinity.effectId, p_77615_1_) > 0;
              
                      if (flag || p_77615_3_.inventory.hasItem(Items.arrow))
                      {
                          float f = (float)j / 20.0F;
                          f = (f * f + f * 2.0F) / 3.0F;
              
                          if ((double)f < 0.1D)
                          {
                              return;
                          }
              
                          if (f > 1.0F)
                          {
                              f = 1.0F;
                          }
              
                          EntityArrowDeath entityarrow = new EntityArrowDeath(p_77615_2_, p_77615_3_, f * 3.0F); /**/
              
                          if (f == 1.0F)
                          {
                              entityarrow.setIsCritical(true);
                          }
              
                          int k = EnchantmentHelper.getEnchantmentLevel(Enchantment.power.effectId, p_77615_1_);
              
                          if (k > 0)
                          {
                              entityarrow.setDamage(entityarrow.getDamage() + (double)k * 1.50D + 1.50D);
                          }
              
                          int l = EnchantmentHelper.getEnchantmentLevel(Enchantment.punch.effectId, p_77615_1_);
              
                          if (l > 0)
                          {
                              entityarrow.setKnockbackStrength(l);
                          }
              
                          if (EnchantmentHelper.getEnchantmentLevel(Enchantment.flame.effectId, p_77615_1_) > 0)
                          {
                              entityarrow.setFire(700);
                          }
              
                          p_77615_1_.damageItem(1, p_77615_3_);
                          p_77615_2_.playSoundAtEntity(p_77615_3_, "random.bow", 1.0F, 1.0F / (itemRand.nextFloat() * 0.4F + 1.2F) + f * 0.5F);
              
                          if (flag)
                          {
                              entityarrow.canBePickedUp = 2;
                          }
                          else
                          {
                              p_77615_3_.inventory.consumeInventoryItem(Items.arrow);
                          }
              
                          if (!p_77615_2_.isRemote)
                          {
                              p_77615_2_.spawnEntityInWorld(entityarrow);
                          }
                      }
                  }
              

              Ps Utilise les balises java 😉
              Edit ATTENTION dans la méthode que je t’ai donné c’est une autre entity bow (pour donné des effet de potion) Donc enlève Death et tu import 😉

              Encore Edit j’avais pas vu ta réponse donc sa prend en compte le chargement de l’arc

              Voila ma signature

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

                Ah ok merci donc ce n’était pas du tout dans la class de la flèche comme je le pensais ^^

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

                  Alors je viens de testé et sa me fait pareil pour l’arc mais il me semble qu’il à des sujets qui traite ceci je vais regardé et je te donnerais la réponse 😉

                  Voila ma signature

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

                    Ah je me disais aussi que ça ne venait pas que de moi ! Merci mais j’ai déjà fait plein de recherches sans aucunes réponses à mon problème donc si tu trouve GG 😛

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

                      @‘ErkoZ’:

                      Ah je me disais aussi que ça ne venait pas que de moi ! Merci mais j’ai déjà fait plein de recherches sans aucunes réponses à mon problème donc si tu trouve GG 😛

                      J’ai trouvé cela 😛
                      https://www.minecraftforgefrance.fr/showthread.php?tid=2593

                      Voila ma signature

                      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

                        https://www.minecraftforgefrance.fr/showthread.php?tid=2593&pid=30130#pid30130
                        pour être plus précis.

                        Le placement de l’arc est hardcodé dans le jeu, du-coup faut faire tout un bordel pour reproduire.

                        En 1.8 et + comme il y a les jsons il suffit de modifier une petite valeur dans le json (ou reprendre le même json que l’arc).

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

                          Merci pour toutes vos réponses mais est ce que vous savez ou est la classe du rendu de l’arc ? Si il y en a une ?

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

                            Il n’y a pas de classe spéciale, c’est dans la classe qui s’occupe de rendre ce qu’on a en main.

                            Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                            AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                            Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                            Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

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

                              Bon après quelques recherches et graçe à vous j’ai finalement résolu mon problème du coup je vais partager la solution à ceux qui auront ou ont le même problème que moi 😉

                              Il suffit de créer une classe ModBowRenderer et d’y mettre ça:

                              
                              package com.google.akinarutv.akimod.common.renderer;
                              
                              import org.lwjgl.opengl.GL11;
                              
                              import org.lwjgl.opengl.GL12;
                              
                              import net.minecraft.client.Minecraft;
                              
                              import net.minecraft.client.entity.EntityClientPlayerMP;
                              
                              import net.minecraft.client.renderer.ItemRenderer;
                              
                              import net.minecraft.client.renderer.Tessellator;
                              
                              import net.minecraft.client.renderer.texture.TextureManager;
                              
                              import net.minecraft.item.ItemStack;
                              
                              import net.minecraft.util.IIcon;
                              
                              import net.minecraft.util.ResourceLocation;
                              
                              import net.minecraftforge.client.IItemRenderer;
                              
                              public class BowRenderer implements IItemRenderer {
                              
                              private Minecraft mc;
                              
                              private TextureManager texturemanager;
                              
                              public BowRenderer() {
                              
                              this.mc = Minecraft.getMinecraft();
                              
                              this.texturemanager = this.mc.getTextureManager();
                              
                              }
                              
                              @Override
                              
                              //HandleRenderType lets forge know if it will render the item in the requested view.
                              
                              public boolean handleRenderType(ItemStack item, ItemRenderType type) {
                              
                              //You can remove everything after "EQUIPPED" if you only want this class to render the third person item.
                              
                              return type == ItemRenderType.EQUIPPED || type == ItemRenderType.EQUIPPED_FIRST_PERSON;
                              
                              }
                              
                              @Override
                              
                              //RenderHelpers I don't fully understand, I'd assume they are modifiers, but I've never looked into it.
                              
                              public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) {
                              
                              return false;
                              
                              }
                              
                              @Override
                              
                              //This function decides what to do in rendering an item, whether it's first or third person.
                              
                              //Credit to SanAndreasP on minecraftforge forums for this code.
                              
                              public void renderItem(ItemRenderType type, ItemStack item, Object… data) {
                              
                              EntityClientPlayerMP entity = (EntityClientPlayerMP)data[1];
                              
                              GL11.glPopMatrix(); // prevents Forge from pre-translating the item
                              
                              if(type == ItemRenderType.EQUIPPED_FIRST_PERSON) {
                              
                              this.renderItem(entity, item, 0);
                              
                              } else {
                              
                              GL11.glPushMatrix();
                              
                              // contra-translate the item from it's standard translation
                              
                              // also apply some more scale or else the bow is tiny
                              
                              float f2 = 3F - (1F/3F);
                              
                              GL11.glRotatef(-20.0F, 0.0F, 0.0F, 1.0F);
                              
                              GL11.glRotatef(90.0F, 1.0F, 0.0F, 0.0F);
                              
                              GL11.glRotatef(-60.0F, 0.0F, 0.0F, 1.0F);
                              
                              GL11.glScalef(f2, f2, f2);
                              
                              GL11.glTranslatef(-0.25F, -0.1875F, 0.1875F);
                              
                              // render the item as 'real' bow
                              
                              //This is pulled from RenderBiped
                              
                              float f3 = 0.625F;
                              
                              GL11.glTranslatef(0.0F, 0.125F, 0.3125F);
                              
                              GL11.glRotatef(-20.0F, 0.0F, 1.0F, 0.0F);
                              
                              GL11.glScalef(f3, -f3, f3);
                              
                              GL11.glRotatef(-100.0F, 1.0F, 0.0F, 0.0F);
                              
                              GL11.glRotatef(45.0F, 0.0F, 1.0F, 0.0F);
                              
                              this.renderItem(entity, item, 0);
                              
                              GL11.glPopMatrix();
                              
                              }
                              
                              GL11.glPushMatrix(); // prevents GL Underflow errors
                              
                              }
                              
                              //This actually renders an Icon to be worked with.
                              
                              //All of this code is directly pulled from ItemRenderer.class
                              
                              private void renderItem(EntityClientPlayerMP par1EntityLiving, ItemStack par2ItemStack, int par3) {
                              
                              {
                              
                              //If you for whatever reason aren't registering icons with iconRegister, I'm assuming you'll need to change the code below.
                              
                              IIcon iicon = par1EntityLiving.getItemIcon(par2ItemStack, par3);
                              
                              if (iicon == null)
                              
                              {
                              
                              GL11.glPopMatrix();
                              
                              return;
                              
                              }
                              
                              texturemanager.bindTexture(texturemanager.getResourceLocation(par2ItemStack.getItemSpriteNumber()));
                              
                              Tessellator tessellator = Tessellator.instance;
                              
                              float f = iicon.getMinU();
                              
                              float f1 = iicon.getMaxU();
                              
                              float f2 = iicon.getMinV();
                              
                              float f3 = iicon.getMaxV();
                              
                              float f4 = 0.0F;
                              
                              float f5 = 0.3F;
                              
                              GL11.glEnable(GL12.GL_RESCALE_NORMAL);
                              
                              GL11.glTranslatef(-f4, -f5, 0.0F);
                              
                              float f6 = 1.5F;
                              
                              GL11.glScalef(f6, f6, f6);
                              
                              GL11.glRotatef(50.0F, 0.0F, 1.0F, 0.0F);
                              
                              GL11.glRotatef(335.0F, 0.0F, 0.0F, 1.0F);
                              
                              GL11.glTranslatef(-0.9375F, -0.0625F, 0.0F);
                              
                              ItemRenderer.renderItemIn2D(tessellator, f1, f2, f, f3, iicon.getIconWidth(), iicon.getIconHeight(), 0.0625F);
                              
                              //This checks for enchantments.
                              
                              if (par2ItemStack.hasEffect(par3))
                              
                              {
                              
                              GL11.glDepthFunc(GL11.GL_EQUAL);
                              
                              GL11.glDisable(GL11.GL_LIGHTING);
                              
                              texturemanager.bindTexture(new ResourceLocation("textures/misc/enchanted_item_glint.png"));
                              
                              GL11.glEnable(GL11.GL_BLEND);
                              
                              GL11.glBlendFunc(GL11.GL_SRC_COLOR, GL11.GL_ONE);
                              
                              float f7 = 0.76F;
                              
                              GL11.glColor4f(0.5F * f7, 0.25F * f7, 0.8F * f7, 1.0F);
                              
                              GL11.glMatrixMode(GL11.GL_TEXTURE);
                              
                              GL11.glPushMatrix();
                              
                              float f8 = 0.125F;
                              
                              GL11.glScalef(f8, f8, f8);
                              
                              float f9 = (float)(Minecraft.getSystemTime() % 3000L) / 3000.0F * 8.0F;
                              
                              GL11.glTranslatef(f9, 0.0F, 0.0F);
                              
                              GL11.glRotatef(-50.0F, 0.0F, 0.0F, 1.0F);
                              
                              ItemRenderer.renderItemIn2D(tessellator, 0.0F, 0.0F, 1.0F, 1.0F, 256, 256, 0.0625F);
                              
                              GL11.glPopMatrix();
                              
                              GL11.glPushMatrix();
                              
                              GL11.glScalef(f8, f8, f8);
                              
                              f9 = (float)(Minecraft.getSystemTime() % 4873L) / 4873.0F * 8.0F;
                              
                              GL11.glTranslatef(-f9, 0.0F, 0.0F);
                              
                              GL11.glRotatef(10.0F, 0.0F, 0.0F, 1.0F);
                              
                              ItemRenderer.renderItemIn2D(tessellator, 0.0F, 0.0F, 1.0F, 1.0F, 256, 256, 0.0625F);
                              
                              GL11.glPopMatrix();
                              
                              GL11.glMatrixMode(GL11.GL_MODELVIEW);
                              
                              GL11.glDisable(GL11.GL_BLEND);
                              
                              GL11.glEnable(GL11.GL_LIGHTING);
                              
                              GL11.glDepthFunc(GL11.GL_LEQUAL);
                              
                              }
                              
                              GL11.glDisable(GL12.GL_RESCALE_NORMAL);
                              
                              }
                              
                              }
                              
                              }
                              

                              J’ai trouvé cette classe ici: https://www.minecraftforgefrance.fr/archive/index.php?thread-726-2.html#

                              Ensuite vous enregistrez votre item avec le rendu dans votre ClientProxy voila 🙂

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

                                Résolu ?

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

                                  Oui, résolu.

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

                                    Alors rajoute la balise en éditant ton premier message

                                    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
                                    • 1 / 1
                                    • Premier message
                                      Dernier message
                                    Design by Woryk
                                    ContactMentions Légales

                                    MINECRAFT FORGE FRANCE © 2024

                                    Powered by NodeBB