mirror of
https://github.com/PaperMC/Paper.git
synced 2025-01-06 10:44:39 +01:00
265ac2bbb1
light queue is actually buggy, so re-enabling the config. however, if anyone is ok with the buggy behavior, made the max time lost due to light queue configurable. We want to get to making the ligth queue default if we can make it work perfectly. also applying neighbor optimizations to use the faster method for light checks.
70 lines
No EOL
2.9 KiB
Diff
70 lines
No EOL
2.9 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Riley Park <rileysebastianpark@gmail.com>
|
|
Date: Wed, 15 Aug 2018 01:26:09 -0700
|
|
Subject: [PATCH] Allow disabling armour stand ticking
|
|
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
index 4a89d8bedb..b412d02ada 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 {
|
|
break;
|
|
}
|
|
}
|
|
+
|
|
+ public boolean armorStandTick = true;
|
|
+ private void armorStandTick() {
|
|
+ this.armorStandTick = this.getBoolean("armor-stands-tick", this.armorStandTick);
|
|
+ log("ArmorStand ticking is " + (this.armorStandTick ? "enabled" : "disabled") + " by default");
|
|
+ }
|
|
}
|
|
diff --git a/src/main/java/net/minecraft/server/EntityArmorStand.java b/src/main/java/net/minecraft/server/EntityArmorStand.java
|
|
index 7647311dfd..35afffedef 100644
|
|
--- a/src/main/java/net/minecraft/server/EntityArmorStand.java
|
|
+++ b/src/main/java/net/minecraft/server/EntityArmorStand.java
|
|
@@ -0,0 +0,0 @@ public class EntityArmorStand extends EntityLiving {
|
|
public Vector3f leftLegPose;
|
|
public Vector3f rightLegPose;
|
|
public boolean canMove = true; // Paper
|
|
+ public boolean canTick = true; // Paper - armour stand ticking
|
|
|
|
public EntityArmorStand(World world) {
|
|
super(EntityTypes.ARMOR_STAND, world);
|
|
@@ -0,0 +0,0 @@ public class EntityArmorStand extends EntityLiving {
|
|
this.leftLegPose = EntityArmorStand.bB;
|
|
this.rightLegPose = EntityArmorStand.bC;
|
|
this.noclip = this.isNoGravity();
|
|
+ if (world != null) this.canTick = world.paperConfig.armorStandTick; // Paper - armour stand ticking
|
|
this.setSize(0.5F, 1.975F);
|
|
this.Q = 0.0F;
|
|
}
|
|
@@ -0,0 +0,0 @@ public class EntityArmorStand extends EntityLiving {
|
|
}
|
|
|
|
public void tick() {
|
|
+ if (!this.canTick) return;// Paper
|
|
super.tick();
|
|
Vector3f vector3f = (Vector3f) this.datawatcher.get(EntityArmorStand.b);
|
|
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftArmorStand.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftArmorStand.java
|
|
index 9f5c3b92e3..07ce93f17c 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftArmorStand.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftArmorStand.java
|
|
@@ -0,0 +0,0 @@ public class CraftArmorStand extends CraftLivingEntity implements ArmorStand {
|
|
public boolean isSlotDisabled(org.bukkit.inventory.EquipmentSlot slot) {
|
|
return getHandle().isSlotDisabled(org.bukkit.craftbukkit.CraftEquipmentSlot.getNMS(slot));
|
|
}
|
|
+
|
|
+ @Override
|
|
+ public boolean canTick() {
|
|
+ return this.getHandle().canTick;
|
|
+ }
|
|
+
|
|
+ @Override
|
|
+ public void setCanTick(final boolean tick) {
|
|
+ this.getHandle().canTick = tick;
|
|
+ }
|
|
// Paper end
|
|
}
|
|
--
|