Mirror von
https://github.com/PaperMC/Paper.git
synchronisiert 2024-12-15 11:00:06 +01:00
Add fromBottle flag to Experience Orbs (#584)
* Add fromBottle flag to Experience Orbs
Dieser Commit ist enthalten in:
Ursprung
c1641b8e0c
Commit
36078e1a3d
23
Spigot-API-Patches/0049-Add-fromBottle-flag-to-Experience-Orbs.patch
Normale Datei
23
Spigot-API-Patches/0049-Add-fromBottle-flag-to-Experience-Orbs.patch
Normale Datei
@ -0,0 +1,23 @@
|
||||
From e20b2ab5e6e8c3ce48744201e26165aff882eabf Mon Sep 17 00:00:00 2001
|
||||
From: BillyGalbreath <Blake.Galbreath@GMail.com>
|
||||
Date: Sat, 14 Jan 2017 16:15:20 -0600
|
||||
Subject: [PATCH] Add fromBottle flag to Experience Orbs
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/entity/ExperienceOrb.java b/src/main/java/org/bukkit/entity/ExperienceOrb.java
|
||||
index c286edfd..bcb68fa7 100644
|
||||
--- a/src/main/java/org/bukkit/entity/ExperienceOrb.java
|
||||
+++ b/src/main/java/org/bukkit/entity/ExperienceOrb.java
|
||||
@@ -18,4 +18,9 @@ public interface ExperienceOrb extends Entity {
|
||||
* @param value Amount of experience
|
||||
*/
|
||||
public void setExperience(int value);
|
||||
+
|
||||
+ /**
|
||||
+ * Check if this orb was spawned from a ThrownExpBottle
|
||||
+ */
|
||||
+ public boolean isFromBottle();
|
||||
}
|
||||
--
|
||||
2.11.0
|
||||
|
@ -0,0 +1,71 @@
|
||||
From 5bad590913815708415dd55c1b6787b797cd3d5d Mon Sep 17 00:00:00 2001
|
||||
From: BillyGalbreath <Blake.Galbreath@GMail.com>
|
||||
Date: Sat, 14 Jan 2017 16:15:26 -0600
|
||||
Subject: [PATCH] Add fromBottle flag to Experience Orbs
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityExperienceOrb.java b/src/main/java/net/minecraft/server/EntityExperienceOrb.java
|
||||
index 14431b8a..54c9200a 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityExperienceOrb.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityExperienceOrb.java
|
||||
@@ -15,6 +15,14 @@ public class EntityExperienceOrb extends Entity {
|
||||
public int value;
|
||||
private EntityHuman targetPlayer;
|
||||
private int targetTime;
|
||||
+ // Paper start
|
||||
+ private boolean fromBottle = false;
|
||||
+
|
||||
+ public EntityExperienceOrb(World world, double d0, double d1, double d2, int i, boolean fromBottle) {
|
||||
+ this(world, d0, d1, d2, i);
|
||||
+ this.fromBottle = fromBottle;
|
||||
+ }
|
||||
+ // Paper end
|
||||
|
||||
public EntityExperienceOrb(World world, double d0, double d1, double d2, int i) {
|
||||
super(world);
|
||||
@@ -27,6 +35,12 @@ public class EntityExperienceOrb extends Entity {
|
||||
this.value = i;
|
||||
}
|
||||
|
||||
+ // Paper start
|
||||
+ public boolean isFromBottle() {
|
||||
+ return fromBottle;
|
||||
+ }
|
||||
+ // Paper end
|
||||
+
|
||||
protected boolean playStepSound() {
|
||||
return false;
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityThrownExpBottle.java b/src/main/java/net/minecraft/server/EntityThrownExpBottle.java
|
||||
index 0255986f..28931295 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityThrownExpBottle.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityThrownExpBottle.java
|
||||
@@ -40,7 +40,7 @@ public class EntityThrownExpBottle extends EntityProjectile {
|
||||
int j = EntityExperienceOrb.getOrbValue(i);
|
||||
|
||||
i -= j;
|
||||
- this.world.addEntity(new EntityExperienceOrb(this.world, this.locX, this.locY, this.locZ, j));
|
||||
+ this.world.addEntity(new EntityExperienceOrb(this.world, this.locX, this.locY, this.locZ, j, true)); // Paper - add fromBottle flag
|
||||
}
|
||||
|
||||
this.die();
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java
|
||||
index 3a09cab3..f992019e 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftExperienceOrb.java
|
||||
@@ -18,6 +18,10 @@ public class CraftExperienceOrb extends CraftEntity implements ExperienceOrb {
|
||||
getHandle().value = value;
|
||||
}
|
||||
|
||||
+ // Paper start
|
||||
+ public boolean isFromBottle() {
|
||||
+ return getHandle().isFromBottle();
|
||||
+ }
|
||||
+ // Paper end
|
||||
+
|
||||
@Override
|
||||
public EntityExperienceOrb getHandle() {
|
||||
return (EntityExperienceOrb) entity;
|
||||
--
|
||||
2.11.0
|
||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren