• Récent
  • Mots-clés
  • Populaire
  • Utilisateurs
  • Groupes
  • S'inscrire
  • Se connecter
  • S'inscrire
  • Se connecter
  • Recherche
  • Récent
  • Mots-clés
  • Populaire
  • Utilisateurs
  • Groupes

Créer une armure

Les items
1.7.x
39
247
60.9k
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.
  • BlackPanda
    BlackPanda dernière édition par 5 juin 2014, 17:27

    Merci de ta réponse rapide, mais peut-tu plutôt m’aider par rapport a ma classe “Armures” s’il te plait ?
    Je voudrais rajouter encore 4 autres armures avec des effets différents.

    La voici :

    package fr.blackpandagaming.dragonadventure.common;
    import net.minecraft.entity.Entity;
    import net.minecraft.entity.player.EntityPlayer;
    import net.minecraft.item.ItemArmor;
    import net.minecraft.item.ItemStack;
    import net.minecraft.potion.Potion;
    import net.minecraft.potion.PotionEffect;
    import net.minecraft.world.World;
    public class Armures extends ItemArmor
    {
    public Armures(ArmorMaterial material, int type)
    {
    super(material, 0, type);
    }
    //Armure en Dragonite blanche
    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";
    }
    return DragonAdventure.MODID + ":textures/models/armor/DragoniteBlanche_leyer_1.png";
    }
    public boolean getIsRepairable1(ItemStack input, ItemStack repair)
    {
    if(repair.getItem() == DragonAdventure.dragoniteBlanche || repair.getItem() == DragonAdventure.dragoniteBlanche)
    {
    return true;
    }
    return false;
    }
    public void onArmorTick1(World world, EntityPlayer player, ItemStack stack)
    {
    player.addPotionEffect(new PotionEffect(Potion.nightVision.id, 210, 2));
    }
    }
    1 réponse Dernière réponse Répondre Citer 0
    • Diangle
      Diangle dernière édition par 5 juin 2014, 17:28

      je ne comprend pas ajouter 4 autres ?

      bon edit:
      exemple pour ajouter d’autre armure avec d’autre effet tu doit faire cela :

      package fr.blackpandagaming.dragonadventure.common;
      import net.minecraft.entity.Entity;
      import net.minecraft.entity.player.EntityPlayer;
      import net.minecraft.item.ItemArmor;
      import net.minecraft.item.ItemStack;
      import net.minecraft.potion.Potion;
      import net.minecraft.potion.PotionEffect;
      import net.minecraft.world.World;
      public class Armures extends ItemArmor
      {
      private ItemArmor.ArmorMaterial material;
      public Armures(ItemArmor.ArmorMaterial material, int type)
      {
      super(material, 0, type);
      this.material = material;
      }
      //Armure en Dragonite blanche
      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";
      }
      return DragonAdventure.MODID + ":textures/models/armor/DragoniteBlanche_leyer_1.png";
      }
      public boolean getIsRepairable1(ItemStack input, ItemStack repair)
      {
      if(repair.getItem() == DragonAdventure.dragoniteBlanche || repair.getItem() == DragonAdventure.dragoniteBlanche)
      {
      return true;
      }
      return false;
      }
      public void onArmorTick1(World world, EntityPlayer player, ItemStack stack)
      {
      if(this.material == ClassePrincipale.nomDuMaterial)
      {
      player.addPotionEffect(new PotionEffect(Potion.nightVision.id, 210, 2));
      }
      if(this.material == ClassePrincipale.unAutreMaterial)
      {
      //de nouveau un effet
      }
      //tu recommence les méthode a chaque fois :p
      }
      }
      1 réponse Dernière réponse Répondre Citer 0
      • robin4002
        robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 5 juin 2014, 19:38

        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
        • Diangle
          Diangle dernière édition par 6 juin 2014, 04:55

          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
          • BlackPanda
            BlackPanda dernière édition par 6 juin 2014, 20:22

            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
            • Fine33
              Fine33 dernière édition par 8 juin 2014, 14:15

              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
              • Superloup10
                Superloup10 Modérateurs dernière édition par 8 juin 2014, 14:28

                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
                • Fine33
                  Fine33 dernière édition par 8 juin 2014, 14:29

                  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
                  • Superloup10
                    Superloup10 Modérateurs dernière édition par 8 juin 2014, 14:37

                    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
                    • Fine33
                      Fine33 dernière édition par 8 juin 2014, 14:41

                      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
                      • Superloup10
                        Superloup10 Modérateurs dernière édition par 8 juin 2014, 15:27

                        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
                        • robin4002
                          robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 8 juin 2014, 15:55

                          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
                          • Fine33
                            Fine33 dernière édition par 8 juin 2014, 16:34

                            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
                            • robin4002
                              robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 8 juin 2014, 17:51

                              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
                              • Vayper
                                Vayper dernière édition par 10 juin 2014, 13:45

                                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
                                • robin4002
                                  robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 10 juin 2014, 14:06

                                  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
                                  • Vayper
                                    Vayper dernière édition par 10 juin 2014, 14:19

                                    @‘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
                                    • robin4002
                                      robin4002 Moddeurs confirmés Rédacteurs Administrateurs dernière édition par 10 juin 2014, 14:48

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

                                      1 réponse Dernière réponse Répondre Citer 1
                                      • Vayper
                                        Vayper dernière édition par 10 juin 2014, 14:53

                                        @‘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
                                        • environ 9 jours
                                        • Squix
                                          Squix dernière édition par 19 juin 2014, 22:03

                                          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
                                          • 1
                                          • 2
                                          • 3
                                          • 4
                                          • 5
                                          • 12
                                          • 13
                                          • 2 / 13
                                          36 sur 247
                                          • Premier message
                                            36/247
                                            Dernier message
                                          Design by Woryk
                                          Contact / Mentions Légales

                                          MINECRAFT FORGE FRANCE © 2018

                                          Powered by NodeBB