mirror of
https://github.com/BX-Team/DivineMC.git
synced 2026-01-06 15:41:52 +00:00
43 lines
2.7 KiB
Diff
43 lines
2.7 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: NONPLAYT <76615486+NONPLAYT@users.noreply.github.com>
|
|
Date: Sat, 18 Jan 2025 15:44:29 +0300
|
|
Subject: [PATCH] Snowball and Egg knockback
|
|
|
|
|
|
diff --git a/net/minecraft/world/entity/projectile/Snowball.java b/net/minecraft/world/entity/projectile/Snowball.java
|
|
index 1d399532c67c213c95c06837b0c7855384f1a25c..9e9afd77ba50c2ab06e97f1c80b1290fb8f91715 100644
|
|
--- a/net/minecraft/world/entity/projectile/Snowball.java
|
|
+++ b/net/minecraft/world/entity/projectile/Snowball.java
|
|
@@ -54,6 +54,12 @@ public class Snowball extends ThrowableItemProjectile {
|
|
Entity entity = result.getEntity();
|
|
int i = entity.level().purpurConfig.snowballDamage >= 0 ? entity.level().purpurConfig.snowballDamage : entity instanceof Blaze ? 3 : 0; // Purpur - Add configurable snowball damage
|
|
entity.hurt(this.damageSources().thrown(this, this.getOwner()), i);
|
|
+ // DivineMC start - Make snowball can knockback player
|
|
+ if (this.level().divinemcConfig.snowballCanKnockback && entity instanceof net.minecraft.server.level.ServerPlayer serverPlayer) {
|
|
+ entity.hurt(this.damageSources().thrown(this, this.getOwner()), 0.0000001F);
|
|
+ serverPlayer.knockback(0.4000000059604645D, this.getX() - entity.getX(), this.getZ() - entity.getZ());
|
|
+ }
|
|
+ // DivineMC end - Make snowball can knockback player
|
|
}
|
|
|
|
// Purpur start - options to extinguish fire blocks with snowballs - borrowed and modified code from ThrownPotion#onHitBlock and ThrownPotion#dowseFire
|
|
diff --git a/net/minecraft/world/entity/projectile/ThrownEgg.java b/net/minecraft/world/entity/projectile/ThrownEgg.java
|
|
index 76481c0e77fc3a2e4be8eeb9de8d1e6de5507c64..7165bad72f761a0a3b2168d6df5f154b4a82d74e 100644
|
|
--- a/net/minecraft/world/entity/projectile/ThrownEgg.java
|
|
+++ b/net/minecraft/world/entity/projectile/ThrownEgg.java
|
|
@@ -52,7 +52,14 @@ public class ThrownEgg extends ThrowableItemProjectile {
|
|
@Override
|
|
protected void onHitEntity(EntityHitResult result) {
|
|
super.onHitEntity(result);
|
|
+ net.minecraft.world.entity.Entity entity = result.getEntity(); // DivineMC - make egg can knockback player
|
|
result.getEntity().hurt(this.damageSources().thrown(this, this.getOwner()), 0.0F);
|
|
+ // DivineMC start - Make egg can knockback player
|
|
+ if (this.level().divinemcConfig.eggCanKnockback && entity instanceof net.minecraft.server.level.ServerPlayer serverPlayer) {
|
|
+ entity.hurt(this.damageSources().thrown(this, this.getOwner()), 0.0000001F);
|
|
+ serverPlayer.knockback(0.4000000059604645D, this.getX() - entity.getX(), this.getZ() - entity.getZ());
|
|
+ }
|
|
+ // DivineMC end - Make egg can knockback player
|
|
}
|
|
|
|
@Override
|