• 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

Résolu Enchantement d'armure

1.13.x
1.13.2
4
20
718
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 22 juin 2019, 15:31 22 juin 2019, 15:30

    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 28 juin 2019, 13:24

      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 22 juin 2019, 15:58 22 juin 2019, 15:57

        @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 22 juin 2019, 16:31 Répondre Citer 0
        • DailyCraft
          DailyCraft @kraniax dernière édition par 22 juin 2019, 16:31

          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 23 juin 2019, 20:06 23 juin 2019, 10:05

            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 23 juin 2019, 17:15 Répondre Citer 0
            • DailyCraft
              DailyCraft @robin4002 dernière édition par 23 juin 2019, 17:15

              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 23 juin 2019, 20:06

                corrigé 😉

                1 réponse Dernière réponse Répondre Citer 0
                • DailyCraft
                  DailyCraft dernière édition par 28 juin 2019, 09:29

                  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 28 juin 2019, 11:16

                    1.13 = 1.14+rename

                    s

                    DailyCraft 1 réponse Dernière réponse 28 juin 2019, 11:16 Répondre Citer 0
                    • DailyCraft
                      DailyCraft @JustAnDev dernière édition par 28 juin 2019, 11:16

                      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 28 juin 2019, 11:18

                        ```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 28 juin 2019, 11:19 28 juin 2019, 11:18

                          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 28 juin 2019, 11:47

                            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 28 juin 2019, 12:16 28 juin 2019, 12:16

                              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 28 juin 2019, 12:19 Répondre Citer 0
                              • DailyCraft
                                DailyCraft @robin4002 dernière édition par 28 juin 2019, 12:19

                                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 28 juin 2019, 12:22

                                  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 28 juin 2019, 13:17

                                    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 28 juin 2019, 13:21

                                      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 28 juin 2019, 13:24

                                        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 28 juin 2019, 20:07

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

                                          DailyCraft 1 réponse Dernière réponse 29 juin 2019, 07:30 Répondre Citer 0
                                          • DailyCraft
                                            DailyCraft @robin4002 dernière édition par 29 juin 2019, 07:30

                                            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
                                            20 sur 20
                                            • Premier message
                                              20/20
                                              Dernier message
                                            Design by Woryk
                                            Contact / Mentions Légales

                                            MINECRAFT FORGE FRANCE © 2018

                                            Powered by NodeBB