Move some methods to RegionAccessor (#7635)

This commit is contained in:
Jake Potrebic
2022-06-05 13:51:44 -07:00
parent bcde5dbffe
commit 943212b776
8 changed files with 87 additions and 47 deletions

View File

@@ -8,7 +8,7 @@ diff --git a/src/main/java/org/bukkit/RegionAccessor.java b/src/main/java/org/bu
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/RegionAccessor.java
+++ b/src/main/java/org/bukkit/RegionAccessor.java
@@ -0,0 +0,0 @@ public interface RegionAccessor {
@@ -0,0 +0,0 @@ public interface RegionAccessor extends Keyed { // Paper
*
* @param location the location of the biome
* @return Biome at the given location
@@ -16,7 +16,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
*/
@NotNull
Biome getBiome(@NotNull Location location);
@@ -0,0 +0,0 @@ public interface RegionAccessor {
@@ -0,0 +0,0 @@ public interface RegionAccessor extends Keyed { // Paper
* @param y Y-coordinate of the block
* @param z Z-coordinate of the block
* @return Biome at the given coordinates

View File

@@ -46,20 +46,20 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+ return BY_DAY.get(day % 8L);
+ }
+}
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
diff --git a/src/main/java/org/bukkit/RegionAccessor.java b/src/main/java/org/bukkit/RegionAccessor.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/World.java
+++ b/src/main/java/org/bukkit/World.java
@@ -0,0 +0,0 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient
* @return The amount of Players in this world
--- a/src/main/java/org/bukkit/RegionAccessor.java
+++ b/src/main/java/org/bukkit/RegionAccessor.java
@@ -0,0 +0,0 @@ public interface RegionAccessor {
*/
int getPlayerCount();
@NotNull
public <T extends Entity> T spawn(@NotNull Location location, @NotNull Class<T> clazz, boolean randomizeData, @Nullable Consumer<T> function) throws IllegalArgumentException;
+
+ // Paper start
+ /**
+ * @return the current moon phase at the current time in the world
+ */
+ @NotNull
+ io.papermc.paper.world.MoonPhase getMoonPhase();
// Paper end
/**
+ // Paper end
}

View File

@@ -4,14 +4,14 @@ Date: Sat, 29 May 2021 14:33:18 -0500
Subject: [PATCH] Add more line of sight methods
diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
diff --git a/src/main/java/org/bukkit/RegionAccessor.java b/src/main/java/org/bukkit/RegionAccessor.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/World.java
+++ b/src/main/java/org/bukkit/World.java
@@ -0,0 +0,0 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient
*/
--- a/src/main/java/org/bukkit/RegionAccessor.java
+++ b/src/main/java/org/bukkit/RegionAccessor.java
@@ -0,0 +0,0 @@ public interface RegionAccessor extends Keyed { // Paper
@NotNull
io.papermc.paper.world.MoonPhase getMoonPhase();
@Override
NamespacedKey getKey();
+
+ /**
+ * Tell whether a line of sight exists between the given locations
@@ -21,8 +21,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
+ */
+ public boolean lineOfSightExists(@NotNull Location from, @NotNull Location to);
// Paper end
/**
}
diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/entity/LivingEntity.java

View File

@@ -1,7 +1,7 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jake Potrebic <jake.m.potrebic@gmail.com>
Date: Wed, 6 Jan 2021 00:34:10 -0800
Subject: [PATCH] Add methods to get world by key
Subject: [PATCH] Expand world key API
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
@@ -27,6 +27,34 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000
/**
* Create a new virtual {@link WorldBorder}.
diff --git a/src/main/java/org/bukkit/RegionAccessor.java b/src/main/java/org/bukkit/RegionAccessor.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/RegionAccessor.java
+++ b/src/main/java/org/bukkit/RegionAccessor.java
@@ -0,0 +0,0 @@ import org.jetbrains.annotations.Nullable;
* A RegionAccessor gives access to getting, modifying and spawning {@link Biome}, {@link BlockState} and {@link Entity},
* as well as generating some basic structures.
*/
-public interface RegionAccessor {
+public interface RegionAccessor extends Keyed { // Paper
/**
* Gets the {@link Biome} at the given {@link Location}.
@@ -0,0 +0,0 @@ public interface RegionAccessor {
*/
@NotNull
io.papermc.paper.world.MoonPhase getMoonPhase();
+
+ /**
+ * Get the world's key
+ *
+ * @return the world's key
+ */
+ @NotNull
+ @Override
+ NamespacedKey getKey();
// Paper end
}
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/Server.java