mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-11 11:50:06 +01:00
96d5e6ca48
Currently includes generated key holder classes for types used in the Registry Modification API
80 lines
3.7 KiB
Diff
80 lines
3.7 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Shane Freeder <theboyetronic@gmail.com>
|
|
Date: Tue, 24 Dec 2019 00:35:31 +0000
|
|
Subject: [PATCH] PlayerDeathEvent#shouldDropExperience
|
|
|
|
|
|
diff --git a/src/main/java/org/bukkit/event/entity/PlayerDeathEvent.java b/src/main/java/org/bukkit/event/entity/PlayerDeathEvent.java
|
|
index ed7ede83507c052e05afffea78600b16439590dd..c7138d79a572a525c70b51b7c79d2c5dfb18f25c 100644
|
|
--- a/src/main/java/org/bukkit/event/entity/PlayerDeathEvent.java
|
|
+++ b/src/main/java/org/bukkit/event/entity/PlayerDeathEvent.java
|
|
@@ -1,6 +1,8 @@
|
|
package org.bukkit.event.entity;
|
|
|
|
import java.util.List;
|
|
+
|
|
+import org.bukkit.GameMode;
|
|
import org.bukkit.entity.Player;
|
|
import org.bukkit.inventory.ItemStack;
|
|
import org.jetbrains.annotations.NotNull;
|
|
@@ -18,6 +20,8 @@ public class PlayerDeathEvent extends EntityDeathEvent {
|
|
private boolean keepLevel = false;
|
|
private boolean keepInventory = false;
|
|
// Paper start
|
|
+ private boolean doExpDrop;
|
|
+
|
|
public PlayerDeathEvent(@NotNull final Player player, @NotNull final List<ItemStack> drops, final int droppedExp, @Nullable final net.kyori.adventure.text.Component adventure$deathMessage) {
|
|
this(player, drops, droppedExp, 0, adventure$deathMessage, null);
|
|
}
|
|
@@ -27,12 +31,17 @@ public class PlayerDeathEvent extends EntityDeathEvent {
|
|
}
|
|
|
|
public PlayerDeathEvent(@NotNull final Player player, @NotNull final List<ItemStack> drops, final int droppedExp, final int newExp, final int newTotalExp, final int newLevel, @Nullable final net.kyori.adventure.text.Component adventure$deathMessage, @Nullable String deathMessage) {
|
|
+ this(player, drops, droppedExp, newExp, newTotalExp, newLevel, adventure$deathMessage, deathMessage, true);
|
|
+ }
|
|
+
|
|
+ public PlayerDeathEvent(@NotNull final Player player, @NotNull final List<ItemStack> drops, final int droppedExp, final int newExp, final int newTotalExp, final int newLevel, @Nullable final net.kyori.adventure.text.Component adventure$deathMessage, @Nullable String deathMessage, boolean doExpDrop) {
|
|
super(player, drops, droppedExp);
|
|
this.newExp = newExp;
|
|
this.newTotalExp = newTotalExp;
|
|
this.newLevel = newLevel;
|
|
this.deathMessage = deathMessage;
|
|
this.adventure$deathMessage = adventure$deathMessage;
|
|
+ this.doExpDrop = doExpDrop;
|
|
}
|
|
// Paper end
|
|
|
|
@@ -47,6 +56,11 @@ public class PlayerDeathEvent extends EntityDeathEvent {
|
|
|
|
@Deprecated // Paper
|
|
public PlayerDeathEvent(@NotNull final Player player, @NotNull final List<ItemStack> drops, final int droppedExp, final int newExp, final int newTotalExp, final int newLevel, @Nullable final String deathMessage) {
|
|
+ this(player, drops, droppedExp, newExp, newTotalExp, newLevel, deathMessage, true);
|
|
+ }
|
|
+
|
|
+ @Deprecated // Paper
|
|
+ public PlayerDeathEvent(@NotNull final Player player, @NotNull final List<ItemStack> drops, final int droppedExp, final int newExp, final int newTotalExp, final int newLevel, @Nullable final String deathMessage, boolean doExpDrop) {
|
|
super(player, drops, droppedExp);
|
|
this.newExp = newExp;
|
|
this.newTotalExp = newTotalExp;
|
|
@@ -88,6 +102,20 @@ public class PlayerDeathEvent extends EntityDeathEvent {
|
|
public List<ItemStack> getItemsToKeep() {
|
|
return itemsToKeep;
|
|
}
|
|
+
|
|
+ /**
|
|
+ * @return should experience be dropped from this death
|
|
+ */
|
|
+ public boolean shouldDropExperience() {
|
|
+ return doExpDrop;
|
|
+ }
|
|
+
|
|
+ /**
|
|
+ * @param doExpDrop sets if experience should be dropped from this death
|
|
+ */
|
|
+ public void setShouldDropExperience(boolean doExpDrop) {
|
|
+ this.doExpDrop = doExpDrop;
|
|
+ }
|
|
// Paper end
|
|
|
|
@NotNull
|