Feroov Posted April 28, 2023 Posted April 28, 2023 So I've created an entity that shoots projectiles, and everything works as intended, the problem is since my entity shoots really fast (Machinegun) obviously whoever is getting hit by the projectiles will constantly get knockback. Is there a way to decrease or completely remove knockback when the projectile entity hits another entity? Thank you in advance 😁 Quote
warjort Posted April 28, 2023 Posted April 28, 2023 There is a LivingKnockBackEvent where you can adjust the knockback strength and direction. But it doesn't tell you the DamageSource so you wouldn't be able to check it is your projectile. There is a LivingEntity.getLastDamageSource(), but if you look at the code for LivingEntity.hurt() it doesn't set that value until after the knockback() is calculated. Maybe you could still use it but only to stop knockback if the previous damage was from your projectile? i.e. the knockback would still occur for the first one. If you look at getLastDamageSource(), it removes that value after a certain amount of time though. An alternative would be to suggest a patch to Forge where that event makes the DamageSource available. Quote Boilerplate: If you don't post your logs/debug.log we can't help you. For curseforge you need to enable the forge debug.log in its minecraft settings. You should also post your crash report if you have one. If there is no error in the log file and you don't have a crash report then post the launcher_log.txt from the minecraft folder. Again for curseforge this will be in your curseforge/minecraft/Install Large files should be posted to a file sharing site like https://gist.github.com You should also read the support forum sticky post.
sFXprt Posted April 30, 2023 Posted April 30, 2023 On 4/27/2023 at 10:06 PM, Feroov said: So I've created an entity that shoots projectiles, and everything works as intended, the problem is since my entity shoots really fast (Machinegun) obviously whoever is getting hit by the projectiles will constantly get knockback. Is there a way to decrease or completely remove knockback when the projectile entity hits another entity? Thank you in advance 😁 One thing you could do is set a persistent data tag and check in LivingKnockbackEvent if that entity has that tag if so do whatever and remove that tag Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.