PaperMC/patches/server/0998-Allow-trident-custom-damage.patch
2023-12-06 15:09:14 -05:00

45 lines
2.4 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Lulu13022002 <41980282+Lulu13022002@users.noreply.github.com>
Date: Tue, 12 Jul 2022 18:01:14 +0200
Subject: [PATCH] Allow trident custom damage
diff --git a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java
index 6272b0e1e332789b983a486ee25226e2a1c9fdda..42ebd91196ae420eee57f4380abc558555457163 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java
@@ -66,7 +66,7 @@ public abstract class AbstractArrow extends Projectile {
public AbstractArrow.Pickup pickup;
public int shakeTime;
public int life;
- private double baseDamage;
+ protected double baseDamage; // Paper - private -> protected
public int knockback;
public SoundEvent soundEvent;
@Nullable
diff --git a/src/main/java/net/minecraft/world/entity/projectile/ThrownTrident.java b/src/main/java/net/minecraft/world/entity/projectile/ThrownTrident.java
index cbe8593cecd84f1598649801bebcb46364044eef..01e8f6f36a17c484b825879c377f7d6cc08e1fda 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/ThrownTrident.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/ThrownTrident.java
@@ -34,10 +34,12 @@ public class ThrownTrident extends AbstractArrow {
public ThrownTrident(EntityType<? extends ThrownTrident> type, Level world) {
super(type, world, ThrownTrident.DEFAULT_ARROW_STACK);
+ this.baseDamage = net.minecraft.world.item.TridentItem.BASE_DAMAGE; // Paper
}
public ThrownTrident(Level world, LivingEntity owner, ItemStack stack) {
super(EntityType.TRIDENT, owner, world, stack);
+ this.baseDamage = net.minecraft.world.item.TridentItem.BASE_DAMAGE; // Paper
this.entityData.set(ThrownTrident.ID_LOYALTY, (byte) EnchantmentHelper.getLoyalty(stack));
this.entityData.set(ThrownTrident.ID_FOIL, stack.hasFoil());
}
@@ -121,7 +123,7 @@ public class ThrownTrident extends AbstractArrow {
@Override
protected void onHitEntity(EntityHitResult entityHitResult) {
Entity entity = entityHitResult.getEntity();
- float f = 8.0F;
+ float f = (float) this.baseDamage; // Paper
if (entity instanceof LivingEntity) {
LivingEntity entityliving = (LivingEntity) entity;