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

    Baton et item de reparation et GUI

    Sans suite
    1.7.10
    7
    41
    6309
    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.
    • Yeyvo
      Yeyvo last edited by

      d’abord je veux que mon ring ai une durabilité minimal de 1
      après qu’il réussisse a réparé mon armure 
      ensuite je voudrais créer un bâton de soin

      se code est bon ??

      import net.minecraft.entity.Entity;
      import net.minecraft.entity.player.EntityPlayer;
      import net.minecraft.item.Item;
      import net.minecraft.item.ItemStack;
      import net.minecraft.world.World;
      
      public class smallring extends Item
      {
      
         public smallring()
         {
          this.setMaxDamage(500);
             this.setMaxStackSize(1);
         }
      
         public void onItemRightClick(ItemStack stack, World world, Entity entity, int slot, boolean selected)
         {
             if(entity instanceof EntityPlayer)
             {
                 EntityPlayer player = (EntityPlayer)entity;
                 for(int i = 0; i < 4; i++)
                 {
                     ItemStack armor = player.getCurrentArmor(i);
                     if(armor != null && armor.getItemDamage() > 0 && stack.getItemDamage() < stack.getMaxDamage())
                     {
                         stack.setItemDamage(stack.getItemDamage() + 1);
                         armor.setItemDamage(armor.getItemDamage() - 1);
                     }
                 }
      
             }
         }
      }
      
      

      1 Reply Last reply Reply Quote 0
      • Deleted
        Deleted last edited by

        N’oublie pas la balise de la version au passage 😛

        Ensuite pour ton bâton de soin, recrée-toi un item où tu override la méthode onItemRightClick pour y ajouter un petit player.heal(4);//le nombre correspond aux nombres de demie coeurs à regen, donc 2 coeurs seront regen

        Ensuite pour le “durabilité minimal de 1”, je ne comprends pas tellement …
        Et sinon, j’ai pas test mais ton code pour ta première demande me semble bon à première vue :3

        EDIT = Je ne pense pas que l’instanceof soit nécessaire, tout comme la dernière condition où j’aurai juste mis un null-check de l’armor itemstack. Car c’est impossible d’avoir un item dont le damage soit inférieur à 0, à moins d’avoir un set un nombre négatif avec le setMaxDamage() dans le constructeur. Mais là encore je ne pense pas que MC accepte cela. D’autre part checker si l’item damage < au max damage de l’item est inutile, car tu ne pourras plus rentrer dans la méthode onitemRightClick lorsqu’il sera égal pour la simple et bonne raison que ton item sera cassé 😮

        1 Reply Last reply Reply Quote 0
        • Yeyvo
          Yeyvo last edited by

          @‘Plaigon’:

          N’oublie pas la balise de la version au passage 😛

          Ensuite pour ton bâton de soin, recrée-toi un item où tu override la méthode onItemRightClick pour y ajouter un petit player.heal(4);//le nombre correspond aux nombres de demie coeurs à regen, donc 2 coeurs seront regen

          Ensuite pour le “durabilité minimal de 1”, je ne comprends pas tellement …
          Et sinon, j’ai pas test mais ton code pour ta première demande me semble bon à première vue :3

          je vien de changer le onrightclic par onUpdate

          la durabilite minimal de 1 servira a se que l’object ne se casse pas
            pour se que tu mas dit dans l’edit j’ai pas bien compris

          1 Reply Last reply Reply Quote 0
          • darkvince37
            darkvince37 last edited by

            Pour ton baton de heal si tu veut te heal

            public ItemStack onItemRightClick(ItemStack item, World world, EntityPlayer player)
            {
            
            player.addPotionEffect(new PotionEffect(Potion.heal.id, 60, 2));
            
            return item;
            }
            
            

            Essaye sa

            Si tu veut heal une autre personne:

            public boolean hitEntity(ItemStack item, EntityLivingBase attackedLiving, EntityLivingBase player)
               {
            
            attackedLiving.setHealth(20);
            
                   return true;
               }
            

            Apres je c’est pas si c’est se que tu recherche.

            J’ai pas test le code

            1 Reply Last reply Reply Quote 0
            • Yeyvo
              Yeyvo last edited by

              Je le testerais mai j’y ajouterais un colldown genre 20seconde pour heal une autre perssogne j’esseyerai de fair une fleche comme celle de la 1.9
              T
              Pour heal une autre persogne je pourais utiliser une partie de ta fonction mais se ne sera pas un baton mais une fleche cimme ce

              1 Reply Last reply Reply Quote 0
              • darkvince37
                darkvince37 last edited by

                
                @Override
                public void onUpdate(ItemStack item, World world, Entity player, int slotIndex, boolean inHand)
                {
                if(item.hasTagCompound())
                {
                if(item.stackTagCompound.getInteger("timer") > 0)
                {
                item.stackTagCompound.setInteger("timer", (int) (item.stackTagCompound.getInteger("timer") + 1));
                }
                if(item.stackTagCompound.getInteger("timer") >= (int) (18*20)) //Le 18 corespond au secondes
                {
                item.stackTagCompound.setInteger("timer", 0);
                }
                }
                super.onUpdate(item, world, player, slotIndex, inHand);
                }
                
                public ItemStack onItemRightClick(ItemStack item, World world, EntityPlayer player)
                {
                if(!item.hasTagCompound())
                {
                item.setTagCompound(new NBTTagCompound());
                item.stackTagCompound.setInteger("timer", 0);
                }
                if(item.stackTagCompound.getInteger("timer") == 0)
                {
                player.heal(22);//22 est le nombre de demi coeur donc 11 coeur la
                //player.addPotionEffect(new PotionEffect(Potion.heal.id, 60, 2)); sinon tu peut utiliser une potion
                item.stackTagCompound.setInteger("timer", 1);
                }
                else
                {
                if(world.isRemote)
                player.addChatComponentMessage(new ChatComponentTranslation("Tu dois attendre que le sortilége se recharge !"));
                item.hasTagCompound();
                }
                return item;
                }
                
                @SideOnly(Side.CLIENT)
                public boolean hasEffect(ItemStack item)
                {
                return item.hasTagCompound() ? (item.stackTagCompound.getInteger("timer") == 0 ? true : false) : false;
                }
                
                }
                
                
                1 Reply Last reply Reply Quote 0
                • Yeyvo
                  Yeyvo last edited by

                  Merci 🙂

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

                    Ça ne sert à rien de faire une citation si vous répondez au message qui se trouve juste au dessus. Le seul effet que ça a c’est nuire à la lisibilité x)

                    1 Reply Last reply Reply Quote 0
                    • Yeyvo
                      Yeyvo last edited by

                      @‘robin4002’:

                      Ça ne sert à rien de faire une citation si vous répondez au message qui se trouve juste au dessus. Le seul effet que ça a c’est nuire à la lisibilité x)

                      x) encore une citation  😛

                      1 Reply Last reply Reply Quote 0
                      • Deleted
                        Deleted last edited by

                        Résolu sinon ?

                        1 Reply Last reply Reply Quote 0
                        • Yeyvo
                          Yeyvo last edited by

                          @‘Plaigon’:

                          Résolu sinon  ?

                          Pas encore  😉

                          Ya t’il une onction pour un tp aleatoir dans un rayon defini ?? Si elle existe laquelle

                          1 Reply Last reply Reply Quote 0
                          • AymericRed
                            AymericRed last edited by

                            Non il n’y en a pas, mais tu peux juste utiliser des randoms (en vérifiant que le bloc est de l’air)

                            Envoyé de mon RAINBOW LITE 4G en utilisant Tapatalk

                            Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                            AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                            Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                            Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

                            1 Reply Last reply Reply Quote 0
                            • Yeyvo
                              Yeyvo last edited by

                              **Mercis pour l’info
                              **

                              1 Reply Last reply Reply Quote 0
                              • Yeyvo
                                Yeyvo last edited by

                                Ah !!oui j’y pense si je veut que mon ring ne casse pas je fait comment

                                Je laisse 1de durabilité

                                Et sije veux qu’il soit réparable via un craft dans 
                                Ma machine a pala

                                1 Reply Last reply Reply Quote 0
                                • Deleted
                                  Deleted last edited by

                                  Pourquoi souhaites-tu instaurer une dura a ton item si tu ne souhaites pas qu il se casse ? Sa n a pas de sens –’

                                  1 Reply Last reply Reply Quote 0
                                  • Yeyvo
                                    Yeyvo last edited by

                                    **C’est pour quand le joueur veut le ré****parer il le réparé via une table spéciale dont le craft est 
                                    **
                                    **Assez cher
                                    **Je vous les deja dis le 1de dura a pour but d’evité que l’objet disparaisse car il coute cher

                                    1 Reply Last reply Reply Quote 0
                                    • Deleted
                                      Deleted last edited by

                                      Eh bien si tu souhaites que ton item soit endommageable, mais incassable en gardant toujours 1 d’utilisation, je te conseille de cancel l’event PlayerDestroyItemEvent en ayant check avant si il s’agissait bien de ton item dont il est question. Apres avoir cancel l’event, je pense que ton item aura automatiquement gardé 1 de dura.

                                      1 Reply Last reply Reply Quote 0
                                      • AymericRed
                                        AymericRed last edited by

                                        Ou sinon plus simple si il te reste 1 de dura, tu empèche cette ligne de s’éxécuter dans ta fonction onItemRightClick : “stack.setItemDamage(stack.getItemDamage() + 1);”

                                        Si je vous ai aidé, n'oubliez pas d’être heureux, j'aiderai encore +

                                        AymericRed, moddeur expérimenté qui aide sur ce forum et qui peut accepter de faire un mod Forge rémunéré de temps en temps.

                                        Mes tutos : Table de craft, plugin NEI, plugin JEI, modifier l'overlay
                                        Je suis un membre apprécié et joueur, j'ai déjà obtenu 6 points de réputation.

                                        1 Reply Last reply Reply Quote 0
                                        • Deleted
                                          Deleted last edited by

                                          Ouep effectivement une petite condition ternaire devrait faire l’affaire 😃

                                          1 Reply Last reply Reply Quote 0
                                          • Yeyvo
                                            Yeyvo last edited by

                                            j’ai reussi a pour le ring 
                                            mais quand j’ai ajoutté un gui et des recette mon jeux crash 
                                            Mes Logs:

                                            –-- Minecraft Crash Report ----
                                            
                                            // Who set us up the TNT?
                                            
                                            Time: 01/05/16 01:56
                                            Description: Initializing game
                                            
                                            java.lang.NullPointerException: Initializing game
                                            at cpw.mods.fml.common.network.NetworkRegistry.registerGuiHandler(NetworkRegistry.java:219)
                                            at ma.Yeyvo.Paladium.common.ModPaladium.init(ModPaladium.java:223)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                                            at java.lang.reflect.Method.invoke(Unknown Source)
                                            at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:532)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                                            at java.lang.reflect.Method.invoke(Unknown Source)
                                            at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
                                            at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
                                            at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
                                            at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
                                            at com.google.common.eventbus.EventBus.post(EventBus.java:275)
                                            at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:212)
                                            at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:190)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                                            at java.lang.reflect.Method.invoke(Unknown Source)
                                            at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
                                            at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
                                            at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
                                            at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
                                            at com.google.common.eventbus.EventBus.post(EventBus.java:275)
                                            at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:119)
                                            at cpw.mods.fml.common.Loader.initializeMods(Loader.java:737)
                                            at cpw.mods.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:311)
                                            at net.minecraft.client.Minecraft.startGame(Minecraft.java:597)
                                            at net.minecraft.client.Minecraft.run(Minecraft.java:942)
                                            at net.minecraft.client.main.Main.main(Main.java:164)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                                            at java.lang.reflect.Method.invoke(Unknown Source)
                                            at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
                                            at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
                                            at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source)
                                            at GradleStart.main(Unknown Source)
                                            
                                            A detailed walkthrough of the error, its code path and all known details is as follows:
                                            ---------------------------------------------------------------------------------------
                                            
                                            -- Head --
                                            Stacktrace:
                                            at cpw.mods.fml.common.network.NetworkRegistry.registerGuiHandler(NetworkRegistry.java:219)
                                            at ma.Yeyvo.Paladium.common.ModPaladium.init(ModPaladium.java:223)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                                            at java.lang.reflect.Method.invoke(Unknown Source)
                                            at cpw.mods.fml.common.FMLModContainer.handleModStateEvent(FMLModContainer.java:532)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                                            at java.lang.reflect.Method.invoke(Unknown Source)
                                            at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
                                            at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
                                            at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
                                            at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
                                            at com.google.common.eventbus.EventBus.post(EventBus.java:275)
                                            at cpw.mods.fml.common.LoadController.sendEventToModContainer(LoadController.java:212)
                                            at cpw.mods.fml.common.LoadController.propogateStateMessage(LoadController.java:190)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                                            at java.lang.reflect.Method.invoke(Unknown Source)
                                            at com.google.common.eventbus.EventSubscriber.handleEvent(EventSubscriber.java:74)
                                            at com.google.common.eventbus.SynchronizedEventSubscriber.handleEvent(SynchronizedEventSubscriber.java:47)
                                            at com.google.common.eventbus.EventBus.dispatch(EventBus.java:322)
                                            at com.google.common.eventbus.EventBus.dispatchQueuedEvents(EventBus.java:304)
                                            at com.google.common.eventbus.EventBus.post(EventBus.java:275)
                                            at cpw.mods.fml.common.LoadController.distributeStateMessage(LoadController.java:119)
                                            at cpw.mods.fml.common.Loader.initializeMods(Loader.java:737)
                                            at cpw.mods.fml.client.FMLClientHandler.finishMinecraftLoading(FMLClientHandler.java:311)
                                            at net.minecraft.client.Minecraft.startGame(Minecraft.java:597)
                                            
                                            -- Initialization --
                                            Details:
                                            Stacktrace:
                                            at net.minecraft.client.Minecraft.run(Minecraft.java:942)
                                            at net.minecraft.client.main.Main.main(Main.java:164)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                                            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
                                            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
                                            at java.lang.reflect.Method.invoke(Unknown Source)
                                            at net.minecraft.launchwrapper.Launch.launch(Launch.java:135)
                                            at net.minecraft.launchwrapper.Launch.main(Launch.java:28)
                                            at net.minecraftforge.gradle.GradleStartCommon.launch(Unknown Source)
                                            at GradleStart.main(Unknown Source)
                                            
                                            -- System Details --
                                            Details:
                                            Minecraft Version: 1.7.10
                                            Operating System: Windows 7 (x86) version 6.1
                                            Java Version: 1.8.0_91, Oracle Corporation
                                            Java VM Version: Java HotSpot(TM) Client VM (mixed mode), Oracle Corporation
                                            Memory: 932285952 bytes (889 MB) / 1046937600 bytes (998 MB) up to 1046937600 bytes (998 MB)
                                            JVM Flags: 3 total; -Xincgc -Xmx1024M -Xms1024M
                                            AABB Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
                                            IntCache: cache: 0, tcache: 0, allocated: 0, tallocated: 0
                                            FML: MCP v9.05 FML v7.10.99.99 Minecraft Forge 10.13.4.1558 4 mods loaded, 4 mods active
                                            States: 'U' = Unloaded 'L' = Loaded 'C' = Constructed 'H' = Pre-initialized 'I' = Initialized 'J' = Post-initialized 'A' = Available 'D' = Disabled 'E' = Errored
                                            UCHI mcp{9.05} [Minecraft Coder Pack] (minecraft.jar) 
                                            UCHI FML{7.10.99.99} [Forge Mod Loader] (forgeSrc-1.7.10-10.13.4.1558-1.7.10.jar) 
                                            UCHI Forge{10.13.4.1558} [Minecraft Forge] (forgeSrc-1.7.10-10.13.4.1558-1.7.10.jar) 
                                            UCHE paladium{1.0.0} [Paladium] (bin) 
                                            GL info: ' Vendor: 'Intel' Version: '3.1.0 - Build 9.17.10.3347' Renderer: 'Intel(R) HD Graphics 3000'
                                            Launched Version: 1.7.10
                                            LWJGL: 2.9.1
                                            OpenGL: Intel(R) HD Graphics 3000 GL version 3.1.0 - Build 9.17.10.3347, Intel
                                            GL Caps: Using GL 1.3 multitexturing.
                                            Using framebuffer objects because OpenGL 3.0 is supported and separate blending is supported.
                                            Anisotropic filtering is supported and maximum anisotropy is 16.
                                            Shaders are available because OpenGL 2.1 is supported.
                                            
                                            Is Modded: Definitely; Client brand changed to 'fml,forge'
                                            Type: Client (map_client.txt)
                                            Resource Packs: []
                                            Current Language: Français (France)
                                            Profiler Position: N/A (disabled)
                                            Vec3 Pool Size: 0 (0 bytes; 0 MB) allocated, 0 (0 bytes; 0 MB) used
                                            Anisotropic Filtering: Off (1)
                                            

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

                                            MINECRAFT FORGE FRANCE © 2018

                                            Powered by NodeBB