MFF

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

    Créer une armure

    Planifier Épinglé Verrouillé Déplacé Les items
    1.7.x
    247 Messages 39 Publieurs 73.5k Vues 9 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.
    • robin4002R Hors-ligne
      robin4002 Moddeurs confirmés Rédacteurs Administrateurs
      dernière édition par

      Heu ?
      Déjà si tu mets des 1 à la fin de des fonctions ça ne peut pas fonctionner.
      Il faut faire comme ça :

      
      public String getArmorTexture(ItemStack stack, Entity entity, int slot, String type)
      {
      if(stack.getItem() == DragonAdventure.pentalonDragoniteBlanche)
      {
      return DragonAdventure.MODID + ":textures/models/armor/DragoniteBlanche_leyer_2.png";
      }
      else if(stack.getItem() == DragonAdventure.casqueDragoniteBlanche || stack.getItem() == DragonAdventure.plastronDragoniteBlanche || stack.getItem() == DragonAdventure.bottesDragoniteBlanche)
      {
      return DragonAdventure.MODID + ":textures/models/armor/DragoniteBlanche_leyer_1.png";
      }
      else if(stack.getItem() == DragonAdventure.pentalon d une autre armure)
      {
      return DragonAdventure.MODID + ":textures/models/armor/autre armure_layer_2.png";
      }
      else if(stack.getItem() etc …
      }
      
      public boolean getIsRepairable(ItemStack input, ItemStack repair)
      {
      if((input.getItem() == DragonAdventure.casqueDragoniteBlanche || input.getItem() == DragonAdventure.plastronDragoniteBlanche || input.getItem() == DragonAdventure.pentalonDragoniteBlanche || input.getItem() == DragonAdventure.bottesDragoniteBlanche) repair.getItem() == DragonAdventure.dragoniteBlanche)
      {
      return true;
      }
      else if(même chose avec les autres armures et le matériel de réparation qui va avec)
      {
      return true;
      }
      etc ...
      return false;
      }
      
      public void onArmorTick(World world, EntityPlayer player, ItemStack stack)
      {
      if(this == DragonAdventure.casqueDragoniteBlanche)
      {
      player.addPotionEffect(new PotionEffect(Potion.nightVision.id, 210, 2));
      }
      else if(condition avec une autre armure)
      {
      //autre code
      }
      }
      }
      
      1 réponse Dernière réponse Répondre Citer 0
      • DiangleD Hors-ligne
        Diangle
        dernière édition par

        merci, robin j’avais pas vue :D,
        et là je pense que ton problème est résolue ^^.

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

          Merci bien pour toutes ces explications mais si j’ai eu beaucoup de mal a les comprendre… ^^
          C’est cool de votre part !

          Cordialement.

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

            Bonjour ! Peut-on faire en sorte qu’une armure protège plus d’un mob qu’un autre ?

            Mes mods :

            Agriculcraft

            #L'âge ne fait pas le mod.(L'âge ne fait pas le mod.)

            1 réponse Dernière réponse Répondre Citer 0
            • Superloup10S Hors-ligne
              Superloup10 Modérateurs
              dernière édition par

              Oui, on peut.

              Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

              Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

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

                Comment ? ^^

                Mes mods :

                Agriculcraft

                #L'âge ne fait pas le mod.(L'âge ne fait pas le mod.)

                1 réponse Dernière réponse Répondre Citer 0
                • Superloup10S Hors-ligne
                  Superloup10 Modérateurs
                  dernière édition par

                  Dans la méthode onArmorTick, tu check si l’entity qui t’attaque correspond au mob en question, si c’est le cas, tu augmentes la résistance de ton armure.

                  Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

                  Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

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

                    En gros, c’est un

                    if onEntityAttack = Entity.Zombie
                    {
                    Modmain.Armure = ArmorResistance + 5F
                    }
                    ``` ?

                    Mes mods :

                    Agriculcraft

                    #L'âge ne fait pas le mod.(L'âge ne fait pas le mod.)

                    1 réponse Dernière réponse Répondre Citer 0
                    • Superloup10S Hors-ligne
                      Superloup10 Modérateurs
                      dernière édition par

                      Un truc comme cela, oui.

                      Si vous souhaitez me faire un don, il vous suffit de cliquer sur le bouton situé en dessous.

                      Je suis un membre apprécié et joueur, j'ai déjà obtenu 17 points de réputation.

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

                        Je dirai plutôt, lorsqu’une entité est attaqué (LivingHurtEvent) si la source des dégâts vient de l’entité voulu et que l’entity attaqué porte l’armure, tu réduis les dégâts.

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

                          Et pour faire en sorte qu’on voie une forme comme quand on met une citrouille sur la tête, il faut avoir la texture de la forme et piquer un bout de code de la citrouille ? Si c’est ça, je vois pas quel bout de code c’est ! 😞

                          Mes mods :

                          Agriculcraft

                          #L'âge ne fait pas le mod.(L'âge ne fait pas le mod.)

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

                            Non, faut le faire depuis un event : https://github.com/FFMT/nanotech_mod/blob/master/common/fr/mcnanotech/kevin_68/nanotechmod/main/event/RenderEvent.java#L31-L67

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

                              Salut à tous,
                              j’aimerais que quand le personnage porte toute l’armure et qu’il est frappé par un autre joueur, cet autre joueur soit téléporté entre 5 et 10 blocs (X et Y) plus loin. Le problème est que je ne sais pas comment récupérer les coordonnées du joueur attaquant et je ne sais pas comment lui assigner de nouvelles coordonnées. Pour l’instant j’ai fais ca :

                              @SubscribeEvent
                              public void onLivingHurt(LivingHurtEvent event)
                              {
                              ItemStack boots = event.entityLiving.getEquipmentInSlot(1);
                              ItemStack leggings = event.entityLiving.getEquipmentInSlot(2);
                              ItemStack chestPlate = event.entityLiving.getEquipmentInSlot(3);
                              ItemStack helmet = event.entityLiving.getEquipmentInSlot(4);
                              
                              if(boots != null && boots.getItem() == MorePowerCraft.mysticBoots &&
                              leggings != null && leggings.getItem() == MorePowerCraft.mysticLegs &&
                              chestPlate != null && chestPlate.getItem() == MorePowerCraft.mysticBody &&
                              helmet != null && helmet.getItem() == MorePowerCraft.mysticHelmet)
                              {
                              if(event.source.getEntity() != null && event.source.getEntity() instanceof EntityPlayerMP)
                              {
                              // Je ne sais pas quoi mettre…
                              }
                              }
                              }
                              

                              Merci d’avance :rolleyes:

                              PS : Quelle est la différence entre EntityPlayer, EntityPlayerMP et EntityPlayerSP ?

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

                                EntityPlayer -> Un joueur, que ce soit côté client ou serveur
                                EntityPlayerMP -> classe extends EntityPlayer, le joueur côté serveur, permet d’accéder à des fonctions disponible que côté serveur. Mais ducoup ça fonctionne que côté serveur.
                                EntityPlayerSP -> Même chose mais pour le client.

                                Pour le // Je ne sais pas quoi mettre… :

                                int x = (int)((event.source.getEntity().posX + event.source.getEntity().worldObj.rand.nextInt(5) + 5) * Math.pow(-1, (double)rand.nextInt(1));
                                int z = (int)((event.source.getEntity().posZ + event.source.getEntity().worldObj.rand.nextInt(5) + 5) * Math.pow(-1, (double)rand.nextInt(1));
                                int y = (int)(event.source.getEntity().posY);
                                while(!event.source.getEntity().worldObj.isAirBlock(x, y, z)
                                {
                                y ++;
                                }
                                event.source.getEntity().setPositionAndUpdate(x, y, z);
                                

                                Code fait à la main, j’ai pas vérifier, tu me dira si c’est bon ou pas.

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

                                  @‘robin4002’:

                                  EntityPlayer -> Un joueur, que ce soit côté client ou serveur
                                  EntityPlayerMP -> classe extends EntityPlayer, le joueur côté serveur, permet d’accéder à des fonctions disponible que côté serveur. Mais ducoup ça fonctionne que côté serveur.
                                  EntityPlayerSP -> Même chose mais pour le client.

                                  Pour le // Je ne sais pas quoi mettre… :

                                  int x = (int)((event.source.getEntity().posX + event.source.getEntity().worldObj.rand.nextInt(5) + 5) * Math.pow(-1, (double)rand.nextInt(1));
                                  int z = (int)((event.source.getEntity().posZ + event.source.getEntity().worldObj.rand.nextInt(5) + 5) * Math.pow(-1, (double)rand.nextInt(1));
                                  int y = (int)(event.source.getEntity().posY);
                                  while(!event.source.getEntity().worldObj.isAirBlock(x, y, z)
                                  {
                                  y ++;
                                  }
                                  event.source.getEntity().setPositionAndUpdate(x, y, z);
                                  

                                  Code fait à la main, j’ai pas vérifier, tu me dira si c’est bon ou pas.

                                  Merci pour ta réponse rapide 🙂

                                  J’ai une erreur “rand cannot be resolved” ici :

                                  Autre petit problème :

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

                                    Remplace rand par event.source.getEntity().worldObj.rand et setPositionAndUpdate par setPosition.

                                    1 réponse Dernière réponse Répondre Citer 1
                                    • VayperV Hors-ligne
                                      Vayper
                                      dernière édition par

                                      @‘robin4002’:

                                      Remplace rand par event.source.getEntity().worldObj.rand et setPositionAndUpdate par setPosition.

                                      Ca marche nickel !
                                      Merci beaucoup 😉

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

                                        Salut,

                                        Pour ceux qui auraient besoin d’aide sur les layers d’armures, il y a ce super lien (en anglais)

                                        System.crash(); //Petite instruction marrante  :D

                                        Développeur de : RemoveHUDbut…

                                        1 réponse Dernière réponse Répondre Citer 1
                                        • A Hors-ligne
                                          Arektor
                                          dernière édition par

                                          Pour info, si vous modifiez la vitesse d’un joueur (en tout cas pour moi) et que ce dernier vole (par exemple en créa), ça vous envoie à panplume, du coup il faut ajouter une condition pour savoir si le joueur est au sol ou non.

                                          
                                          if(this.armorType == 2 && player.onGround)
                                          
                                          
                                          1 réponse Dernière réponse Répondre Citer 1
                                          • A Hors-ligne
                                            anguelwyvern
                                            dernière édition par

                                            Bonjour de mon coté j’ai un problème de texture, j’ai appelez mister isador à la rescousse mais même ce dernier n’as pas trouvez le problème, je peux lancez le jeux (sa crash pas exploit lol)

                                            je peux équipez la chose, mais aucune texturedonc je me tourne vers vous (on ce tourne car isador est avec moi sur le coup ^^)

                                            voila la chose en détail

                                            public static Item helmetMK1, bodyMK1, legMK1, bootsMK1;
                                            
                                            helmetMK1 = new helmetMK1(armorTuto, 0).setUnlocalizedName("helmetTuto").setTextureName(c_drone + ":Mk_I.1.png");
                                            bodyMK1 = new bodyMK1(armorTuto, 1).setUnlocalizedName("chestPlateTuto").setTextureName(c_drone + ":Mk_I.1.png");
                                            legMK1 = new legMK1(armorTuto, 2).setUnlocalizedName("leggingsTuto").setTextureName(c_drone + ":Mk_I.2.png");
                                            bootsMK1 = new bootsMK1(armorTuto, 3).setUnlocalizedName("bootsTuto").setTextureName(c_drone + ":Mk_I.2.png");
                                            
                                            GameRegistry.registerItem(helmetMK1, "item_tuto_helmet");
                                            GameRegistry.registerItem(bodyMK1, "item_tuto_chestplate");
                                            GameRegistry.registerItem(legMK1, "item_tuto_leggings");
                                            GameRegistry.registerItem(bootsMK1, "item_tuto_boots");
                                            
                                            package fr.celestiafrance.c_drone.common;
                                            
                                            import net.minecraft.entity.Entity;
                                            import net.minecraft.item.ItemArmor;
                                            import net.minecraft.item.ItemStack;
                                            
                                            public class helmetMK1 extends ItemArmor {
                                            
                                            public helmetMK1(ArmorMaterial material, int type)
                                            
                                            {
                                            super(material, 0, type);
                                            
                                            }
                                            
                                            public String getArmorTexture(ItemStack stack, Entity entity, int slot,
                                            String type) {
                                            if (slot == 0) {
                                            return c_drone.c_drone + ":textures/armor/Mk_I.png";
                                            }
                                            return c_drone.c_drone + ":textures/armor/Mk_I2.png";
                                            }
                                            }
                                            
                                            

                                            ou est ma connerie …

                                            1 réponse Dernière réponse Répondre Citer 0
                                            • 1
                                            • 2
                                            • 6
                                            • 7
                                            • 8
                                            • 9
                                            • 10
                                            • 11
                                            • 12
                                            • 13
                                            • 8 / 13
                                            • Premier message
                                              Dernier message
                                            Design by Woryk
                                            ContactMentions Légales

                                            MINECRAFT FORGE FRANCE © 2024

                                            Powered by NodeBB