diff options
Diffstat (limited to 'patches/api/0018-Add-view-distance-API.patch')
-rw-r--r-- | patches/api/0018-Add-view-distance-API.patch | 159 |
1 files changed, 159 insertions, 0 deletions
diff --git a/patches/api/0018-Add-view-distance-API.patch b/patches/api/0018-Add-view-distance-API.patch new file mode 100644 index 0000000000..ed3258121d --- /dev/null +++ b/patches/api/0018-Add-view-distance-API.patch @@ -0,0 +1,159 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Byteflux <[email protected]> +Date: Mon, 29 Feb 2016 18:05:37 -0600 +Subject: [PATCH] Add view distance API + +Add per player no-tick, tick, and send view distances. + +Also add send/no-tick view distance to World. + +diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java +index 1403d28bf9124e3c4cd741dfda06400318e8a0a0..3559115d09b57acf5c2853b811862e5131f2a625 100644 +--- a/src/main/java/org/bukkit/World.java ++++ b/src/main/java/org/bukkit/World.java +@@ -2663,6 +2663,62 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient + int getSimulationDistance(); + // Spigot end + ++ // Paper start - view distance api ++ /** ++ * Sets the view distance for this world. ++ * @param viewDistance view distance in [2, 32] ++ */ ++ void setViewDistance(int viewDistance); ++ ++ /** ++ * Sets the simulation distance for this world. ++ * @param simulationDistance simulation distance in [2, 32] ++ */ ++ void setSimulationDistance(int simulationDistance); ++ ++ /** ++ * Returns the no-tick view distance for this world. ++ * <p> ++ * No-tick view distance is the view distance where chunks will load, however the chunks and their entities will not ++ * be set to tick. ++ * </p> ++ * @return The no-tick view distance for this world. ++ * @deprecated Use {@link #getViewDistance()} ++ */ ++ @Deprecated ++ int getNoTickViewDistance(); ++ ++ /** ++ * Sets the no-tick view distance for this world. ++ * <p> ++ * No-tick view distance is the view distance where chunks will load, however the chunks and their entities will not ++ * be set to tick. ++ * </p> ++ * @param viewDistance view distance in [2, 32] ++ * @deprecated Use {@link #setViewDistance(int)} ++ */ ++ @Deprecated ++ void setNoTickViewDistance(int viewDistance); ++ ++ /** ++ * Gets the sending view distance for this world. ++ * <p> ++ * Sending view distance is the view distance where chunks will load in for players in this world. ++ * </p> ++ * @return The sending view distance for this world. ++ */ ++ int getSendViewDistance(); ++ ++ /** ++ * Sets the sending view distance for this world. ++ * <p> ++ * Sending view distance is the view distance where chunks will load in for players in this world. ++ * </p> ++ * @param viewDistance view distance in [2, 32] or -1 ++ */ ++ void setSendViewDistance(int viewDistance); ++ // Paper end - view distance api ++ + // Spigot start + public class Spigot { + +diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java +index f21183cd5491b09e4543839252aed1ea10ddf849..f9b9e0269b3a9402c5be1c1c2007956415ff708a 100644 +--- a/src/main/java/org/bukkit/entity/Player.java ++++ b/src/main/java/org/bukkit/entity/Player.java +@@ -2212,6 +2212,78 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM + * @param affects Whether the player can affect mob spawning + */ + public void setAffectsSpawning(boolean affects); ++ ++ /** ++ * Gets the view distance for this player ++ * ++ * @return the player's view distance ++ * @see org.bukkit.World#getViewDistance() ++ */ ++ public int getViewDistance(); ++ ++ /** ++ * Sets the view distance for this player ++ * ++ * @param viewDistance the player's view distance ++ * @see org.bukkit.World#setViewDistance(int) ++ */ ++ public void setViewDistance(int viewDistance); ++ ++ /** ++ * Gets the simulation distance for this player ++ * ++ * @return the player's simulation distance ++ */ ++ public int getSimulationDistance(); ++ ++ /** ++ * Sets the simulation distance for this player ++ * ++ * @param simulationDistance the player's new simulation distance ++ */ ++ public void setSimulationDistance(int simulationDistance); ++ ++ /** ++ * Gets the no-ticking view distance for this player. ++ * <p> ++ * No-tick view distance is the view distance where chunks will load, however the chunks and their entities will not ++ * be set to tick. ++ * </p> ++ * @return The no-tick view distance for this player. ++ * @deprecated Use {@link #getViewDistance()} ++ */ ++ @Deprecated ++ public int getNoTickViewDistance(); ++ ++ /** ++ * Sets the no-ticking view distance for this player. ++ * <p> ++ * No-tick view distance is the view distance where chunks will load, however the chunks and their entities will not ++ * be set to tick. ++ * </p> ++ * @param viewDistance view distance in [2, 32] or -1 ++ * @deprecated Use {@link #setViewDistance(int)} ++ */ ++ @Deprecated ++ public void setNoTickViewDistance(int viewDistance); ++ ++ /** ++ * Gets the sending view distance for this player. ++ * <p> ++ * Sending view distance is the view distance where chunks will load in for players. ++ * </p> ++ * @return The sending view distance for this player. ++ */ ++ public int getSendViewDistance(); ++ ++ /** ++ * Sets the sending view distance for this player. ++ * <p> ++ * Sending view distance is the view distance where chunks will load in for players. ++ * </p> ++ * @param viewDistance view distance in [2, 32] or -1 ++ */ ++ public void setSendViewDistance(int viewDistance); + // Paper end + + /** |