Empêcher "coups de poing" et item qui ne fait pas mal
-
Pas possible. La seule chose que tu peux faire c’est annuler tous les dégâts qui fond un pv de dégâts venant des joueurs :
@SubscribeEvent public void onLivingHurt(LivingHurtEvent event) { if(event.source.getSourceOfDamage() instanceof EntityPlayer && event.ammount <= 1) { event.setCancel(true); } } -
J’ai mis ça comme je suis en 1.7.10 et ça ne marche pas :S
@SideOnly(Side.CLIENT) public void onRenderLabel(RenderLivingEvent.Specials.Pre event) { if(event.entity instanceof EntityPlayer) { event.setCanceled(true); } } -
Mon code fonctionne en 1.7.10 …
Ce que tu as mit permet de ne pas afficher le pseudo. Ce n’est pas la même chose … -
Ah oui merde vraiment désolé voici ma classe :
package fr.altiscraft.altiscraft.common; import cpw.mods.fml.common.eventhandler.SubscribeEvent; import net.minecraft.entity.player.EntityPlayer; import net.minecraftforge.event.entity.living.LivingHurtEvent; public class Events { @SubscribeEvent public void onLivingHurt(LivingHurtEvent event) { if(event.source.getSourceOfDamage() instanceof EntityPlayer && event.ammount <= 1) { event.setCanceled(true); } } } -
Tu as enregistré la classe d’event avec MinecraftForge.EVENT_BUS.register(new Events()); dans la classe principale ?
-
Robin maintenant ça “marche” les armures et les dégâts ne se font ressentir mais les joueurs deviennent encore rouge normal ? :S
-
Non ce n’est pas normal. Tu as toujours des problèmes étranges x)
Une fois l’event cancel le joueur est sensé prendre aucun dégâts et rien ne devrait être visible. -
Bas sinon je peux essayer d’enlever des plugins qui font des particules rouges autour du joueur mais je ne pense pas que ça vient de là…
-
Essaie avec le LivingAttackEvent, il doit être appelé avant le LivingHurt il me semble.
-
Toujours pas résolu je vais pas tarder à tester en multi.