mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-30 16:19:03 +01:00
8778a2ef97
This enables us a fast reference to the entities current chunk instead of having to look it up by hashmap lookups. We also store counts by type to further enable other performance optimizations in later patches.
39 lines
No EOL
1.9 KiB
Diff
39 lines
No EOL
1.9 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Fri, 18 Mar 2016 15:12:22 -0400
|
|
Subject: [PATCH] Configurable Non Player Arrow Despawn Rate
|
|
|
|
Can set a much shorter despawn rate for arrows that players can not pick up.
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
index faacd86ba..f71580393 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
@@ -0,0 +0,0 @@ public class PaperWorldConfig {
|
|
private void allowLeashingUndeadHorse() {
|
|
allowLeashingUndeadHorse = getBoolean("allow-leashing-undead-horse", false);
|
|
}
|
|
+
|
|
+ public int nonPlayerArrowDespawnRate = -1;
|
|
+ private void nonPlayerArrowDespawnRate() {
|
|
+ nonPlayerArrowDespawnRate = getInt("non-player-arrow-despawn-rate", -1);
|
|
+ if (nonPlayerArrowDespawnRate == -1) {
|
|
+ nonPlayerArrowDespawnRate = spigotConfig.arrowDespawnRate;
|
|
+ }
|
|
+ log("Non Player Arrow Despawn Rate: " + nonPlayerArrowDespawnRate);
|
|
+ }
|
|
}
|
|
diff --git a/src/main/java/net/minecraft/server/EntityArrow.java b/src/main/java/net/minecraft/server/EntityArrow.java
|
|
index 584782adb..86836a5d0 100644
|
|
--- a/src/main/java/net/minecraft/server/EntityArrow.java
|
|
+++ b/src/main/java/net/minecraft/server/EntityArrow.java
|
|
@@ -0,0 +0,0 @@ public abstract class EntityArrow extends Entity implements IProjectile {
|
|
this.ay = 0;
|
|
} else {
|
|
++this.ax;
|
|
- if (this.ax >= world.spigotConfig.arrowDespawnRate) { // Spigot - First int after shooter
|
|
+ if (this.ax >= (fromPlayer != PickupStatus.DISALLOWED ? world.spigotConfig.arrowDespawnRate : world.paperConfig.nonPlayerArrowDespawnRate)) { // Spigot - First int after shooter // Paper
|
|
this.die();
|
|
}
|
|
}
|
|
--
|