2022-11-10 04:05:58 +01:00
|
|
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
|
|
From: Owen1212055 <23108066+Owen1212055@users.noreply.github.com>
|
|
|
|
Date: Sun, 18 Sep 2022 13:10:18 -0400
|
|
|
|
Subject: [PATCH] Add PrePlayerAttackEntityEvent
|
|
|
|
|
|
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
2023-02-07 16:55:53 +01:00
|
|
|
index 9f217694da600166cadf72f09266735891b7cd03..9db2a97aca111862caec47220d5f13f7e5013fc7 100644
|
2022-11-10 04:05:58 +01:00
|
|
|
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
|
|
|
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
2022-12-07 23:05:32 +01:00
|
|
|
@@ -1233,8 +1233,17 @@ public abstract class Player extends LivingEntity {
|
2022-11-10 04:05:58 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
public void attack(Entity target) {
|
|
|
|
- if (target.isAttackable()) {
|
|
|
|
- if (!target.skipAttackInteraction(this)) {
|
|
|
|
+ // Paper start - PlayerAttackEntityEvent
|
|
|
|
+ boolean willAttack = target.isAttackable() && !target.skipAttackInteraction(this); // Vanilla logic
|
|
|
|
+ io.papermc.paper.event.player.PrePlayerAttackEntityEvent playerAttackEntityEvent = new io.papermc.paper.event.player.PrePlayerAttackEntityEvent(
|
|
|
|
+ (org.bukkit.entity.Player) this.getBukkitEntity(),
|
|
|
|
+ target.getBukkitEntity(),
|
|
|
|
+ willAttack
|
|
|
|
+ );
|
|
|
|
+
|
|
|
|
+ if (playerAttackEntityEvent.callEvent() && willAttack) { // Logic moved to willAttack local variable.
|
|
|
|
+ {
|
|
|
|
+ // Paper end
|
|
|
|
float f = (float) this.getAttributeValue(Attributes.ATTACK_DAMAGE);
|
|
|
|
float f1;
|
|
|
|
|