mirror of
https://github.com/PaperMC/Paper.git
synced 2024-09-03 02:20:51 +02:00
If a playerdata doesn't contain a valid, loaded world, reset to the main world spawn point
36 lines
1.8 KiB
Diff
36 lines
1.8 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Spottedleaf <Spottedleaf@users.noreply.github.com>
|
|
Date: Sun, 20 Jun 2021 21:55:59 -0700
|
|
Subject: [PATCH] Fix PlayerDropItemEvent using wrong item
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
|
index 176a966ed1cc1c2e436e1d1fd849bfa0cbf9f799..aa2185e46bd47748a0a2b092ab2caf134fa4fa69 100644
|
|
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
|
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
|
@@ -2289,7 +2289,7 @@ public class ServerPlayer extends Player {
|
|
|
|
if (retainOwnership) {
|
|
if (!itemstack1.isEmpty()) {
|
|
- this.awardStat(Stats.ITEM_DROPPED.get(itemstack1.getItem()), stack.getCount());
|
|
+ this.awardStat(Stats.ITEM_DROPPED.get(itemstack1.getItem()), itemstack1.getCount()); // Paper
|
|
}
|
|
|
|
this.awardStat(Stats.DROP);
|
|
diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java
|
|
index 0d65e04efacef0bef245e6b5b21e430d90696c5d..4bbd46618ec0f00e0aee7f681335bcbdb375c439 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/player/Player.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/player/Player.java
|
|
@@ -730,6 +730,11 @@ public abstract class Player extends LivingEntity {
|
|
}
|
|
|
|
double d0 = this.getEyeY() - 0.30000001192092896D;
|
|
+ // Paper start
|
|
+ ItemStack tmp = itemstack.copy();
|
|
+ itemstack.setCount(0);
|
|
+ itemstack = tmp;
|
|
+ // Paper end
|
|
ItemEntity entityitem = new ItemEntity(this.level(), this.getX(), d0, this.getZ(), itemstack);
|
|
|
|
entityitem.setPickUpDelay(40);
|