mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-27 15:00:13 +01:00
Entity powdered snow API (#6833)
This commit is contained in:
parent
7bcbcb5337
commit
ba5ef6e1ac
3 changed files with 84 additions and 0 deletions
|
@ -289,3 +289,6 @@ public net.minecraft.world.level.levelgen.SurfaceSystem getOrCreateRandomFactory
|
||||||
|
|
||||||
# Fix removing recipes
|
# Fix removing recipes
|
||||||
public net.minecraft.world.item.crafting.RecipeManager byName
|
public net.minecraft.world.item.crafting.RecipeManager byName
|
||||||
|
|
||||||
|
# Entity powdered snow API
|
||||||
|
public net.minecraft.world.entity.monster.Skeleton inPowderSnowTime
|
||||||
|
|
44
patches/api/Entity-powdered-snow-API.patch
Normal file
44
patches/api/Entity-powdered-snow-API.patch
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jake Potrebic <jake.m.potrebic@gmail.com>
|
||||||
|
Date: Sun, 24 Oct 2021 20:58:52 -0700
|
||||||
|
Subject: [PATCH] Entity powdered snow API
|
||||||
|
|
||||||
|
|
||||||
|
diff --git a/src/main/java/org/bukkit/entity/Entity.java b/src/main/java/org/bukkit/entity/Entity.java
|
||||||
|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
||||||
|
--- a/src/main/java/org/bukkit/entity/Entity.java
|
||||||
|
+++ b/src/main/java/org/bukkit/entity/Entity.java
|
||||||
|
@@ -0,0 +0,0 @@ public interface Entity extends Metadatable, CommandSender, Nameable, Persistent
|
||||||
|
* @return Whether the entity was successfully spawned.
|
||||||
|
*/
|
||||||
|
public boolean spawnAt(@NotNull Location location, @NotNull org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason reason);
|
||||||
|
+
|
||||||
|
+ /**
|
||||||
|
+ * Check if entity is inside powdered snow.
|
||||||
|
+ *
|
||||||
|
+ * @return true if in powdered snow.
|
||||||
|
+ */
|
||||||
|
+ boolean isInPowderedSnow();
|
||||||
|
// Paper end
|
||||||
|
}
|
||||||
|
diff --git a/src/main/java/org/bukkit/entity/Skeleton.java b/src/main/java/org/bukkit/entity/Skeleton.java
|
||||||
|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
||||||
|
--- a/src/main/java/org/bukkit/entity/Skeleton.java
|
||||||
|
+++ b/src/main/java/org/bukkit/entity/Skeleton.java
|
||||||
|
@@ -0,0 +0,0 @@ public interface Skeleton extends AbstractSkeleton {
|
||||||
|
*/
|
||||||
|
void setConversionTime(int time);
|
||||||
|
|
||||||
|
+ // Paper start
|
||||||
|
+ /**
|
||||||
|
+ * Gets the time the skeleton
|
||||||
|
+ * has been inside powdered snow.
|
||||||
|
+ *
|
||||||
|
+ * @return time in ticks
|
||||||
|
+ */
|
||||||
|
+ int inPowderedSnowTime();
|
||||||
|
+ // Paper end
|
||||||
|
+
|
||||||
|
/**
|
||||||
|
* A legacy enum that defines the different variances of skeleton-like
|
||||||
|
* entities on the server.
|
37
patches/server/Entity-powdered-snow-API.patch
Normal file
37
patches/server/Entity-powdered-snow-API.patch
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jake Potrebic <jake.m.potrebic@gmail.com>
|
||||||
|
Date: Sun, 24 Oct 2021 20:58:43 -0700
|
||||||
|
Subject: [PATCH] Entity powdered snow API
|
||||||
|
|
||||||
|
|
||||||
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||||
|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
||||||
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||||
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntity.java
|
||||||
|
@@ -0,0 +0,0 @@ public abstract class CraftEntity implements org.bukkit.entity.Entity {
|
||||||
|
entity.setRot(location.getYaw(), location.getPitch());
|
||||||
|
return !entity.valid && entity.level.addFreshEntity(entity, reason);
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+ @Override
|
||||||
|
+ public boolean isInPowderedSnow() {
|
||||||
|
+ return getHandle().isInPowderSnow || getHandle().wasInPowderSnow; // depending on the location in the entity "tick" either could be needed.
|
||||||
|
+ }
|
||||||
|
// Paper end
|
||||||
|
}
|
||||||
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftSkeleton.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftSkeleton.java
|
||||||
|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
||||||
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftSkeleton.java
|
||||||
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftSkeleton.java
|
||||||
|
@@ -0,0 +0,0 @@ public class CraftSkeleton extends CraftAbstractSkeleton implements Skeleton {
|
||||||
|
public SkeletonType getSkeletonType() {
|
||||||
|
return SkeletonType.NORMAL;
|
||||||
|
}
|
||||||
|
+
|
||||||
|
+ // Paper start
|
||||||
|
+ @Override
|
||||||
|
+ public int inPowderedSnowTime() {
|
||||||
|
+ return getHandle().inPowderSnowTime;
|
||||||
|
+ }
|
||||||
|
+ // Paper end
|
||||||
|
}
|
Loading…
Reference in a new issue