Mark chunk dirty on entity changes

This is to hopefully help avoid any chunk saving entity issues.
Marks the chunk that it NEEDS to be saved, ensuring the latest state gets saved.
This commit is contained in:
Aikar 2018-07-23 22:54:52 -04:00
parent 3b12d748b4
commit f41ff893dd

View file

@ -0,0 +1,28 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Mon, 23 Jul 2018 22:18:31 -0400
Subject: [PATCH] Mark chunk dirty anytime entities change to guarantee it
saves
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index b31c301ec..6de053781 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -0,0 +0,0 @@ public class Chunk {
entity.ad = this.locZ;
this.entitySlices[k].add(entity);
// Paper start
+ this.markDirty();
entity.setCurrentChunk(this);
entityCounts.increment(entity.entityKeyString);
if (entity instanceof EntityItem) {
@@ -0,0 +0,0 @@ public class Chunk {
// Paper start
if (!this.entitySlices[i].remove(entity)) { return; }
+ this.markDirty();
entity.setCurrentChunk(null);
entityCounts.decrement(entity.entityKeyString);
if (entity instanceof EntityItem) {
--