MFF

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

    Texture thirst mod

    Planifier Épinglé Verrouillé Déplacé Sans suite
    20 Messages 5 Publieurs 3.3k 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.
    • I Hors-ligne
      impuuu
      dernière édition par

      Bonjour je vien de import les code source de thirst mod dans mon mod forge je voudrait cree un bouteille d eau avec mes texture pas ce de thirst mod car ses les bouteille normal alor j ai cree un item drink mais je sais pas comment faire pour mettre un textrue

      code de la classe ItemDrink

      package com.thetorine.thirstmod.core.content;
      
      import java.util.List;
      import java.util.Random;
      
      import com.thetorine.thirstmod.core.client.player.ClientStats;
      import com.thetorine.thirstmod.core.main.ThirstMod;
      import com.thetorine.thirstmod.core.player.PlayerContainer;
      
      import cpw.mods.fml.relauncher.Side;
      import cpw.mods.fml.relauncher.SideOnly;
      import net.minecraft.client.renderer.texture.IIconRegister;
      import net.minecraft.entity.player.EntityPlayer;
      import net.minecraft.init.Items;
      import net.minecraft.item.EnumAction;
      import net.minecraft.item.Item;
      import net.minecraft.item.ItemStack;
      import net.minecraft.potion.PotionEffect;
      import net.minecraft.util.IIcon;
      import net.minecraft.world.World;
      
      public class ItemDrink extends Item {
      public int itemColour;
      public int itemStackSize;
      public boolean specialEffect;
      public boolean alwaysDrinkable;
      public Item returnItem = Items.glass_bottle;
      public ItemStack recipeItem;
      
      private IIcon drinkable;
      private IIcon overlay;
      
      public int thirstHeal;
      public float saturationHeal;
      public float poisonChance;
      public boolean curesPotion;
      
      public int hungerHeal;
      public float hungerSatHeal;
      
      public int potionID;
      public int duration;
      
      public ItemDrink(int thirst, float saturation, int colour, int stacksize, boolean effect, boolean drinkable, String name) {
      this.thirstHeal = thirst;
      this.saturationHeal = saturation;
      this.itemColour = colour;
      this.specialEffect = effect; 
      this.alwaysDrinkable = drinkable;
      
      this.setUnlocalizedName(name);
      this.setCreativeTab(ThirstMod.thirstCreativeTab);
      this.setMaxStackSize(stacksize);
      }
      
      @Override
      public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) {
      if(canDrink(player) || alwaysDrinkable || player.capabilities.isCreativeMode) {
      player.setItemInUse(stack, getMaxItemUseDuration(stack));
      }
      return stack;
      }
      
      @Override
      public ItemStack onEaten(ItemStack stack, World world, EntityPlayer player) {
      if(!world.isRemote) {
      stack.stackSize–;
      
      PlayerContainer playerContainer = PlayerContainer.getPlayer(player);
      playerContainer.addStats(thirstHeal, saturationHeal);
      if (poisonChance > 0 && ThirstMod.config.POISON_ON) {
      Random rand = new Random();
      if (rand.nextFloat() < poisonChance) {
      playerContainer.getStats().poisonLogic.poisonPlayer();
      }
      }
      if (curesPotion) {
      player.curePotionEffects(new ItemStack(Items.milk_bucket));
      }
      if (hungerHeal > 0 && hungerSatHeal > 0) {
      player.getFoodStats().addStats(hungerHeal, hungerSatHeal);
      }
      if (potionID > 0) {
      player.addPotionEffect(new PotionEffect(potionID, duration * 20, 1));
      }
      player.inventory.addItemStackToInventory(new ItemStack(returnItem));
      }
      return stack;
      }
      
      @SuppressWarnings({ "unchecked", "rawtypes" })
      @Override
      public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean advancedItemTooltip) {
      super.addInformation(stack, player, list, advancedItemTooltip);
      float f = Float.parseFloat(Integer.toString(thirstHeal)) / 2;
      String s2 = Float.toString(f);
      list.add("Heals " + (s2.endsWith(".0") ? s2.replace(".0", "") : s2) + " Droplets");
      if(recipeItem != null) {
      list.add("Ingredient: " + recipeItem.getDisplayName());
      }
      }
      
      @Override
      public boolean hasEffect(ItemStack par1ItemStack, int pass) {
      if(pass == 0) return specialEffect;
      return false;
      }
      
      @Override
      public EnumAction getItemUseAction(ItemStack itemstack) {
      return EnumAction.drink;
      }
      
      @Override
      public IIcon getIconFromDamageForRenderPass(int damageValue, int currentPass) {
      return currentPass == 0 ? this.overlay : this.drinkable;
      }
      
      @Override
      @SideOnly(Side.CLIENT)
      public boolean requiresMultipleRenderPasses() {
      return true;
      }
      
      @Override
      @SideOnly(Side.CLIENT)
      public int getColorFromItemStack(ItemStack stack, int currentPass) {
      return currentPass > 0 ? 16777215 : itemColour;
      }
      
      @SideOnly(Side.CLIENT)
      @Override
      public void registerIcons(IIconRegister par1IconRegister) {
      this.drinkable = par1IconRegister.registerIcon("potion_bottle_drinkable");
      this.overlay = par1IconRegister.registerIcon("potion_overlay");
      }
      
      @Override
      public int getMaxItemUseDuration(ItemStack stack) {
      return 32;
      }
      
      public ItemDrink setPotionEffect(int i, int j) {
      potionID = i;
      duration = j;
      return this;
      }
      
      public ItemDrink setPoisoningChance(float chance) {
      poisonChance = chance;
      return this;
      }
      
      public ItemDrink healFood(int level, float saturation) {
      hungerHeal = level;
      hungerSatHeal = saturation;
      return this;
      }
      
      public ItemDrink setReturn(Item item) {
      returnItem = item;
      return this;
      }
      
      public ItemDrink setCuresPotions(boolean b) {
      curesPotion = b;
      return this;
      }
      
      public ItemDrink setRecipeItem(Item i) {
      recipeItem = new ItemStack(i);
      return this;
      }
      
      public boolean canDrink(EntityPlayer player) {
      if(!player.worldObj.isRemote) {
      return PlayerContainer.getPlayer(player).getStats().thirstLevel < 20;
      } else {
      return ClientStats.getInstance().level < 20;
      }
      }
      }
      

      code de l item

              eaux = new ItemDrink(7, 2f, 0x11DEF5, Constants.DRINKS_STACKSIZE, false, false, "eaux");
      
      
      1 réponse Dernière réponse Répondre Citer 0
      • moscaphone421M Hors-ligne
        moscaphone421
        dernière édition par

        Déja un truc : Tu peux faire une sorte de coremod pour thirst sans a import les sources tu passe ton mod dans BON je ne connais plus l’exact nom
        Et tu l’ajoute path et tu a juste a faire thirstmod…. … … et voila (je pense que ça peut marcher pas sur sur mais ça marche pour Arthania j’évite de passer des sources comme ça donc je passe le jar xD)
        [font=monospace  eaux ][font=monospace=] [font=monospacenew] [font=monospaceItemDrink][font=monospace(][font=monospace7][font=monospace,] [font=monospace2f][font=monospace,] [font=monospace0x11DEF5][font=monospace,] [font=monospaceConstants][font=monospace.][font=monospaceDRINKS_STACKSIZE][font=monospace,] [font=monospacefalse][font=monospace,] [font=monospacefalse][font=monospace,] [font=monospace“eaux”][font=monospace).settexturename(“…”) non ?
        J’ai rien dis :
        ]

        1. this.drinkable = par1IconRegister.registerIcon(“potion_bottle_drinkable”);
        2. this.overlay = par1IconRegister.registerIcon(“potion_overlay”);
          Voila la ligne je crois bien
        1 réponse Dernière réponse Répondre Citer 0
        • I Hors-ligne
          impuuu
          dernière édition par

          oui mais meme si je rejoute .settexturename sa marche pas est avec les 2 ligne je fait quoi jer les edit en sa

          [font=Ubuntu, sans-serifthis][font=Ubuntu, sans-serif.][font=Ubuntu, sans-serifdrinkable ][font=Ubuntu, sans-serif=][font=Ubuntu, sans-serif par1IconRegister][font=Ubuntu, sans-serif.][font=Ubuntu, sans-serifregisterIcon][font=Ubuntu, sans-serif(][font=Ubuntu, sans-serif“havenrp:eaux]”[font=Ubuntu, sans-serif);]
          [font=Ubuntu, sans-serifthis][font=Ubuntu, sans-serif.][font=Ubuntu, sans-serifoverlay ][font=Ubuntu, sans-serif=][font=Ubuntu, sans-serif par1IconRegister][font=Ubuntu, sans-serif.][font=Ubuntu, sans-serifregisterIcon][font=Ubuntu, sans-serif(][font=Ubuntu, sans-serif“havenrp:eaux”][font=Ubuntu, sans-serif);]___up please

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

            Il faut 24h entre deux messages

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

              ok mais il me faudrait de l aide a plus vite

              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

                @‘impuuu’:

                oui mais meme si je rejoute .settexturename sa marche pas est avec les 2 ligne je fait quoi jer les edit en sa

                [font=Ubuntu, sans-serifthis][font=Ubuntu, sans-serif.][font=Ubuntu, sans-serifdrinkable ][font=Ubuntu, sans-serif=][font=Ubuntu, sans-serif par1IconRegister][font=Ubuntu, sans-serif.][font=Ubuntu, sans-serifregisterIcon][font=Ubuntu, sans-serif(][font=Ubuntu, sans-serif“havenrp:eaux]”[font=Ubuntu, sans-serif);]
                [font=Ubuntu, sans-serifthis][font=Ubuntu, sans-serif.][font=Ubuntu, sans-serifoverlay ][font=Ubuntu, sans-serif=][font=Ubuntu, sans-serif par1IconRegister][font=Ubuntu, sans-serif.][font=Ubuntu, sans-serifregisterIcon][font=Ubuntu, sans-serif(][font=Ubuntu, sans-serif“havenrp:eaux”][font=Ubuntu, sans-serif);]


                up please

                Et où est le problème ?

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

                  robin probléme je croit que que thirst mod prend le bottle de minecraft est le color est moi je veut que je puise mettre des texture

                  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

                    @Override
                    @SideOnly(Side.CLIENT)
                    public int getColorFromItemStack(ItemStack stack, int currentPass) {
                    return currentPass > 0 ? 16777215 : itemColour;
                    }

                    Tu as juste à enlever cette fonction si tu veux retirer l’effet de couleur.

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

                      oui  si je retire sa donc pour la texture j ai juste a mettre .settexturename puisque je veut mettre mes texture

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

                        alor je fait comment pour que il y a une texture est que sa garde pas celle de
                        minecraft

                        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

                          Tu changes les valeurs dans la fonction registerIcons

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

                            je mes sa

                            [font=Ubuntu, sans-serif**this**][font=Ubuntu, sans-serif.][font=Ubuntu, sans-serifdrinkable ][font=Ubuntu, sans-serif=][font=Ubuntu, sans-serif par1IconRegister][font=Ubuntu, sans-serif.][font=Ubuntu, sans-serifregisterIcon][font=Ubuntu, sans-serif(][font=Ubuntu, sans-serif"havenrp:eaux"][font=Ubuntu, sans-serif);]
                            
                            [font=Ubuntu, sans-serif**this**][font=Ubuntu, sans-serif.][font=Ubuntu, sans-serifoverlay ][font=Ubuntu, sans-serif=][font=Ubuntu, sans-serif par1IconRegister][font=Ubuntu, sans-serif.][font=Ubuntu, sans-serifregisterIcon][font=Ubuntu, sans-serif(][font=Ubuntu, sans-serif"havenrp:eaux"][font=Ubuntu, sans-serif);]
                            
                            1 réponse Dernière réponse Répondre Citer 0
                            • I Hors-ligne
                              impuuu
                              dernière édition par

                              exemple:

                              
                              1.  @SideOnly(Side.CLIENT)
                              2.  @Override
                              3.  **public** **void** registerIcons(IIconRegister par1IconRegister) {
                              4.  **this**.drinkable = par1IconRegister.registerIcon(HavenRP.MODID+""+unlocalizedname);
                              5.  **this**.overlay = par1IconRegister.registerIcon([color=#666600HavenRP.MODID+][font=monospace""+unlocalizedname]);
                              6.  }
                              
                              
                              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

                                @‘impuuu’:

                                je mes sa

                                [font=Ubuntu, sans-serif**this**][font=Ubuntu, sans-serif.][font=Ubuntu, sans-serifdrinkable ][font=Ubuntu, sans-serif=][font=Ubuntu, sans-serif par1IconRegister][font=Ubuntu, sans-serif.][font=Ubuntu, sans-serifregisterIcon][font=Ubuntu, sans-serif(][font=Ubuntu, sans-serif"havenrp:eaux"][font=Ubuntu, sans-serif);]
                                
                                [font=Ubuntu, sans-serif**this**][font=Ubuntu, sans-serif.][font=Ubuntu, sans-serifoverlay ][font=Ubuntu, sans-serif=][font=Ubuntu, sans-serif par1IconRegister][font=Ubuntu, sans-serif.][font=Ubuntu, sans-serifregisterIcon][font=Ubuntu, sans-serif(][font=Ubuntu, sans-serif"havenrp:eaux"][font=Ubuntu, sans-serif);]
                                

                                Oui.
                                ça ne fonctionne pas ?

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

                                  Oui mais je vais mettre le unlocalized name en gros je supprime l event que tu a donné avant puis changer les 2 this

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

                                    oui mais je veut plusieur item pas que 1seul

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

                                      en gros j ai pas que 1 seul bouteille j en ai une dizaine a fait donc si je mais comme tu fait voir sa me mettrait une texture pour tous

                                      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

                                        Dans ce cas retires :
                                        private IIcon drinkable;
                                        private IIcon overlay;
                                        et
                                        @Override
                                        public IIcon getIconFromDamageForRenderPass(int damageValue, int currentPass) {
                                        return currentPass == 0 ? this.overlay : this.drinkable;
                                        }
                                        et

                                        @SideOnly(Side.CLIENT)
                                        @Override
                                        public void registerIcons(IIconRegister par1IconRegister) {
                                        this.drinkable = par1IconRegister.registerIcon(“potion_bottle_drinkable”);
                                        this.overlay = par1IconRegister.registerIcon(“potion_overlay”);
                                        }

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

                                          sa donne sa

                                          package com.thetorine.thirstmod.core.content;
                                          
                                          import java.util.List;
                                          import java.util.Random;
                                          
                                          import com.thetorine.thirstmod.core.client.player.ClientStats;
                                          import com.thetorine.thirstmod.core.main.ThirstMod;
                                          import com.thetorine.thirstmod.core.player.PlayerContainer;
                                          
                                          import cpw.mods.fml.relauncher.Side;
                                          import cpw.mods.fml.relauncher.SideOnly;
                                          import net.minecraft.client.renderer.texture.IIconRegister;
                                          import net.minecraft.entity.player.EntityPlayer;
                                          import net.minecraft.init.Items;
                                          import net.minecraft.item.EnumAction;
                                          import net.minecraft.item.Item;
                                          import net.minecraft.item.ItemStack;
                                          import net.minecraft.potion.PotionEffect;
                                          import net.minecraft.util.IIcon;
                                          import net.minecraft.world.World;
                                          
                                          public class ItemDrink extends Item {
                                          public int itemColour;
                                          public int itemStackSize;
                                          public boolean specialEffect;
                                          public boolean alwaysDrinkable;
                                          public Item returnItem = Items.glass_bottle;
                                          public ItemStack recipeItem;
                                          
                                          public int thirstHeal;
                                          public float saturationHeal;
                                          public float poisonChance;
                                          public boolean curesPotion;
                                          
                                          public int hungerHeal;
                                          public float hungerSatHeal;
                                          
                                          public int potionID;
                                          public int duration;
                                          
                                          public ItemDrink(int thirst, float saturation, int stacksize, boolean effect, boolean drinkable, String name) {
                                          this.thirstHeal = thirst;
                                          this.saturationHeal = saturation;
                                          this.specialEffect = effect; 
                                          this.alwaysDrinkable = drinkable;
                                          
                                          this.setUnlocalizedName(name);
                                          this.setCreativeTab(ThirstMod.thirstCreativeTab);
                                          this.setMaxStackSize(stacksize);
                                          }
                                          
                                          @Override
                                          public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) {
                                          if(canDrink(player) || alwaysDrinkable || player.capabilities.isCreativeMode) {
                                          player.setItemInUse(stack, getMaxItemUseDuration(stack));
                                          }
                                          return stack;
                                          }
                                          
                                          @Override
                                          public ItemStack onEaten(ItemStack stack, World world, EntityPlayer player) {
                                          if(!world.isRemote) {
                                          stack.stackSize–;
                                          
                                          PlayerContainer playerContainer = PlayerContainer.getPlayer(player);
                                          playerContainer.addStats(thirstHeal, saturationHeal);
                                          if (poisonChance > 0 && ThirstMod.config.POISON_ON) {
                                          Random rand = new Random();
                                          if (rand.nextFloat() < poisonChance) {
                                          playerContainer.getStats().poisonLogic.poisonPlayer();
                                          }
                                          }
                                          if (curesPotion) {
                                          player.curePotionEffects(new ItemStack(Items.milk_bucket));
                                          }
                                          if (hungerHeal > 0 && hungerSatHeal > 0) {
                                          player.getFoodStats().addStats(hungerHeal, hungerSatHeal);
                                          }
                                          if (potionID > 0) {
                                          player.addPotionEffect(new PotionEffect(potionID, duration * 20, 1));
                                          }
                                          player.inventory.addItemStackToInventory(new ItemStack(returnItem));
                                          }
                                          return stack;
                                          }
                                          
                                          @SuppressWarnings({ "unchecked", "rawtypes" })
                                          @Override
                                          public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean advancedItemTooltip) {
                                          super.addInformation(stack, player, list, advancedItemTooltip);
                                          float f = Float.parseFloat(Integer.toString(thirstHeal)) / 2;
                                          String s2 = Float.toString(f);
                                          list.add("Heals " + (s2.endsWith(".0") ? s2.replace(".0", "") : s2) + " Droplets");
                                          if(recipeItem != null) {
                                          list.add("Ingredient: " + recipeItem.getDisplayName());
                                          }
                                          }
                                          
                                          @Override
                                          public boolean hasEffect(ItemStack par1ItemStack, int pass) {
                                          if(pass == 0) return specialEffect;
                                          return false;
                                          }
                                          
                                          @Override
                                          public EnumAction getItemUseAction(ItemStack itemstack) {
                                          return EnumAction.drink;
                                          }
                                          
                                          @Override
                                          @SideOnly(Side.CLIENT)
                                          public boolean requiresMultipleRenderPasses() {
                                          return true;
                                          }
                                          
                                          @Override
                                          public int getMaxItemUseDuration(ItemStack stack) {
                                          return 32;
                                          }
                                          
                                          public ItemDrink setPotionEffect(int i, int j) {
                                          potionID = i;
                                          duration = j;
                                          return this;
                                          }
                                          
                                          public ItemDrink setPoisoningChance(float chance) {
                                          poisonChance = chance;
                                          return this;
                                          }
                                          
                                          public ItemDrink healFood(int level, float saturation) {
                                          hungerHeal = level;
                                          hungerSatHeal = saturation;
                                          return this;
                                          }
                                          
                                          public ItemDrink setReturn(Item item) {
                                          returnItem = item;
                                          return this;
                                          }
                                          
                                          public ItemDrink setCuresPotions(boolean b) {
                                          curesPotion = b;
                                          return this;
                                          }
                                          
                                          public ItemDrink setRecipeItem(Item i) {
                                          recipeItem = new ItemStack(i);
                                          return this;
                                          }
                                          
                                          public boolean canDrink(EntityPlayer player) {
                                          if(!player.worldObj.isRemote) {
                                          return PlayerContainer.getPlayer(player).getStats().thirstLevel < 20;
                                          } else {
                                          return ClientStats.getInstance().level < 20;
                                          }
                                          }
                                          }
                                          
                                          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

                                            Oui et donc tu as juste à mettre le .setTextureName dans la déclaration de l’item.

                                            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