PaperMC/patches/server/0571-Stinger-API.patch
Nassim Jahnke dc684c60d1
Remove bad server.scheduleOnMain disconnect calls from old patches
The new behavior of disconnect to block the current thread until the disconnect succeeded is better than throwing it off to happen at some point
2024-06-16 12:56:00 +02:00

57 lines
2.1 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Owen1212055 <23108066+Owen1212055@users.noreply.github.com>
Date: Tue, 22 Jun 2021 23:15:44 -0400
Subject: [PATCH] Stinger API
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
index ba1a9726ca269d9eda29aa3c3661c380fc099041..d1e578ef86f730a3294fdc6330e3ad25572cd6b1 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java
@@ -361,6 +361,11 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
}
// Paper end
}
+ // Paper start - Bee Stinger API
+ @Override
+ public int getBeeStingerCooldown() {
+ return getHandle().removeStingerTime;
+ }
// Paper start - Add methods for working with arrows stuck in living entities
@Override
@@ -375,6 +380,34 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
}
// Paper end - Add methods for working with arrows stuck in living entities
+ @Override
+ public void setBeeStingerCooldown(int ticks) {
+ getHandle().removeStingerTime = ticks;
+ }
+
+ @Override
+ public int getBeeStingersInBody() {
+ return getHandle().getStingerCount();
+ }
+
+ @Override
+ public void setBeeStingersInBody(int count) {
+ Preconditions.checkArgument(count >= 0, "New bee stinger amount must be >= 0");
+ getHandle().setStingerCount(count);
+ }
+
+ @Override
+ public void setNextBeeStingerRemoval(final int ticks) {
+ Preconditions.checkArgument(ticks >= 0, "New amount of ticks before next bee stinger removal must be >= 0");
+ this.getHandle().removeStingerTime = ticks;
+ }
+
+ @Override
+ public int getNextBeeStingerRemoval() {
+ return this.getHandle().removeStingerTime;
+ }
+ // Paper end - Bee Stinger API
+
@Override
public void damage(double amount) {
this.damage(amount, this.getHandle().damageSources().generic());