Navigation

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

    Item Heal 1.7.x?(1.7.10)

    Tutoriels des membres
    1.7.x
    4
    6
    208
    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.
    • JustAnDev
      JustAnDev last edited by JustAnDev

      Attention

      Ceci est mon premier tuto et je ne verif pas souvent.Ceci est la raison il y a écrit 1.7.x avec un ? car j’ai verif qu’en 1.7.10 donc si ceci ne marche pas dites la moi

      Pré-Requis

      Créeer un item simple
      Apprendre les variables(Les int sont recommandé)

      Modifier l’item

      Sur la classe de l’item ajoutez moi ceci

        public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player)
          {
           
              if(!world.isRemote)//verifie que le monde est en serveur et non en client sinon ca sait n'importe quoi
              {
                    player.addPotionEffect(new PotionEffect(Potion.heal.id, 2, 3));//Vous Heal apres si vous avez suivi le tuto sur les armures vous comprenez
              }
              
              if(!world.isRemote)// verif si le monde est en serv {
                  stack.stackSize--;//retire 1 a l'item
      //D'autres conditions
              }
              return stack;//retourne L'itemStack simple
          }
      

      N’oubliez pas le crtl+shift+o et c’est fini😃
      encore plus compressé si vous voulez que le mod ne fasse pas 1to😏 mettez a la place ce code

      public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) {
      		
      	if(!world.isRemote) {
      		player.addPotionEffect(new PotionEffect(Potion.heal.id, 2, 3));
      		stack.stackSize--;
      	}
      	return stack;
      }
      

      Encore mieux

      public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) {
      		
      	if(!world.isRemote) {
      		player.heal(0.5F);
      		stack.stackSize--;
      	}
      	return stack;
      }
      

      le code est moins lourd comme ceci

      CoolDown

      Bon votre item helant fonctionne mais le spam est beaucoup trop ENORME(voir cheat!)
      donc nous allons faire un cooldown.
      Créons uns variable de type Integer se nommant cooldown

      int cooldown = 1000000;
      

      Pourquoi cette int a une valeur énorme!Car on va la baisser et ca va bien sur baisser vite.Mettons une boucle de type while de manière qu’elle ressemble a cela

      
      while(cooldown != 1000000)//Un tant que pour augmenter le cooldown
      {
      while(cooldown != 0)//verifie que le cooldown n'est pas zero 
      {
      ++cooldown;
      }
      }
      
      

      Le timer étant fait ajoutons une condition qui englobe le !world.isRemote qui ressenble a cela

      if(cooldown == 0)
      {
      //Le !world is remote 
      }
      else
      {
      System.out.println("Le cooldown n'est pas fini! \n La valeur du cooldown est a "+cooldown);
      );
      

      La ca fonctionne!MAIS!On n’aurait pas oublie un truc. Alors le truc c’est de le reset donc a la methode detectant les Right Click!
      Je ne vais pas vous dire comment faire j’ai donné trop de choses!
      mais si vous voulez d’autres résultas a votre item prenez l’ancien code

      Votez ici pour que je vois si mes tutos simples vous interesse

      Q ET R
      Q:Le tuto fonctionne il sur d’autres versions?
      R:Oui il fonctionne avec quelques différences et pas qu’en 1.7.x

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

        @Daich_ a dit dans Item Heal 1.7.x?(1.7.10) :

        sur la classe de l’item ajoutez moi ceci

        Pourquoi faire deux conditions qui check la même chose ?

        fait plutôt :

        public ItemStack onItemRightClick(ItemStack stack, World world, EntityPlayer player) {
        		
        	if(!world.isRemote) {
        		player.addPotionEffect(new PotionEffect(Potion.heal.id, 2, 3));
        		stack.stackSize--;
        	}
        	return stack;
        }
        
        1 Reply Last reply Reply Quote 0
        • JustAnDev
          JustAnDev last edited by

          ah oui mais c mon 1er tuto

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

            Donc tu peux prendre compte des suggestions pour l’améliorer 😉

            1 Reply Last reply Reply Quote 2
            • JustAnDev
              JustAnDev last edited by

              ok dac

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

                plutot que mettre un effet de potion pour heal le player, dans la class EntityPlayer ya une fonction EntityPlayer#heal pour lui ajouter/soustraire de la vie heal(float), si le nombre est positif alors ca lui ajoute de la vie heal(5.0F) la ton player va obtenir 5hp en plus soit 2.5 ❤ , si tu fait heal(-5.0F) ton player va perdre 5hp soit 2.5 ❤

                et puis tant qu’a faire fait le tuto pour des versions plus recente aussi, comme pour la 1.12.2 ou 1.13 par exemple x)
                c’est quasiment la mm chose en plus niveau code

                1 Reply Last reply Reply Quote 3
                • 1 / 1
                • First post
                  Last post
                Design by Woryk
                Contact / Mentions Légales / Faire un don

                MINECRAFT FORGE FRANCE © 2018

                Powered by NodeBB