Créer une armure
-
Merci bien de votre réponse
-
Bonsoir j’ai éssayé d’appliquer un effet de potion sur mes armures mais il ne fonctionne pas et je ne comprends pas pourquoi pouvez vous m’aider s’il vous plait ?
Voici la classe de mon armure :package com.phoenixarena.phoenix.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 ItemAdamantiumArmor extends ItemArmor { public ItemAdamantiumArmor(ArmorMaterial material, int type) { super(material ,0 ,type); } public String getArmorTexture(ItemStack stack, Entity entity, int slot, String type) { if(stack.getItem()== Phoenix.adamantiumLeggings) { return Phoenix.MODID + ":textures/models/armor/adamantium_layer_2.png"; } return Phoenix.MODID + ":textures/models/armor/adamantium_layer_1.png"; } //Reparation public boolean getIsRepairable(ItemStack input, ItemStack repair) { if(repair.getItem() == Phoenix.adamantiumPowder) { return true; } return false; } //EFFET SPECIAL : Vitesse public void onArmorTick(World world, EntityPlayer player, ItemStack stack) { player.addPotionEffect(new PotionEffect(Potion.moveSpeed.id, 20, 0)); } }Merci d’avance

-
Tu es en quel version ? 1.7 ou 1.8 ?
-
Ajoute @Override au dessus de la fonction onArmorTick. Il t’indique quoi ?
-
salut je voudrai savoir quel est la condition a mettre pour dire a mon armure que les effet doit être actif quand mon set d’armure est complète. Merci d’avance ^^
package CrystalCombats; import CrystalTools.CrystalTool; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.EnumRarity; 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 ItemGreenCrystalArmor extends ItemArmor { public ItemGreenCrystalArmor(ArmorMaterial enumArmorMaterial, int slot, int layer) { super(enumArmorMaterial, slot, layer); } @SideOnly(Side.CLIENT) @Override public EnumRarity getRarity(ItemStack stack) { return EnumRarity.rare; } @Override public String getArmorTexture(ItemStack stack, Entity entity, int slot, String type) { if(stack.getItem() == CrystalCombat.greenCrystalHelmet || stack.getItem() == CrystalCombat.greenCrystalChestPlate || stack.getItem() == CrystalCombat.greenCrystalBoots) return "minecraft:textures/models/armor/greencrystal_layer_1.png"; else if(stack.getItem() == CrystalCombat.greenCrystalLeggings) return "minecraft:textures/models/armor/greencrystal_layer_2.png"; else return null; } public void onArmorTick(World world, EntityPlayer player, ItemStack stack) { player.addPotionEffect(new PotionEffect(Potion.waterBreathing.id, 20, 0)); player.addPotionEffect(new PotionEffect(Potion.invisibility.id, 20, 0)); player.addPotionEffect(new PotionEffect(Potion.nightVision.id, 20, 0)); } } -
Bonjour, tous d’abord excellent tutoriel
mais j’aurais une question comment peut t’on faire pour quand on prend des dégât de chute l’armure perdent en durabilité car contre des mobs j’en perd mais pas quand je tombe de hautMerci d’avance, TheAzylium
-
@‘TheAzylium’:
Bonjour, tous d’abord excellent tutoriel
mais j’aurais une question comment peut t’on faire pour quand on prend des dégât de chute l’armure perdent en durabilité car contre des mobs j’en perd mais pas quand je tombe de hautMerci d’avance, TheAzylium
Ce calcul est fait lors du calcul d’armure, dans la logique de minecraft, c’est les bottes qui prennent les dégâts. Pour contrer ça tu peux utiliser le livingFallEvent ou le LivingHurtEvent dans lequel tu baisse la durabilité manuellement (je me rappelle plus de la fonction à utiliser)
-
@‘SCAREX’:
@‘TheAzylium’:
Bonjour, tous d’abord excellent tutoriel
mais j’aurais une question comment peut t’on faire pour quand on prend des dégât de chute l’armure perdent en durabilité car contre des mobs j’en perd mais pas quand je tombe de hautMerci d’avance, TheAzylium
Ce calcul est fait lors du calcul d’armure, dans la logique de minecraft, c’est les bottes qui prennent les dégâts. Pour contrer ça tu peux utiliser le livingFallEvent ou le LivingHurtEvent dans lequel tu baisse la durabilité manuellement (je me rappelle plus de la fonction à utiliser)
Merci j’ai enfin réussi j’avais oublier la classe LivingEventHandler ^^
-
bonjours, j’ai fait le tuto mais mes armures ne sont pas craftable, ous pouvez me dire comment les rendres craftable x) ?
-
En ajoutant le craft ?
Envoyé de mon SM-G920F en utilisant Tapatalk
-
oui mais quand je fais
GameRegistry.addRecipe(new ItemStack(acier, 1), new Object[]{
" A ", “AAA”, " A ", ‘A’, new ItemStack(Items.iron_ingot, 1, 1),
});
sa marche pas -
la c’est pour le craft de l’acier ( composant de l’armure)
-
Ton armure s’appelle acier ?!
Tu ajoutes un lingot avec un metadata aussiEnvoyé de mon SM-G920F en utilisant Tapatalk
-
mais meme pour creer un craft a un item sa ne marche pas, je ne peux pas le crafter en jeu
-
Où est la ligne de code ?
Envoyé de mon SM-G920F en utilisant Tapatalk
-
[//code]
package fairytail.common;import net.minecraft.entity.Entity;
import net.minecraft.item.ItemArmor;
import net.minecraft.item.ItemStack;public class ItemArmorAcier extends ItemArmor
{
public ItemArmorAcier(ArmorMaterial material, int type)
{
super(material, 0, type);
}
public String getArmorTexture(ItemStack stack, Entity entity, int slot, String type)
{
if(slot == 2)
{
return ModFairytail.MODID + “:textures/models/armor/acier_layer_2.png”;
}
return ModFairytail.MODID + “:textures/models/armor/acier_layer_1.png”;
}
public boolean getIsRepairable(ItemStack input, ItemStack repair)
{
if(repair.getItem() == ModFairytail.acier)
{
return true;
}
return false;
}
}les crafts ne sont pas definie la et je ne sais pas comment leur mettre leurs craft
-
Il faut mettre la ligne de code dans le init ou le postinit
Envoyé de mon SM-G920F en utilisant Tapatalk
-
acier = new Acier().setUnlocalizedName(“acier”).setTextureName(ModFairytail.MODID + “:acier”).setCreativeTab(CreativeTabs.tabMaterials);
GameRegistry.registerItem(acier, “acier”);
GameRegistry.addRecipe(new ItemStack(acier, 1), new Object[]{
" A ", “AAA”, " A ", ‘A’, new ItemStack(Items.iron_ingot, 1, 1),
});
sa marche pas non plus
-
Salut, envoies ta classe principale en entier.
-
Je vais essayer de reformuler se que je veux dire,
Robin, dans ton tuto (qui est tres bien fait et très clair) il manque un passage pour intégrer leur craft aux armures.
tu peux me dire comment faire ?