MFF

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

    Recherche d'une "function"

    Planifier Épinglé Verrouillé Déplacé Sans suite
    19 Messages 6 Publieurs 4.1k 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.
    • A Hors-ligne
      anguelwyvern
      dernière édition par

      voila le code en question

      package fr.celestiafrance.c_drone.common;
      
      import java.util.List;
      
      import cpw.mods.fml.client.FMLClientHandler;
      import net.minecraft.entity.Entity;
      import net.minecraft.entity.EntityLivingBase;
      import net.minecraft.entity.player.EntityPlayer;
      import net.minecraft.item.Item;
      import net.minecraft.item.ItemStack;
      import net.minecraft.util.StatCollector;
      import net.minecraft.world.World;
      
      public class ItemShield extends Item {
      
      protected ItemShield()
      {
      }
      
      public void onUpdate(ItemStack par1ItemStack, World par2World, Entity par3Entity, int par4, boolean par5)
      {
      EntityPlayer player = FMLClientHandler.instance().getClient().thePlayer;
      int noAbs = 20;
      if ((par4 < 1000) && (par3Entity.ticksExisted % 80 == 0) && ((par3Entity instanceof EntityLivingBase)))
      {
      float abs = ((EntityLivingBase)par3Entity).getAbsorptionAmount();
      if (abs < 19.0F)
      {
      abs += 1.0F;
      ((EntityLivingBase)par3Entity).setAbsorptionAmount(abs);
      }
      }
      else if (par4 > 1000){
      ((EntityLivingBase)par3Entity).setAbsorptionAmount(noAbs);
      }
      }
      
      public void addInformation(ItemStack par1ItemStack, EntityPlayer par2EntityPlayer, List par3List, boolean par4)
      {
      par3List.add(StatCollector.translateToLocal("item_Shield"));
      par3List.add(StatCollector.translateToLocal("item_Shield"));
      super.addInformation(par1ItemStack, par2EntityPlayer, par3List, par4);
      }
      
      }
      
      1 réponse Dernière réponse Répondre Citer 0
      • isadorI Hors-ligne
        isador Moddeurs confirmés Modérateurs
        dernière édition par

        en faait on veux check si le joueur l’a sur lui, pas forcement équipé

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

          Le soucis est que quand tu jette l’item, tu ne retire pas l’effet.

          Essaie de voir si y’a un event pour quand le player droppe un item, et si l’item est le tien, tu retire les modifications

          "If you have a comprehensive explanation for everything then it decreases uncertainty and anxiety and reduces your cognitive load. And if you can use that simplifying algorithm to put yourself on the side of moral virtue then you’re constantly a good person with a minimum of effort."
          ― Jordan B. Peterson

          1 réponse Dernière réponse Répondre Citer 0
          • isadorI Hors-ligne
            isador Moddeurs confirmés Modérateurs
            dernière édition par

            ok merci je regarde ca

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

              Plus simple, tu regardes si l’item n’est plus dans ton inventaire lorsque tu le droppes puis tu enlèves la barre.

              1 réponse Dernière réponse Répondre Citer 0
              • isadorI Hors-ligne
                isador Moddeurs confirmés Modérateurs
                dernière édition par

                Bah justement je cherche cette fonction

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

                  Tien voila se que tu recherche 😛

                  
                  player.inventory.hasItemStack()
                  
                  

                  Tu fais un truc genre :

                  
                  if(player.inventory.hasItemStack(new ItemStack(tonMod.tonItem)))
                  {
                  
                  player.addPotionEffect((new PotionEffect(Potion.nightVision.id, 100, 0)));
                  
                  System.out.println("Lol");
                  
                  }
                  else
                  {
                  
                  player.addPotionEffect((new PotionEffect(Potion.nightVision.id, 0, 0)));
                  
                  System.out.println("Lol2");
                  }
                  
                  

                  Enjoy 😉

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

                    Oui mais avant faut checker si il a droppé le bon item, sinon ça exécute la condition à chaque item droppé, ce qui n’est pas très optimisé… 😕

                    1 réponse Dernière réponse Répondre Citer 0
                    • isadorI Hors-ligne
                      isador Moddeurs confirmés Modérateurs
                      dernière édition par

                      Bah un else if == null tout simplement, je teste dans l’après le code

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

                        Oui mais il y a pas 40 solution car comment tu fais si le gars met sont truc dans un coffre ?

                        Au faite Zak le code que j ai mit plus haut ne check absolument pas les item dropé il check si le gars a l’item dans l’inventaire

                        Mais bon si tu veut tjr check si il a drop le bon item alors fais sa :

                        
                        private void onPlayerTick(EntityPlayer player)
                        {
                        
                        if(player.getCurrentEquippedItem() != null)
                        {
                        
                        ItemStack hand = player.getCurrentEquippedItem();
                        
                        if(hand == new ItemStack(tonMod.tonItem))
                        {
                        
                        player.addPotionEffect((new PotionEffect(Potion.nightVision.id, 0, 0)));
                        
                        System.out.println("Lol");
                        
                        }
                        
                        }
                        
                        }
                        
                        1 réponse Dernière réponse Répondre Citer 0
                        • isadorI Hors-ligne
                          isador Moddeurs confirmés Modérateurs
                          dernière édition par

                          
                          if ((player.inventory.hasItemStack(new ItemStack(c_drone.itemShield)) && (par3Entity.ticksExisted % 0.5 == 0) && ((par3Entity instanceof EntityLivingBase))))
                          {
                          float abs = ((EntityLivingBase)par3Entity).getAbsorptionAmount();
                          if (abs < 2000.0F)
                          {
                          abs += 1.0F;
                          ((EntityLivingBase)par3Entity).setAbsorptionAmount(abs);
                          }
                          }
                          else{
                          System.out.println("plus item");
                          ((EntityLivingBase)par3Entity).setAbsorptionAmount(noAbs);
                          }
                          
                          

                          le problème c’est que le else ne marche pas… La condition quand a elle est bien remplie

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

                            Tu la mit ou ?
                            Car il faut que tu face un tick handler

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

                              Nan faut juste le mettre dans l’event qui gère le drop

                              1 réponse Dernière réponse Répondre Citer 0
                              • isadorI Hors-ligne
                                isador Moddeurs confirmés Modérateurs
                                dernière édition par

                                je l’avais mis dans un onUpdate

                                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