geforkt von Mirrors/Paper
26734e83b0
* Updated Upstream (Bukkit/CraftBukkit/Spigot) Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: 8085edde SPIGOT-6918: Add SpawnCategory API and configurations for Axolotls 04c7e13c PR-719: Add Player Profile API 71564210 SPIGOT-6910: Add BlockDamageAbortEvent CraftBukkit Changes: febaa1c6 SPIGOT-6918: Add SpawnCategory API and configurations for Axolotls 9dafd109 Don't send updates over large distances bdac46b0 SPIGOT-6782: EntityPortalEvent should not destroy entity when setTo() uses same world as getFrom() 8f361ece PR-1002: Add Player Profile API 911875d4 Increase outdated build delay e5f8a767 SPIGOT-6917: Use main scoreboard for /trigger a672a531 Clean up callBlockDamageEvent 8e1bdeef SPIGOT-6910: Add BlockDamageAbortEvent Spigot Changes: 6edb62f3 Rebuild patches 7fbc6a1e Rebuild patches * Updated Upstream (CraftBukkit) Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing CraftBukkit Changes: de951355 SPIGOT-6927: Fix default value of spawn-limits in Worlds
134 Zeilen
4.6 KiB
Diff
134 Zeilen
4.6 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Byteflux <byte@byteflux.net>
|
|
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 33f7f4df53ba52f9afa22662427cbab1876b451c..3742bd5f1a31d45f2ac760f706f6069a88274e27 100644
|
|
--- a/src/main/java/org/bukkit/World.java
|
|
+++ b/src/main/java/org/bukkit/World.java
|
|
@@ -2596,6 +2596,52 @@ 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);
|
|
+
|
|
+ /**
|
|
+ * 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.
|
|
+ */
|
|
+ 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]
|
|
+ */
|
|
+ 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.
|
|
+ */
|
|
+ public 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
|
|
+ */
|
|
+ public 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 43d91f578b0aefd18f7f5ecd120a366af4ee98e6..2d93f5ad7f9c0df08bcd099a813c1d8e9b8c16eb 100644
|
|
--- a/src/main/java/org/bukkit/entity/Player.java
|
|
+++ b/src/main/java/org/bukkit/entity/Player.java
|
|
@@ -1793,6 +1793,62 @@ 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()
|
|
+ * @see org.bukkit.World#getNoTickViewDistance()
|
|
+ */
|
|
+ public int getViewDistance();
|
|
+
|
|
+ /**
|
|
+ * Sets the view distance for this player
|
|
+ *
|
|
+ * @param viewDistance the player's view distance
|
|
+ * @see org.bukkit.World#setViewDistance(int)
|
|
+ * @see org.bukkit.World#setNoTickViewDistance(int)
|
|
+ */
|
|
+ public void setViewDistance(int viewDistance);
|
|
+
|
|
+ /**
|
|
+ * 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.
|
|
+ */
|
|
+ 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
|
|
+ */
|
|
+ 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
|
|
|
|
/**
|