Créer une armure
-
Oh nice, c’est parfait
Mais c’est ou celui qui se fait lorsqu’on équipe des items ?
Mais sinon merci, j’enregistre cette page, sa va beaucoup servir -
Oh nice, c’est parfait
Mais c’est ou celui qui se fait lorsqu’on équipe des items ?
Mais sinon merci, j’enregistre cette page, sa va beaucoup servirest-ce que
PlayerUseItemEvent.Tick => Déclenché à chaque tick où le joueur utilise un item
pourrais fonctionner ? -
Pour que ça se déclenche à chaque tick faut utiliser :
TickEvent.PlayerTickEvent -
sa met que des erreur, je le place ou ?
voici mon code
package fairytail.common;import net.minecraft.item.ItemStack;
import net.minecraft.potion.Potion;
import net.minecraft.potion.PotionEffect;
import net.minecraftforge.event.entity.EntityEvent;
import net.minecraftforge.event.entity.living.LivingFallEvent;
import net.minecraftforge.event.entity.living.LivingHurtEvent;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;public class LivingEventHandler
{
@SubscribeEvent
public void entityLiving(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() == ModFairytail.bootsacier && leggings != null && leggings.getItem() == ModFairytail.leggingsacier && chestPlate != null && chestPlate.getItem() == ModFairytail.chestPlateacier && helmet != null && helmet.getItem() == ModFairytail.helmetacier)
{
event.entityLiving.addPotionEffect(new PotionEffect(Potion.resistance.id, 20, 0));
}
}@SubscribeEvent
public void onLivingFall(LivingFallEvent event)
{}
} -
à la place de LivingHurtEvent.
Il faudra aussi enregistrer la classe avec FMLCommonHandler.intance().bus().register(new LivingEventHandler()); car c’est un event fml. -
comment je l’enregistre avec FML, je l’importe ?
-
Tu prends un tajine et tu mets ton couscous dedans.
Nan je rigole apprends le java, et apprends à lire car Robin la marqué au dessus
Envoyé de mon SM-G920F en utilisant Tapatalk
-
package fairytail.common;
import net.minecraft.item.ItemStack;
import net.minecraft.potion.Potion;
import net.minecraft.potion.PotionEffect;
import net.minecraftforge.event.entity.EntityEvent;
import net.minecraftforge.event.entity.living.LivingFallEvent;
import net.minecraftforge.event.entity.living.LivingHurtEvent;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;public class LivingEventHandler
{
@SubscribeEvent
public void TickEvent.PlayerTickEvent(TickEvent.PlayerTickEvent 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() == ModFairytail.bootsacier && leggings != null && leggings.getItem() == ModFairytail.leggingsacier && chestPlate != null && chestPlate.getItem() == ModFairytail.chestPlateacier && helmet != null && helmet.getItem() == ModFairytail.helmetacier)
{
event.entityLiving.addPotionEffect(new PotionEffect(Potion.resistance.id, 20, 0));
}
}@SubscribeEvent
public void onLivingFall(LivingFallEvent event)
{}
}
j’ai plein d’erreur
et pour ce qui est d’ienregistrer la classe avec j’ai pas compris se qu’il faut faire (j’ai rien dit, c’est bon x) ) -
public void TickEvent.PlayerTickEvent(TickEvent.PlayerTickEvent event)
Un nom de fonction ne doit pas contenir un point et commence par une minuscule :
public void onPlayerTick(TickEvent.PlayerTickEvent event)et il faut mettre cette ligne :
FMLCommonHandler.intance().bus().register(new LivingEventHandler());
dans la fonction init de ta classe principale. -
@SubscribeEvent
public void onPlayerTick(TickEvent.PlayerTickEvent 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() == ModFairytail.bootsacier && leggings != null && leggings.getItem() == ModFairytail.leggingsacier && chestPlate != null && chestPlate.getItem() == ModFairytail.chestPlateacier && helmet != null && helmet.getItem() == ModFairytail.helmetacier)
{
event.entityLiving.addPotionEffect(new PotionEffect(Potion.resistance.id, 20, 0));
}
}@SubscribeEvent
public void onLivingFall(LivingFallEvent event)
{}
}c’est les entityLiving maintenant qui sont en rouge pourquoi j’ai pas apris le java
-
Bah c’est pas trop tard pour apprendre : https://openclassrooms.com/courses/apprenez-a-programmer-en-java
Marque ```java
event. -
je sais pas comment vous remerciez pour avoir pris le temps de me répondre mais tout fonctionne, merci beaucoup tout le monde
-
oups, une derniere chose :
if(boots != null && boots.getItem() == ModFairytail.bootsrubis && leggings != null && leggings.getItem() == ModFairytail.leggingsrubis && chestPlate != null && chestPlate.getItem() == ModFairytail.chestPlaterubis && helmet != null && helmet.getItem() == ModFairytail.helmetrubis)
{
event.player.addPotionEffect(new PotionEffect(Potion.field_76434_w.id, 20, 4));
}
les coeur reste vide
field_76434_w = healthboost -
Les coeurs en plus apparaissent ?
Envoyé de mon SM-G920F en utilisant Tapatalk
-
oui, mais la 2eme barre de coeur reste vide car l’effet est redonner a chaque ticks
-
On va se calmer direct, lis les règles du forum, ça fait même pas une heure que tu as posté le message !
En l’occurrence je peux pas beaucoup me pencher sur le sujet car je ne suis pas chez moi, mais je te le dis tout de suite certains sujets peuvent prendre plus de temps moi des fois j’ai attendu 2 jours pour avoir une réponse, et si ça se trouve quelqun est en train d’essayer de son côté pour savoir ce qui ne va pas donc attends un peuEnvoyé de mon SM-G920F en utilisant Tapatalk
-
Il y avait ecrit depuis plus d’une heure sur mon ancien message donc si cela faisait plus d’une heure.
Mais je ne faisait pas le up pour etre méchant tu sais.
De plus il y avait un ? après le up car étant donner que c’est la première fois que j’en mets, c’était une question plus qu’autre chose mais si cela te mets dans tant d’etat ne t’inquiete pas, je n’en remetrais pas ^^ (disons plutot que je pensais pas que quelqu’un réagirais comme sa ) -
Règlement du forum : 24 entre chaque post.
On a aussi une vie et nos propres projets, on ne passe pas notre temps à faire F5 sur le forum … -
Bonjour,
D’abord merci pour les tutos de qualités
Ensuite j’ai un petit problème, j’aimerais pouvoir réparé mon armure avec un bloc de Minecraft en l’occurence du bois :public boolean getIsRepairable(ItemStack input, ItemStack repair) { if (input.getItem() == this && repair.getItem() == Blocks.log) { return true; } return false; }
Mais ça ne marche pas puisque repair et Blocks.log ne sont pas du même type, comment faire ?
Merci de votre aide ! -
repair.getItem() == Item.getItemFromBlock(Blocks.log)
C’est tout simple