Résolu getCurrentArmor en 1.12.2
-
hey ! Je veux faire en sorte que mon armure me permette de fly mais pour cela ! Il faut que j’utilise la fonction getCurrentarmor(slotD’armure). malheureusment, je ne la trouve pas.
Quelqu’un pourrait me dire si elle a été enlevée ou remplacée par un équivalent ? merci ! -
Bonsoir, en effet cela n’éxiste pas, par contre tu pourra récupérer l’armure en récupérant d’abord l’inventaire du joueur, puis les slots en question !
ItemStack helmet = player.inventory.armorItemInSlot( 3 ); ItemStack chest = player.inventory.armorItemInSlot( 2 ); ItemStack leggings = player.inventory.armorItemInSlot( 1 ); ItemStack boots = player.inventory.armorItemInSlot( 0 );
-
Bonsoir
player.inventory.armorInventory.get(index)
-
Bonsoir, en effet cela n’éxiste pas, par contre tu pourra récupérer l’armure en récupérant d’abord l’inventaire du joueur, puis les slots en question !
ItemStack helmet = player.inventory.armorItemInSlot( 3 ); ItemStack chest = player.inventory.armorItemInSlot( 2 ); ItemStack leggings = player.inventory.armorItemInSlot( 1 ); ItemStack boots = player.inventory.armorItemInSlot( 0 );
-
Bonjour,
j’ai un problème, j’arrive à voler avec mon armure mais impossible de désactiver le fly quand elle n’est plus équipé, et je n’arrive pas à activer le fly seulement quand toute les pièces sont équipés. Voila mon code.package fr.arca.arcadia.items.armor; public class ArmorBase extends ItemArmor implements IHasModel { private int ticksExisted; public ArmorBase(String name, ArmorMaterial materialIn, int renderIndexIn, EntityEquipmentSlot equipmentSlotIn) { super(materialIn, renderIndexIn, equipmentSlotIn); setUnlocalizedName(name); setRegistryName(name); setCreativeTab(Arcadia.ArcadiaTab); ItemsMod.ITEMS.add(this); } @Override public void onArmorTick(World world, EntityPlayer player, ItemStack itemStack) { super.onArmorTick(world, player, itemStack); if(this.ticksExisted % 60 == 0) { ItemStack helmet = player.inventory.armorItemInSlot( 3 ); ItemStack chestplate = player.inventory.armorItemInSlot( 2 ); ItemStack leggings = player.inventory.armorItemInSlot( 1 ); ItemStack boots = player.inventory.armorItemInSlot( 0 ); if(boots != null && leggings != null && chestplate != null && helmet != null) { player.capabilities.allowFlying = true; } } } @Override public void registerModels() { Arcadia.proxy.registerItemRenderer(this, 0, "inventory"); } public void onUpdateEntity(PlayerCapabilities capabilities) { capabilities.allowFlying = true; } }
Merci de prendre le temps de me lire et de me répondre.