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

    Recherche d'une "function"

    Sans suite
    6
    19
    3522
    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
      anguelwyvern dernière édition par

      voila je me suis créez un item “bouclier d’énergie”

      en gros j’ai attribué l’enchant absorb à l’item et tant que on as le dis “item” dans l’inventaire on gagne jusqu’à 20 cœur de “bouclier”

      mon problème

      • quand on jette l’item, je voudrais que cette barre de “bouclier” disparaisse, car actuellement même si je jette l’item
        l’effet reste indéfiniment (bien sur si on ce prend une tarte ça ne ce régénère pas)

      mais tant que l’on subit pas de dégât, on peut gardez la chose des heures entière …

      en gros je voudrais savoir si il existe une fonction qui check si un certain item sont dans l’inventaire,

      merci d’avance 🙂

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

        Je crois qu’une fonction s’appelle “worldRemote” ou un truc comme ça, essaye

        Mes tutos :

        >! Un item mangeable
        [url=http://www.minecraftforgefranc…

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

          world.remote permet de savoir si c’est coté serveur ou coté client, rien a voir avec un item

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

            @‘isador34’:

            world.remote permet de savoir si c’est coté serveur ou coté client, rien a voir avec un item

            Ah ok merci de ta précision ^^

            Mes tutos :

            >! Un item mangeable
            [url=http://www.minecraftforgefranc…

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

              Alors, dans un tick handler, tu peux check si le joueur a l’item en main.

              Si il l’a -> Une boolean qui gère l’effet passe en true
              Dans le cas contraire, false

              Normalement, ça devrais marcher

              Si tu peux donner le code ça aiderais

              "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
              • A
                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
                • isador
                  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
                  • Gugu
                    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
                    • isador
                      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
                      • Zak
                        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
                        • isador
                          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
                            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
                            • Zak
                              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
                              • isador
                                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
                                  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
                                  • isador
                                    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
                                      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
                                      • Zak
                                        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
                                        • isador
                                          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
                                          Contact / Mentions Légales

                                          MINECRAFT FORGE FRANCE © 2018

                                          Powered by NodeBB