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.
    • MrCupCakeMonsterM Hors-ligne
      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
      • GuguG Hors-ligne
        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 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