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

    Résolu Enchantement d'armure

    1.13.x
    1.13.2
    4
    20
    747
    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.
    • DailyCraft
      DailyCraft dernière édition par DailyCraft

      Bonjour,

      J’ai trouvé comment ajouter un enchantement à une pièce d’armure avec

      @Override
          public void onArmorTick(ItemStack stack, World world, EntityPlayer player)
          {
              player.addPotionEffect(new PotionEffect(Potion.getPotionById(16), 220));
          }
      

      mais je n’arrive pas trouvé comment ajouter en enchantement quand on a le full armure et nom juste une pièce d’armure, pouvez-vous m’aider svp

      Mes créations :

      Mod en cours de développement : Personal Robot (1.15.2)

      Datapacks : DailyCraft's Craft (beta)

      Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) de réputation.

      1 réponse Dernière réponse Répondre Citer 0
      • DailyCraft
        DailyCraft dernière édition par

        Ok beh c’est slot

        Mes créations :

        Mod en cours de développement : Personal Robot (1.15.2)

        Datapacks : DailyCraft's Craft (beta)

        Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) de réputation.

        1 réponse Dernière réponse Répondre Citer 0
        • K
          kraniax dernière édition par kraniax

          @DailyCraft a dit dans Enchantement d'armure :

          player.addPotionEffect(new PotionEffect(Potion.getPotionById(16), 220)); }

          Bonjour,

          Il faut écrire dans la méthode :

          
          if(this.armorType == 0){  //0 = casque, 1 = plastron, 2 = jambières, 3 = bottes
          //code
          }
          

          ♦ Développeur Java ♦

          DailyCraft 1 réponse Dernière réponse Répondre Citer 0
          • DailyCraft
            DailyCraft @kraniax dernière édition par

            Je viens d’essayer et ça me dit : Operator ‘==’ cannot be applied to ‘net.minecraft.inventory.EntityEquipementSlot’, ‘int’

            Mes créations :

            Mod en cours de développement : Personal Robot (1.15.2)

            Datapacks : DailyCraft's Craft (beta)

            Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) 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 robin4002

              if (armorType == EntityEquipmentSlot.HEAD) { // CHEST, LEGS, FEET
                          
              }
              

              Par contre cela le fonctionnera pas de faire des && entre chaque élement, car la pièce d’armure actuellement tické ne sera jamais les 4 en même temps.
              Donc il faut plutôt faire quelque chose comme ça :

                      if (armorType == EntityEquipmentSlot.HEAD && player.inventory.armorInventory.get(2).getItem() == ModItem.CHEST_PLATE && player.inventory.armorInventory.get(1).getItem() == ModItem.LEGS && player.inventory.armorInventory.get(0).getItem() == ModItem.FEET) {
                          
                      }
              

              En remplaçant ModItem par la classe où se trouve des items et le nom de la variable par ceux de chaque pièce d’armure.

              DailyCraft 1 réponse Dernière réponse Répondre Citer 0
              • DailyCraft
                DailyCraft @robin4002 dernière édition par

                Ok merci ça marche par contre tu as mis deux fois ModItem.FEET 😕 mais c’est pas grave

                Mes créations :

                Mod en cours de développement : Personal Robot (1.15.2)

                Datapacks : DailyCraft's Craft (beta)

                Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) 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

                  corrigé 😉

                  1 réponse Dernière réponse Répondre Citer 0
                  • DailyCraft
                    DailyCraft dernière édition par

                    C’est quoi en 1.14.3 ?

                    Mes créations :

                    Mod en cours de développement : Personal Robot (1.15.2)

                    Datapacks : DailyCraft's Craft (beta)

                    Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) de réputation.

                    1 réponse Dernière réponse Répondre Citer 0
                    • JustAnDev
                      JustAnDev dernière édition par

                      1.13 = 1.14+rename

                      s

                      DailyCraft 1 réponse Dernière réponse Répondre Citer 0
                      • DailyCraft
                        DailyCraft @JustAnDev dernière édition par

                        Comment tu fais pour que se soit rose ?

                        Mes créations :

                        Mod en cours de développement : Personal Robot (1.15.2)

                        Datapacks : DailyCraft's Craft (beta)

                        Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) de réputation.

                        1 réponse Dernière réponse Répondre Citer 0
                        • JustAnDev
                          JustAnDev dernière édition par

                          ```Ceci est un texte parlant du JS,ce language qui plagie le Java```
                          

                          s

                          1 réponse Dernière réponse Répondre Citer 0
                          • DailyCraft
                            DailyCraft dernière édition par DailyCraft

                            test

                            ah ouai

                            Mes créations :

                            Mod en cours de développement : Personal Robot (1.15.2)

                            Datapacks : DailyCraft's Craft (beta)

                            Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) de réputation.

                            1 réponse Dernière réponse Répondre Citer 0
                            • DailyCraft
                              DailyCraft dernière édition par

                              Je ne trouve pas re rename de armorType

                              Mes créations :

                              Mod en cours de développement : Personal Robot (1.15.2)

                              Datapacks : DailyCraft's Craft (beta)

                              Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) 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 robin4002

                                La variable a surement été renommé, regardes le code de la classe ItemArmor pour trouver le nouveau nom.

                                DailyCraft 1 réponse Dernière réponse Répondre Citer 0
                                • DailyCraft
                                  DailyCraft @robin4002 dernière édition par

                                  Maintenant elle s’appelle ArmorItem comme ItemPickaxe qui devient PickaxeItem ou ItemGroup qui devient GroupItem …

                                  Mes créations :

                                  Mod en cours de développement : Personal Robot (1.15.2)

                                  Datapacks : DailyCraft's Craft (beta)

                                  Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) 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

                                    En effet, donc regardes dans le code de la classe ArmorItem.

                                    1 réponse Dernière réponse Répondre Citer 0
                                    • DailyCraft
                                      DailyCraft dernière édition par

                                      Mais il y a rien qui y ressemble 😢 , sinon voila la class ArmorItem :

                                      public class ArmorItem extends Item {
                                          private static final UUID[] ARMOR_MODIFIERS = new UUID[]{UUID.fromString("845DB27C-C624-495F-8C9F-6020A9A58B6B"), UUID.fromString("D8499B04-0E66-4726-AB29-64469D734E0D"), UUID.fromString("9F3D476D-C118-4544-8365-64846904B48E"), UUID.fromString("2AD3F246-FEE1-4E67-B886-69FD380BB150")};
                                          public static final IDispenseItemBehavior DISPENSER_BEHAVIOR = new DefaultDispenseItemBehavior() {
                                              protected ItemStack dispenseStack(IBlockSource p_82487_1_, ItemStack p_82487_2_) {
                                                  ItemStack itemstack = ArmorItem.dispenseArmor(p_82487_1_, p_82487_2_);
                                                  return itemstack.isEmpty() ? super.dispenseStack(p_82487_1_, p_82487_2_) : itemstack;
                                              }
                                          };
                                          protected final EquipmentSlotType slot;
                                          protected final int damageReduceAmount;
                                          protected final float toughness;
                                          protected final IArmorMaterial material;
                                      
                                          public static ItemStack dispenseArmor(IBlockSource p_185082_0_, ItemStack p_185082_1_) {
                                              BlockPos blockpos = p_185082_0_.getBlockPos().offset((Direction)p_185082_0_.getBlockState().get(DispenserBlock.FACING));
                                              List<LivingEntity> list = p_185082_0_.getWorld().getEntitiesWithinAABB(LivingEntity.class, new AxisAlignedBB(blockpos), EntityPredicates.NOT_SPECTATING.and(new ArmoredMob(p_185082_1_)));
                                              if (list.isEmpty()) {
                                                  return ItemStack.EMPTY;
                                              } else {
                                                  LivingEntity livingentity = (LivingEntity)list.get(0);
                                                  EquipmentSlotType equipmentslottype = MobEntity.getSlotForItemStack(p_185082_1_);
                                                  ItemStack itemstack = p_185082_1_.split(1);
                                                  livingentity.setItemStackToSlot(equipmentslottype, itemstack);
                                                  if (livingentity instanceof MobEntity) {
                                                      ((MobEntity)livingentity).setDropChance(equipmentslottype, 2.0F);
                                                      ((MobEntity)livingentity).enablePersistence();
                                                  }
                                      
                                                  return p_185082_1_;
                                              }
                                          }
                                      
                                          public ArmorItem(IArmorMaterial p_i48534_1_, EquipmentSlotType p_i48534_2_, Properties p_i48534_3_) {
                                              super(p_i48534_3_.defaultMaxDamage(p_i48534_1_.getDurability(p_i48534_2_)));
                                              this.material = p_i48534_1_;
                                              this.slot = p_i48534_2_;
                                              this.damageReduceAmount = p_i48534_1_.getDamageReductionAmount(p_i48534_2_);
                                              this.toughness = p_i48534_1_.getToughness();
                                              DispenserBlock.registerDispenseBehavior(this, DISPENSER_BEHAVIOR);
                                          }
                                      
                                          public EquipmentSlotType getEquipmentSlot() {
                                              return this.slot;
                                          }
                                      
                                          public int getItemEnchantability() {
                                              return this.material.getEnchantability();
                                          }
                                      
                                          public IArmorMaterial getArmorMaterial() {
                                              return this.material;
                                          }
                                      
                                          public boolean getIsRepairable(ItemStack p_82789_1_, ItemStack p_82789_2_) {
                                              return this.material.getRepairMaterial().test(p_82789_2_) || super.getIsRepairable(p_82789_1_, p_82789_2_);
                                          }
                                      
                                          public ActionResult<ItemStack> onItemRightClick(World p_77659_1_, PlayerEntity p_77659_2_, Hand p_77659_3_) {
                                              ItemStack itemstack = p_77659_2_.getHeldItem(p_77659_3_);
                                              EquipmentSlotType equipmentslottype = MobEntity.getSlotForItemStack(itemstack);
                                              ItemStack itemstack1 = p_77659_2_.getItemStackFromSlot(equipmentslottype);
                                              if (itemstack1.isEmpty()) {
                                                  p_77659_2_.setItemStackToSlot(equipmentslottype, itemstack.copy());
                                                  itemstack.setCount(0);
                                                  return new ActionResult(ActionResultType.SUCCESS, itemstack);
                                              } else {
                                                  return new ActionResult(ActionResultType.FAIL, itemstack);
                                              }
                                          }
                                      
                                          public Multimap<String, AttributeModifier> getAttributeModifiers(EquipmentSlotType p_111205_1_) {
                                              Multimap<String, AttributeModifier> multimap = super.getAttributeModifiers(p_111205_1_);
                                              if (p_111205_1_ == this.slot) {
                                                  multimap.put(SharedMonsterAttributes.ARMOR.getName(), new AttributeModifier(ARMOR_MODIFIERS[p_111205_1_.getIndex()], "Armor modifier", (double)this.damageReduceAmount, Operation.ADDITION));
                                                  multimap.put(SharedMonsterAttributes.ARMOR_TOUGHNESS.getName(), new AttributeModifier(ARMOR_MODIFIERS[p_111205_1_.getIndex()], "Armor toughness", (double)this.toughness, Operation.ADDITION));
                                              }
                                      
                                              return multimap;
                                          }
                                      
                                          public int getDamageReduceAmount() {
                                              return this.damageReduceAmount;
                                          }
                                      
                                          public float getToughness() {
                                              return this.toughness;
                                          }
                                      }
                                      

                                      Mes créations :

                                      Mod en cours de développement : Personal Robot (1.15.2)

                                      Datapacks : DailyCraft's Craft (beta)

                                      Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) de réputation.

                                      1 réponse Dernière réponse Répondre Citer 0
                                      • JustAnDev
                                        JustAnDev dernière édition par

                                        Regarde la sourcedu code 1.13 et compare le avec la variable que tu cherche

                                        s

                                        1 réponse Dernière réponse Répondre Citer 0
                                        • DailyCraft
                                          DailyCraft dernière édition par

                                          Ok beh c’est slot

                                          Mes créations :

                                          Mod en cours de développement : Personal Robot (1.15.2)

                                          Datapacks : DailyCraft's Craft (beta)

                                          Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) 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

                                            Voila, comme quoi en cherchant un peu. Bravo ! ^^

                                            DailyCraft 1 réponse Dernière réponse Répondre Citer 0
                                            • DailyCraft
                                              DailyCraft @robin4002 dernière édition par

                                              Beh grace à @Daich_20, sinon c’étais une variantes qui rester la même donc fiile, même position en plus

                                              Mes créations :

                                              Mod en cours de développement : Personal Robot (1.15.2)

                                              Datapacks : DailyCraft's Craft (beta)

                                              Je suis un membre apprécié et joueur, j'ai déjà obtenu 2 point(s) de réputation.

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

                                              MINECRAFT FORGE FRANCE © 2018

                                              Powered by NodeBB