• Register
    • Login
    • Search
    • Recent
    • Tags
    • Popular
    • Users
    • Groups

    Texture thirst mod

    Sans suite
    5
    20
    2924
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • I
      impuuu last edited by

      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 Reply Last reply Reply Quote 0
      • moscaphone421
        moscaphone421 last edited by

        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 Reply Last reply Reply Quote 0
        • I
          impuuu last edited by

          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 Reply Last reply Reply Quote 0
          • BrokenSwing
            BrokenSwing Moddeurs confirmés Rédacteurs last edited by

            Il faut 24h entre deux messages

            1 Reply Last reply Reply Quote 0
            • I
              impuuu last edited by

              ok mais il me faudrait de l aide a plus vite

              1 Reply Last reply Reply Quote 0
              • robin4002
                robin4002 Moddeurs confirmés Rédacteurs Administrateurs last edited by

                @‘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 Reply Last reply Reply Quote 0
                • I
                  impuuu last edited by

                  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 Reply Last reply Reply Quote 0
                  • robin4002
                    robin4002 Moddeurs confirmés Rédacteurs Administrateurs last edited by

                    @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 Reply Last reply Reply Quote 0
                    • I
                      impuuu last edited by

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

                      1 Reply Last reply Reply Quote 0
                      • I
                        impuuu last edited by

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

                        1 Reply Last reply Reply Quote 0
                        • robin4002
                          robin4002 Moddeurs confirmés Rédacteurs Administrateurs last edited by

                          Tu changes les valeurs dans la fonction registerIcons

                          1 Reply Last reply Reply Quote 0
                          • I
                            impuuu last edited by

                            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 Reply Last reply Reply Quote 0
                            • I
                              impuuu last edited by

                              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 Reply Last reply Reply Quote 0
                              • robin4002
                                robin4002 Moddeurs confirmés Rédacteurs Administrateurs last edited by

                                @‘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 Reply Last reply Reply Quote 0
                                • I
                                  impuuu last edited by

                                  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 Reply Last reply Reply Quote 0
                                  • I
                                    impuuu last edited by

                                    oui mais je veut plusieur item pas que 1seul

                                    1 Reply Last reply Reply Quote 0
                                    • I
                                      impuuu last edited by

                                      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 Reply Last reply Reply Quote 0
                                      • robin4002
                                        robin4002 Moddeurs confirmés Rédacteurs Administrateurs last edited by

                                        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 Reply Last reply Reply Quote 0
                                        • I
                                          impuuu last edited by

                                          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 Reply Last reply Reply Quote 0
                                          • robin4002
                                            robin4002 Moddeurs confirmés Rédacteurs Administrateurs last edited by

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

                                            1 Reply Last reply Reply Quote 0
                                            • 1 / 1
                                            • First post
                                              Last post
                                            Design by Woryk
                                            Contact / Mentions Légales

                                            MINECRAFT FORGE FRANCE © 2018

                                            Powered by NodeBB