MFF

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

    Achivement Give

    Planifier Épinglé Verrouillé Déplacé Résolu 1.7.x
    1.7.10
    29 Messages 5 Publieurs 4.3k 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.
    • DeletedD Hors-ligne
      Deleted
      dernière édition par

      player.inventory.addItemstackToInventory(new ItemStack(tonitem));

      Je ne sais pas si la méthode est client side only, à toi de tester 😉

      1 réponse Dernière réponse Répondre Citer 0
      • DiabolicaTrixD Hors-ligne
        DiabolicaTrix Correcteurs Moddeurs confirmés
        dernière édition par

        Au contraire, elle doit être utilisée côté serveur, sauf erreur de ma part.

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

          @SubscribeEvent
            public void onAchievement(AchievementEvent event,EntityPlayer Player)
            {
                if(event.achievement == AchievementList.openInventory)
                {
                    System.out.println(“Test Achievement”);
                    Player.inventory.addItemStackToInventory(new ItemStack(Items.apple));
                }

          J’ai essayé sa mais ne marche pas

          Voila ma signature

          1 réponse Dernière réponse Répondre Citer 0
          • BrokenSwingB Hors-ligne
            BrokenSwing Moddeurs confirmés Rédacteurs
            dernière édition par

            
            @SubscribeEvent
            public void onAchievement(AchievementEvent event)
            {
            if(event.achievement == AchievementList.openInventory)
            {
            System.out.println("Test Achievement");
            event.player.inventory.addItemStackToInventory(new ItemStack(Items.apple));
            }
            
            

            Change pas les arguments de la méthode tu récupère le joueur dans la variable event, je suis pas sûr du code fait “event.” puis CTRL + ESPACE et cherche si ya un truc qui correspond au joueur

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

              J’ai fait as mais il à un problème c’est quand on va faire l’action de l’achievement il va redonné l’item
              (j’ai essayé avec d’autre achievement et sa le fait toujours)

              Voila ma signature

              1 réponse Dernière réponse Répondre Citer 0
              • BrokenSwingB Hors-ligne
                BrokenSwing Moddeurs confirmés Rédacteurs
                dernière édition par

                C’est à dire, genre à chaque fois que l’on va couper du bois le code s’exécute ?

                1 réponse Dernière réponse Répondre Citer 0
                • DiabolicaTrixD Hors-ligne
                  DiabolicaTrix Correcteurs Moddeurs confirmés
                  dernière édition par

                  @‘BrokenSwing’:

                  C’est à dire, genre à chaque fois que l’on va couper du bois le code s’exécute ?

                  Je crois qu’il veut dire que le code s’exécute à chaque fois, même si l’achievement est déjà gagné.

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

                    Voila et il faut que l’achivement sa fait une fois je vais essayé un truc

                    Voila ma signature

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

                      @SubscribeEvent
                        public void onAchievement(AchievementEvent event)
                        {

                      if(event.achievement == AchievementList.mineWood)
                            {
                            for(int i = 0 ; i < 1 ; i++)
                            {
                            System.out.println(“Test Achievement”);
                                event.entityPlayer.inventory.addItemStackToInventory(new ItemStack(Items.apple));
                            }

                      }
                        }
                      j’ai essayé sa mais marche pas ou sa

                      @SubscribeEvent
                        public void onAchievement(AchievementEvent event)
                        {
                       for(int i = 0 ; i < 5 ; i++)
                       {
                            if(event.achievement == AchievementList.mineWood)
                            {

                      System.out.println(“Test Achievement”);
                                event.entityPlayer.inventory.addItemStackToInventory(new ItemStack(Items.apple));

                      }
                       }

                      Voila ma signature

                      1 réponse Dernière réponse Répondre Citer 0
                      • BrokenSwingB Hors-ligne
                        BrokenSwing Moddeurs confirmés Rédacteurs
                        dernière édition par

                        Dans le premier code tu lui donne 1 pommes et dans le second tu lui en donne 5, ça résoud pas ton problème

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

                          oui j’avais pas testé et j’ai mis 5 😕

                          Voila ma signature

                          1 réponse Dernière réponse Répondre Citer 0
                          • BrokenSwingB Hors-ligne
                            BrokenSwing Moddeurs confirmés Rédacteurs
                            dernière édition par

                            Je fait des tests de mon côté et je te dis ce que j’ai trouvé

                            1 réponse Dernière réponse Répondre Citer 0
                            • DiabolicaTrixD Hors-ligne
                              DiabolicaTrix Correcteurs Moddeurs confirmés
                              dernière édition par

                              Je sais qu’il y a une fonction pour vérifier si le joueur a un achievement, je crois que c’est quelque chose comme hasAchievementUnlocked dans le joueur.

                              EDIT: En 1.7, c’était player.funcxxx.hasAchievementUnlocked(achievement)

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

                                Ok merci je vais essayé  😉

                                Voila ma signature

                                1 réponse Dernière réponse Répondre Citer 0
                                • BrokenSwingB Hors-ligne
                                  BrokenSwing Moddeurs confirmés Rédacteurs
                                  dernière édition par

                                  
                                  if(e.achievement == AchievementList.mineWood && !((EntityPlayerMP)e.entityPlayer).func_147099_x().hasAchievementUnlocked(AchievementList.mineWood)) {
                                  e.entityPlayer.addExperience(200);
                                  }
                                  
                                  
                                  1 réponse Dernière réponse Répondre Citer 0
                                  • leo01418L Hors-ligne
                                    leo01418
                                    dernière édition par

                                    @SubscribeEvent
                                      public void onAchievement(AchievementEvent e)
                                      {

                                    if(e.achievement == AchievementList.mineWood)
                                          {

                                    System.out.println(“Test Achievement1”);
                                          if(e.achievement == AchievementList.mineWood && !((EntityPlayer)e.entityPlayer).func_147099_x().hasAchievementUnlocked(AchievementList.mineWood)) 
                                          {
                                        e.entityPlayer.addExperience(200);
                                            e.entityPlayer.inventory.addItemStackToInventory(new ItemStack(Items.apple));
                                        }

                                    }

                                    Le petit problème c’est que le func_147099_x() fait une error

                                    Voila ma signature

                                    1 réponse Dernière réponse Répondre Citer 0
                                    • BrokenSwingB Hors-ligne
                                      BrokenSwing Moddeurs confirmés Rédacteurs
                                      dernière édition par

                                      J’ai mis EntityPlayerMP pas EntityPlayer pour le cast

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

                                        Oui mais il veut le changer en entityPlayer

                                        Voila ma signature

                                        1 réponse Dernière réponse Répondre Citer 0
                                        • BrokenSwingB Hors-ligne
                                          BrokenSwing Moddeurs confirmés Rédacteurs
                                          dernière édition par

                                          Ça dit quoi ? Est-ce que tu a importé la classe ?

                                          
                                          import net.minecraft.entity.player.EntityPlayerMP;
                                          import net.minecraft.stats.AchievementList;
                                          import net.minecraftforge.event.entity.player.AchievementEvent;
                                          import cpw.mods.fml.common.eventhandler.SubscribeEvent;
                                          
                                          public class Event {
                                          
                                          @SubscribeEvent
                                          public void onEvent(AchievementEvent e) {
                                          if(e.achievement == AchievementList.mineWood && !((EntityPlayerMP)e.entityPlayer).func_147099_x().hasAchievementUnlocked(AchievementList.mineWood)) {
                                          e.entityPlayer.addExperience(200);
                                          }
                                          }
                                          }
                                          
                                          
                                          1 réponse Dernière réponse Répondre Citer 0
                                          • leo01418L Hors-ligne
                                            leo01418
                                            dernière édition par

                                            Sa marche merci beaucoup  😄 😄 😄

                                            Voila ma signature

                                            1 réponse Dernière réponse Répondre Citer 0
                                            • 1
                                            • 2
                                            • 1 / 2
                                            • Premier message
                                              Dernier message
                                            Design by Woryk
                                            ContactMentions Légales

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB