Fixed problems with World.getPlayers()

This commit is contained in:
Johannes Donath 2015-02-27 21:14:00 +01:00 committed by Zach Brown
parent 78f0bacf0a
commit 89cb2c0a86

View file

@ -1,4 +1,4 @@
From d9ff34fe89d480c31bfe4d0b183cc3c1dcbee6bf Mon Sep 17 00:00:00 2001 From 6166b3835f703314b49c21eb0420e184c61da949 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net> From: md_5 <git@md-5.net>
Date: Fri, 20 Feb 2015 21:39:31 +1100 Date: Fri, 20 Feb 2015 21:39:31 +1100
Subject: [PATCH] Allow Capping (Tile)Entity Tick Time. Subject: [PATCH] Allow Capping (Tile)Entity Tick Time.
@ -10,7 +10,7 @@ For tiles there is very little tradeoff for this option, as tile ticks are based
This feature was commisioned by Chunkr. This feature was commisioned by Chunkr.
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index c50aa62..9806e49 100644 index c50aa62..e921f55 100644
--- a/src/main/java/net/minecraft/server/World.java --- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java +++ b/src/main/java/net/minecraft/server/World.java
@@ -134,6 +134,9 @@ public abstract class World implements IBlockAccess { @@ -134,6 +134,9 @@ public abstract class World implements IBlockAccess {
@ -32,21 +32,13 @@ index c50aa62..9806e49 100644
} }
public World b() { public World b() {
@@ -1114,7 +1119,7 @@ public abstract class World implements IBlockAccess { @@ -1393,7 +1398,12 @@ public abstract class World implements IBlockAccess {
this.everyoneSleeping();
}
- if (!guardEntityList) { // Spigot - It will get removed after the tick if we are ticking
+ if (false) { // Spigot - It will get removed next tick
int i = entity.ae;
int j = entity.ag;
@@ -1393,7 +1398,11 @@ public abstract class World implements IBlockAccess {
timings.entityTick.startTiming(); // Spigot timings.entityTick.startTiming(); // Spigot
guardEntityList = true; // Spigot guardEntityList = true; // Spigot
// CraftBukkit start - Use field for loop variable // CraftBukkit start - Use field for loop variable
- for (this.tickPosition = 0; this.tickPosition < this.entityList.size(); ++this.tickPosition) { - for (this.tickPosition = 0; this.tickPosition < this.entityList.size(); ++this.tickPosition) {
+ int entitiesThisCycle = 0; + int entitiesThisCycle = 0;
+ if (tickPosition < 0) tickPosition = 0;
+ for (entityLimiter.initTick(); + for (entityLimiter.initTick();
+ entitiesThisCycle < entityList.size() && (entitiesThisCycle % 10 == 0 || entityLimiter.shouldContinue()); + entitiesThisCycle < entityList.size() && (entitiesThisCycle % 10 == 0 || entityLimiter.shouldContinue());
+ tickPosition++, entitiesThisCycle++) { + tickPosition++, entitiesThisCycle++) {
@ -54,7 +46,7 @@ index c50aa62..9806e49 100644
entity = (Entity) this.entityList.get(this.tickPosition); entity = (Entity) this.entityList.get(this.tickPosition);
// CraftBukkit end // CraftBukkit end
if (entity.vehicle != null) { if (entity.vehicle != null) {
@@ -1451,14 +1460,18 @@ public abstract class World implements IBlockAccess { @@ -1451,14 +1461,18 @@ public abstract class World implements IBlockAccess {
// CraftBukkit end // CraftBukkit end
this.initializeHoppers(); // Spigot - Initializes hoppers which have been added recently. this.initializeHoppers(); // Spigot - Initializes hoppers which have been added recently.
@ -77,7 +69,7 @@ index c50aa62..9806e49 100644
continue; continue;
} }
// Spigot end // Spigot end
@@ -1486,7 +1499,7 @@ public abstract class World implements IBlockAccess { @@ -1486,7 +1500,7 @@ public abstract class World implements IBlockAccess {
} }
if (tileentity.x()) { if (tileentity.x()) {
@ -131,5 +123,5 @@ index 0000000..23a3938
+ } + }
+} +}
-- --
2.1.0 2.3.1