Résolu Empêcher "coups de poing" et item qui ne fait pas mal
-
J’aimerais empêcher les joueurs de donner des coups avec leur main et tout item ne fesant pas plus de dégats que 0,5/10 comment faire je pensais passer par @Cancelable des events mais l’event Punsch n’existe pas :') Des idées ?
Sinon si on voit que ça donne un coup et ça ne fait pas de dégâts ça va mais je préfère qu’on ne puisse plus frapper tout court avec des items qui ne font aussi peu mal… (- ou = 0,5 de dégâts sur 10)
-
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.