Upstream merge

This commit is contained in:
Thinkofdeath 2015-03-16 10:19:21 +00:00 committed by Zach Brown
parent 4b61cd6e60
commit ab519bd34b
24 changed files with 193 additions and 208 deletions

View File

@ -1,4 +1,4 @@
From 9559d82514814e006a54738572cbe0f313c2f639 Mon Sep 17 00:00:00 2001
From 9ad720c5ae972ff7defca4be0e776a0ff9cef43a Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Tue, 2 Jul 2013 13:07:39 +1000
Subject: [PATCH] POM Changes
@ -6,112 +6,97 @@ Subject: [PATCH] POM Changes
Basic changes to the build system which mark the artifact as Spigot, and the necessary code changes to ensure proper functionality. Also disables the auto updater provided by CraftBukkit as it is useless to us.
diff --git a/pom.xml b/pom.xml
index 55e2603..1c4f56e 100644
index d8f0054..1c8d4ea 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,12 +1,12 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
- <groupId>org.bukkit</groupId>
- <artifactId>craftbukkit</artifactId>
+ <groupId>org.spigotmc</groupId>
+ <artifactId>spigot</artifactId>
<packaging>jar</packaging>
<version>1.8.3-R0.1-SNAPSHOT</version>
- <name>CraftBukkit</name>
- <url>http://www.bukkit.org</url>
+ <name>Spigot</name>
+ <url>http://www.spigotmc.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@@ -20,10 +20,22 @@
<maven.compiler.target>1.6</maven.compiler.target>
</properties>
+ <parent>
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
- <groupId>org.bukkit</groupId>
- <artifactId>craftbukkit</artifactId>
+ <groupId>org.spigotmc</groupId>
+ <artifactId>spigot-parent</artifactId>
+ <version>dev-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
<dependencies>
<dependency>
- <groupId>org.bukkit</groupId>
- <artifactId>bukkit</artifactId>
+ <groupId>net.sf.trove4j</groupId>
+ <artifactId>trove4j</artifactId>
+ <version>3.0.3</version>
+ </dependency>
+ <dependency>
+ <groupId>org.spigotmc</groupId>
+ <artifactId>spigot-api</artifactId>
<version>${project.version}</version>
<type>jar</type>
<scope>compile</scope>
@@ -88,21 +100,39 @@
+ <artifactId>spigot</artifactId>
<packaging>jar</packaging>
<version>1.8.3-R0.1-SNAPSHOT</version>
- <name>CraftBukkit</name>
- <url>http://www.bukkit.org</url>
+ <name>Spigot</name>
+ <url>http://www.spigotmc.org</url>
<!-- This builds a completely 'ready to start' jar with all dependencies inside -->
<build>
- <defaultGoal>clean install</defaultGoal>
+ <defaultGoal>install</defaultGoal>
<plugins>
<plugin>
<groupId>com.lukegb.mojo</groupId>
<artifactId>gitdescribe-maven-plugin</artifactId>
<version>2.0</version>
<configuration>
- <outputPrefix>${buildtag.prefix}</outputPrefix>
- <outputPostfix>${buildtag.suffix}</outputPostfix>
<extraArguments>
<extraArgument>--always</extraArgument>
</extraArguments>
</configuration>
<executions>
<execution>
+ <id>ex-spigot</id>
+ <configuration>
+ <outputPrefix>git-Spigot-</outputPrefix>
+ <outputPostfix></outputPostfix>
+ <scmDirectory>../</scmDirectory>
+ <descriptionProperty>spigot.desc</descriptionProperty>
+ </configuration>
+ <phase>compile</phase>
+ <goals>
+ <goal>gitdescribe</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>ex-craftbukkit</id>
+ <configuration>
+ <outputPrefix>-</outputPrefix>
+ <outputPostfix></outputPostfix>
+ <scmDirectory>../../CraftBukkit</scmDirectory>
+ <descriptionProperty>craftbukkit.desc</descriptionProperty>
+ </configuration>
<phase>compile</phase>
<goals>
<goal>gitdescribe</goal>
@@ -119,7 +149,7 @@
<manifestEntries>
<Main-Class>org.bukkit.craftbukkit.Main</Main-Class>
<Implementation-Title>CraftBukkit</Implementation-Title>
- <Implementation-Version>${describe}</Implementation-Version>
+ <Implementation-Version>${spigot.desc}${craftbukkit.desc}</Implementation-Version>
<Implementation-Vendor>Bukkit Team</Implementation-Vendor>
<Specification-Title>Bukkit</Specification-Title>
<Specification-Version>${api.version}</Specification-Version>
@@ -164,7 +194,7 @@
<configuration>
<signature>
<groupId>org.codehaus.mojo.signature</groupId>
- <artifactId>java16</artifactId>
+ <artifactId>java16-sun</artifactId>
<version>1.1</version>
</signature>
</configuration>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@@ -20,10 +20,22 @@
<maven.compiler.target>1.6</maven.compiler.target>
</properties>
+ <parent>
+ <groupId>org.spigotmc</groupId>
+ <artifactId>spigot-parent</artifactId>
+ <version>dev-SNAPSHOT</version>
+ <relativePath>../pom.xml</relativePath>
+ </parent>
+
<dependencies>
<dependency>
- <groupId>org.bukkit</groupId>
- <artifactId>bukkit</artifactId>
+ <groupId>net.sf.trove4j</groupId>
+ <artifactId>trove4j</artifactId>
+ <version>3.0.3</version>
+ </dependency>
+ <dependency>
+ <groupId>org.spigotmc</groupId>
+ <artifactId>spigot-api</artifactId>
<version>${project.version}</version>
<type>jar</type>
<scope>compile</scope>
@@ -88,17 +100,32 @@
<!-- This builds a completely 'ready to start' jar with all dependencies inside -->
<build>
- <defaultGoal>clean install</defaultGoal>
+ <defaultGoal>install</defaultGoal>
<plugins>
<plugin>
<groupId>net.md-5</groupId>
<artifactId>scriptus</artifactId>
<version>0.2</version>
- <configuration>
- <format>git-Bukkit-%s</format>
- </configuration>
<executions>
<execution>
+ <id>ex-spigot</id>
+ <configuration>
+ <format>git-Spigot-%s</format>
+ <scmDirectory>../</scmDirectory>
+ <descriptionProperty>spigot.desc</descriptionProperty>
+ </configuration>
+ <phase>initialize</phase>
+ <goals>
+ <goal>describe</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>ex-craftbukkit</id>
+ <configuration>
+ <format>-%s</format>
+ <scmDirectory>../../CraftBukkit</scmDirectory>
+ <descriptionProperty>craftbukkit.desc</descriptionProperty>
+ </configuration>
<phase>initialize</phase>
<goals>
<goal>describe</goal>
@@ -115,7 +142,7 @@
<manifestEntries>
<Main-Class>org.bukkit.craftbukkit.Main</Main-Class>
<Implementation-Title>CraftBukkit</Implementation-Title>
- <Implementation-Version>${describe}</Implementation-Version>
+ <Implementation-Version>${spigot.desc}${craftbukkit.desc}</Implementation-Version>
<Implementation-Vendor>Bukkit Team</Implementation-Vendor>
<Specification-Title>Bukkit</Specification-Title>
<Specification-Version>${api.version}</Specification-Version>
diff --git a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java b/src/main/java/org/bukkit/craftbukkit/util/Versioning.java
index f905d17..9304637 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/Versioning.java

View File

@ -1,4 +1,4 @@
From a6c9ca3c9cc3e1978133b4181548a9ea6dd08aad Mon Sep 17 00:00:00 2001
From e4382ca683da8ca5f0927445ef449f0eeff820b7 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 7 Jul 2013 09:32:53 +1000
Subject: [PATCH] Spigot Configuration
@ -35,10 +35,10 @@ index d57a796..8bc6ad6 100644
if (!this.getOnlineMode()) {
DedicatedServer.LOGGER.warn("**** SERVER IS RUNNING IN OFFLINE/INSECURE MODE!");
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 5f0464e..1545074 100644
index f03c704..89c8634 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -99,6 +99,7 @@ public abstract class World implements IBlockAccess {
@@ -102,6 +102,7 @@ public abstract class World implements IBlockAccess {
public long ticksPerMonsterSpawns;
public boolean populating;
private int tickPosition;
@ -46,7 +46,7 @@ index 5f0464e..1545074 100644
public CraftWorld getWorld() {
return this.world;
@@ -113,6 +114,7 @@ public abstract class World implements IBlockAccess {
@@ -116,6 +117,7 @@ public abstract class World implements IBlockAccess {
}
protected World(IDataManager idatamanager, WorldData worlddata, WorldProvider worldprovider, MethodProfiler methodprofiler, boolean flag, ChunkGenerator gen, org.bukkit.World.Environment env) {

View File

@ -1,4 +1,4 @@
From 442ed7a4510840871b654ef75bf6f8c1d42de1e8 Mon Sep 17 00:00:00 2001
From 1efa454d7b8601827d72a561da2b68eb73b451c3 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Tue, 11 Jun 2013 12:56:02 +1000
Subject: [PATCH] Better Chunk Tick Selection
@ -6,10 +6,10 @@ Subject: [PATCH] Better Chunk Tick Selection
An optimized chunk ticking algorithm which better selects chunks around players which are active on the server.
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 1545074..9e33d12 100644
index 89c8634..fbd1796 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -65,7 +65,7 @@ public abstract class World implements IBlockAccess {
@@ -68,7 +68,7 @@ public abstract class World implements IBlockAccess {
public Scoreboard scoreboard = new Scoreboard(); // CraftBukkit - public
public final boolean isClientSide;
// CraftBukkit - longhashset
@ -18,7 +18,7 @@ index 1545074..9e33d12 100644
private int L;
public boolean allowMonsters; // CraftBukkit - public
public boolean allowAnimals; // CraftBukkit - public
@@ -99,6 +99,31 @@ public abstract class World implements IBlockAccess {
@@ -102,6 +102,31 @@ public abstract class World implements IBlockAccess {
public long ticksPerMonsterSpawns;
public boolean populating;
private int tickPosition;
@ -50,7 +50,7 @@ index 1545074..9e33d12 100644
public final org.spigotmc.SpigotWorldConfig spigotConfig; // Spigot
public CraftWorld getWorld() {
@@ -120,6 +145,12 @@ public abstract class World implements IBlockAccess {
@@ -123,6 +148,12 @@ public abstract class World implements IBlockAccess {
this.ticksPerAnimalSpawns = this.getServer().getTicksPerAnimalSpawns(); // CraftBukkit
this.ticksPerMonsterSpawns = this.getServer().getTicksPerMonsterSpawns(); // CraftBukkit
// CraftBukkit end
@ -63,7 +63,7 @@ index 1545074..9e33d12 100644
this.L = this.random.nextInt(12000);
this.allowMonsters = true;
this.allowAnimals = true;
@@ -1945,17 +1976,44 @@ public abstract class World implements IBlockAccess {
@@ -1962,17 +1993,44 @@ public abstract class World implements IBlockAccess {
int k;
int l;
@ -112,7 +112,7 @@ index 1545074..9e33d12 100644
this.methodProfiler.b();
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index bab76ea..19d113b 100644
index 9b1af00..2bcf7d3 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -350,12 +350,15 @@ public class WorldServer extends World implements IAsyncTaskHandler {

View File

@ -1,4 +1,4 @@
From 4a48a8f12c2a67ac9922e507ced21888b95390e5 Mon Sep 17 00:00:00 2001
From a326a6af9a325cd9f9e43f98ecb4e3e1ef83e246 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sat, 23 Mar 2013 09:46:33 +1100
Subject: [PATCH] Merge tweaks and configuration
@ -41,10 +41,10 @@ index 1e575fe..fa7e6df 100644
}
} else {
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 9e33d12..31343c4 100644
index fbd1796..f58e618 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -967,6 +967,23 @@ public abstract class World implements IBlockAccess {
@@ -970,6 +970,23 @@ public abstract class World implements IBlockAccess {
// Not all projectiles extend EntityProjectile, so check for Bukkit interface instead
event = CraftEventFactory.callProjectileLaunchEvent(entity);
}

View File

@ -1,4 +1,4 @@
From fc148940050fd61ddcdad6e128c96bd038594f5c Mon Sep 17 00:00:00 2001
From 76f5dd6901a83046e9efcdb1196ba7744771364d Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Tue, 25 Mar 2014 16:10:01 +1100
Subject: [PATCH] Async Operation Catching
@ -78,10 +78,10 @@ index 5ef2be4..8d50e05 100644
this.trackedPlayers.remove(entityplayer);
entityplayer.d(this.tracker);
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 31343c4..f55bfed 100644
index f58e618..52a801f 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -937,6 +937,7 @@ public abstract class World implements IBlockAccess {
@@ -940,6 +940,7 @@ public abstract class World implements IBlockAccess {
}
public boolean addEntity(Entity entity, SpawnReason spawnReason) { // Changed signature, added SpawnReason
@ -89,7 +89,7 @@ index 31343c4..f55bfed 100644
if (entity == null) return false;
// CraftBukkit end
int i = MathHelper.floor(entity.locX / 16.0D);
@@ -1044,6 +1045,7 @@ public abstract class World implements IBlockAccess {
@@ -1047,6 +1048,7 @@ public abstract class World implements IBlockAccess {
}
public void removeEntity(Entity entity) {
@ -97,7 +97,7 @@ index 31343c4..f55bfed 100644
entity.die();
if (entity instanceof EntityHuman) {
this.players.remove(entity);
@@ -2481,6 +2483,7 @@ public abstract class World implements IBlockAccess {
@@ -2498,6 +2500,7 @@ public abstract class World implements IBlockAccess {
}
public void b(Collection<Entity> collection) {

View File

@ -1,4 +1,4 @@
From af32f61251756eed8678c094bd25e585b6397e76 Mon Sep 17 00:00:00 2001
From 879e587ea31d3fc17233e8dca602c5ceb8911745 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 10 Jan 2013 00:18:11 -0500
Subject: [PATCH] Spigot Timings
@ -6,10 +6,10 @@ Subject: [PATCH] Spigot Timings
Overhauls the Timings System adding performance tracking all around the Minecraft Server
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 1deeac6..3a05d9d 100644
index 0ad6f17..c213307 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -895,6 +895,7 @@ public class Chunk {
@@ -903,6 +903,7 @@ public class Chunk {
}
public void loadNearby(IChunkProvider ichunkprovider, IChunkProvider ichunkprovider1, int i, int j) {
@ -17,7 +17,7 @@ index 1deeac6..3a05d9d 100644
boolean flag = ichunkprovider.isChunkLoaded(i, j - 1);
boolean flag1 = ichunkprovider.isChunkLoaded(i + 1, j);
boolean flag2 = ichunkprovider.isChunkLoaded(i, j + 1);
@@ -941,6 +942,7 @@ public class Chunk {
@@ -949,6 +950,7 @@ public class Chunk {
}
}
@ -419,10 +419,10 @@ index 8afd376..71bf63a 100644
private static Map<String, Class<? extends TileEntity>> f = Maps.newHashMap();
private static Map<Class<? extends TileEntity>, String> g = Maps.newHashMap();
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index f55bfed..64f82f7 100644
index 52a801f..b831e55 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -18,6 +18,7 @@ import org.bukkit.Bukkit;
@@ -21,6 +21,7 @@ import org.bukkit.Bukkit;
import org.bukkit.block.BlockState;
import org.bukkit.craftbukkit.util.CraftMagicNumbers;
import org.bukkit.craftbukkit.util.LongHashSet;
@ -430,7 +430,7 @@ index f55bfed..64f82f7 100644
import org.bukkit.generator.ChunkGenerator;
import org.bukkit.craftbukkit.CraftServer;
import org.bukkit.craftbukkit.CraftWorld;
@@ -126,6 +127,8 @@ public abstract class World implements IBlockAccess {
@@ -129,6 +130,8 @@ public abstract class World implements IBlockAccess {
public final org.spigotmc.SpigotWorldConfig spigotConfig; // Spigot
@ -439,7 +439,7 @@ index f55bfed..64f82f7 100644
public CraftWorld getWorld() {
return this.world;
}
@@ -190,6 +193,7 @@ public abstract class World implements IBlockAccess {
@@ -193,6 +196,7 @@ public abstract class World implements IBlockAccess {
});
this.getServer().addWorld(this.world);
// CraftBukkit end
@ -447,7 +447,7 @@ index f55bfed..64f82f7 100644
}
public World b() {
@@ -1299,6 +1303,7 @@ public abstract class World implements IBlockAccess {
@@ -1302,6 +1306,7 @@ public abstract class World implements IBlockAccess {
this.g.clear();
this.methodProfiler.c("regular");
@ -455,7 +455,7 @@ index f55bfed..64f82f7 100644
// CraftBukkit start - Use field for loop variable
for (this.tickPosition = 0; this.tickPosition < this.entityList.size(); ++this.tickPosition) {
entity = (Entity) this.entityList.get(this.tickPosition);
@@ -1315,7 +1320,9 @@ public abstract class World implements IBlockAccess {
@@ -1318,7 +1323,9 @@ public abstract class World implements IBlockAccess {
this.methodProfiler.a("tick");
if (!entity.dead) {
try {
@ -465,7 +465,7 @@ index f55bfed..64f82f7 100644
} catch (Throwable throwable1) {
crashreport = CrashReport.a(throwable1, "Ticking entity");
crashreportsystemdetails = crashreport.a("Entity being ticked");
@@ -1340,7 +1347,9 @@ public abstract class World implements IBlockAccess {
@@ -1343,7 +1350,9 @@ public abstract class World implements IBlockAccess {
this.methodProfiler.b();
}
@ -475,7 +475,7 @@ index f55bfed..64f82f7 100644
this.M = true;
// CraftBukkit start - From below, clean up tile entities before ticking them
if (!this.c.isEmpty()) {
@@ -1359,6 +1368,7 @@ public abstract class World implements IBlockAccess {
@@ -1362,6 +1371,7 @@ public abstract class World implements IBlockAccess {
if (this.isLoaded(blockposition) && this.N.a(blockposition)) {
try {
@ -483,7 +483,7 @@ index f55bfed..64f82f7 100644
((IUpdatePlayerListBox) tileentity).c();
} catch (Throwable throwable2) {
CrashReport crashreport1 = CrashReport.a(throwable2, "Ticking block entity");
@@ -1367,6 +1377,11 @@ public abstract class World implements IBlockAccess {
@@ -1370,6 +1380,11 @@ public abstract class World implements IBlockAccess {
tileentity.a(crashreportsystemdetails1);
throw new ReportedException(crashreport1);
}
@ -495,7 +495,7 @@ index f55bfed..64f82f7 100644
}
}
@@ -1379,6 +1394,8 @@ public abstract class World implements IBlockAccess {
@@ -1382,6 +1397,8 @@ public abstract class World implements IBlockAccess {
}
}
@ -504,7 +504,7 @@ index f55bfed..64f82f7 100644
this.M = false;
/* CraftBukkit start - Moved up
if (!this.c.isEmpty()) {
@@ -1411,6 +1428,7 @@ public abstract class World implements IBlockAccess {
@@ -1414,6 +1431,7 @@ public abstract class World implements IBlockAccess {
this.b.clear();
}
@ -512,7 +512,7 @@ index f55bfed..64f82f7 100644
this.methodProfiler.b();
this.methodProfiler.b();
}
@@ -1455,6 +1473,7 @@ public abstract class World implements IBlockAccess {
@@ -1458,6 +1476,7 @@ public abstract class World implements IBlockAccess {
// CraftBukkit start - Use neighbor cache instead of looking up
Chunk startingChunk = this.getChunkIfLoaded(i >> 4, j >> 4);
if (!flag || (startingChunk != null && startingChunk.areNeighborsLoaded(2)) /* this.isAreaLoaded(i - b0, 0, j - b0, i + b0, 0, j + b0) */) {
@ -520,7 +520,7 @@ index f55bfed..64f82f7 100644
// CraftBukkit end
entity.P = entity.locX;
entity.Q = entity.locY;
@@ -1518,6 +1537,7 @@ public abstract class World implements IBlockAccess {
@@ -1521,6 +1540,7 @@ public abstract class World implements IBlockAccess {
}
}

View File

@ -1,14 +1,14 @@
From 269f042d8786398dd5ba465f17e9a6b227ae1d60 Mon Sep 17 00:00:00 2001
From e9ae4657eb2390dd241396f299648c23a220d9e5 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sun, 3 Feb 2013 09:20:19 +1100
Subject: [PATCH] Handle Null Tile Entities
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 64f82f7..486ee68 100644
index b831e55..0733a89 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1362,6 +1362,13 @@ public abstract class World implements IBlockAccess {
@@ -1365,6 +1365,13 @@ public abstract class World implements IBlockAccess {
while (iterator.hasNext()) {
TileEntity tileentity = (TileEntity) iterator.next();

View File

@ -1,4 +1,4 @@
From 78c7eb45e0a73906cb57ee0b183e299aee580b91 Mon Sep 17 00:00:00 2001
From 58b4b6dfe07e76eeb461b91a600d84446639265f Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sun, 3 Feb 2013 05:10:21 -0500
Subject: [PATCH] Entity Activation Range
@ -196,10 +196,10 @@ index 24aaec5..e90ff2f 100644
public void G() {
this.damageEntity(DamageSource.OUT_OF_WORLD, Float.MAX_VALUE);
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 486ee68..2e96398 100644
index 0733a89..2758a1d 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1303,6 +1303,7 @@ public abstract class World implements IBlockAccess {
@@ -1306,6 +1306,7 @@ public abstract class World implements IBlockAccess {
this.g.clear();
this.methodProfiler.c("regular");
@ -207,7 +207,7 @@ index 486ee68..2e96398 100644
timings.entityTick.startTiming(); // Spigot
// CraftBukkit start - Use field for loop variable
for (this.tickPosition = 0; this.tickPosition < this.entityList.size(); ++this.tickPosition) {
@@ -1477,9 +1478,11 @@ public abstract class World implements IBlockAccess {
@@ -1480,9 +1481,11 @@ public abstract class World implements IBlockAccess {
int j = MathHelper.floor(entity.locZ);
byte b0 = 32;

View File

@ -1,14 +1,14 @@
From 7230fb058e223a98656be635d9df294b09850a19 Mon Sep 17 00:00:00 2001
From 2c876eaa56238bb700198294c30c4ba6109be97c Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Mon, 4 Mar 2013 18:45:52 +1100
Subject: [PATCH] PlayerItemDamageEvent
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
index 25c6877..62b2136 100644
index b966307..4976174 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -324,6 +324,11 @@ public final class ItemStack {
@@ -330,6 +330,11 @@ public final class ItemStack {
}
public boolean isDamaged(int i, Random random) {
@ -20,7 +20,7 @@ index 25c6877..62b2136 100644
if (!this.e()) {
return false;
} else {
@@ -338,7 +343,16 @@ public final class ItemStack {
@@ -344,7 +349,16 @@ public final class ItemStack {
}
i -= k;
@ -38,7 +38,7 @@ index 25c6877..62b2136 100644
return false;
}
}
@@ -351,7 +365,7 @@ public final class ItemStack {
@@ -357,7 +371,7 @@ public final class ItemStack {
public void damage(int i, EntityLiving entityliving) {
if (!(entityliving instanceof EntityHuman) || !((EntityHuman) entityliving).abilities.canInstantlyBuild) {
if (this.e()) {

View File

@ -1,14 +1,14 @@
From e29f11efa7283205faa6af14ebdfc716ce72ca14 Mon Sep 17 00:00:00 2001
From 5f13de821399a3edf4c2248058841defef030bf6 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Sat, 22 Jun 2013 16:12:02 +1000
Subject: [PATCH] Allow Disabling of Random Lighting Updates
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 633af1d..0bc0dce 100644
index cd206f6..f75bd24 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -1013,7 +1013,7 @@ public class Chunk {
@@ -1021,7 +1021,7 @@ public class Chunk {
}
this.p = true;
@ -18,10 +18,10 @@ index 633af1d..0bc0dce 100644
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 2e96398..dda2853 100644
index 2758a1d..3218138 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -2071,7 +2071,7 @@ public abstract class World implements IBlockAccess {
@@ -2088,7 +2088,7 @@ public abstract class World implements IBlockAccess {
}
this.methodProfiler.a("playerCheckLight");

View File

@ -1,4 +1,4 @@
From 682ecbd7928f83c0604da582d3fc965bd4a98fde Mon Sep 17 00:00:00 2001
From 38117f2f0ee270dd3242749d0b3f0f4c19e0d544 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Thu, 27 Jun 2013 17:26:09 +1000
Subject: [PATCH] Properly Close Inventories
@ -6,10 +6,10 @@ Subject: [PATCH] Properly Close Inventories
Properly close inventories when unloading and switching worlds.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 0bc0dce..a17aa1d 100644
index f75bd24..08cf30e 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -822,6 +822,18 @@ public class Chunk {
@@ -830,6 +830,18 @@ public class Chunk {
while (iterator.hasNext()) {
TileEntity tileentity = (TileEntity) iterator.next();
@ -28,7 +28,7 @@ index 0bc0dce..a17aa1d 100644
this.world.b(tileentity);
}
@@ -832,6 +844,18 @@ public class Chunk {
@@ -840,6 +852,18 @@ public class Chunk {
java.util.Iterator<Entity> iter = newList.iterator();
while (iter.hasNext()) {
Entity entity = iter.next();

View File

@ -1,14 +1,14 @@
From 31992935ee360dd1757af14e842d68a02a485807 Mon Sep 17 00:00:00 2001
From c7db17e4abe5169836622144425dc1dc165b15cb Mon Sep 17 00:00:00 2001
From: Thinkofdeath <thethinkofdeath@gmail.com>
Date: Mon, 2 Dec 2013 23:42:09 +0000
Subject: [PATCH] Fix some chunks not being sent to the client
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index a17aa1d..bcb6683 100644
index 08cf30e..6e5fe05 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -1055,7 +1055,15 @@ public class Chunk {
@@ -1063,7 +1063,15 @@ public class Chunk {
}
public boolean isReady() {

View File

@ -1,4 +1,4 @@
From 74c386f2e37c5b978452431e35a04b47fff811d2 Mon Sep 17 00:00:00 2001
From 0e8505239a1fb379830bfa7b713b18d91e2b7236 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Thu, 16 May 2013 18:51:05 +1000
Subject: [PATCH] Orebfuscator
@ -91,10 +91,10 @@ index 0301fba..7a84a95 100644
public void a(BlockPosition blockposition) {
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index dda2853..e94a89e 100644
index 3218138..b168454 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -494,6 +494,7 @@ public abstract class World implements IBlockAccess {
@@ -497,6 +497,7 @@ public abstract class World implements IBlockAccess {
this.d(blockposition.up(), block);
this.d(blockposition.north(), block);
this.d(blockposition.south(), block);
@ -102,7 +102,7 @@ index dda2853..e94a89e 100644
}
public void a(BlockPosition blockposition, Block block, EnumDirection enumdirection) {
@@ -719,9 +720,16 @@ public abstract class World implements IBlockAccess {
@@ -722,9 +723,16 @@ public abstract class World implements IBlockAccess {
return this.worldProvider.p()[this.getLightLevel(blockposition)];
}

View File

@ -1,14 +1,14 @@
From 05690a789775788614917ada908082cf11603161 Mon Sep 17 00:00:00 2001
From 50ccd1d1649e24297b5234add2392c2510da8ac4 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Tue, 11 Jun 2013 12:17:37 +1000
Subject: [PATCH] More Efficient GetCubes
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index e94a89e..e7a2803 100644
index b168454..308e418 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1101,28 +1101,56 @@ public abstract class World implements IBlockAccess {
@@ -1104,28 +1104,56 @@ public abstract class World implements IBlockAccess {
IBlockData iblockdata = Blocks.STONE.getBlockData();
BlockPosition.MutableBlockPosition blockposition_mutableblockposition = new BlockPosition.MutableBlockPosition();

View File

@ -1,14 +1,14 @@
From 84daed6644e5628abf26b64f6e670e7f18297ced Mon Sep 17 00:00:00 2001
From f3a5324fb09a3c31c6ce755d77b46d087cb696bc Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Fri, 10 Jan 2014 15:15:50 +1100
Subject: [PATCH] Fix ItemStack Unbreakable Code
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
index 62b2136..4b33dbd 100644
index 4976174..bbe816c 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -272,7 +272,13 @@ public final class ItemStack {
@@ -278,7 +278,13 @@ public final class ItemStack {
}
public boolean e() {

View File

@ -1,4 +1,4 @@
From 0d795dbf31bfd057ffb8e290a2795924455290f1 Mon Sep 17 00:00:00 2001
From 1c3c37f03d4a728e40b1c4afecb2c3b1f9ef281b Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Sun, 12 Jan 2014 21:07:18 +1100
Subject: [PATCH] Improve AutoSave Mechanism
@ -11,10 +11,10 @@ Instead we will mimic the save-all command in its behaviour, which is both safe
Also, only save modified chunks, or chunks with entities after 4 auto save passes
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index bcb6683..109b657 100644
index 6e5fe05..db7f6bc 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -936,7 +936,7 @@ public class Chunk {
@@ -944,7 +944,7 @@ public class Chunk {
if (this.r && this.world.getTime() != this.lastSaved || this.q) {
return true;
}

View File

@ -1,14 +1,14 @@
From 41083c1e7274904a1d4487610d44a9611c6968b1 Mon Sep 17 00:00:00 2001
From a2f1f25f44b2b65f1f28958bc3b09b465a585213 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Mon, 10 Mar 2014 09:03:28 +1100
Subject: [PATCH] Guard Entity List
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index e7a2803..8d6aa7a 100644
index 308e418..ecdebeb 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -34,7 +34,32 @@ public abstract class World implements IBlockAccess {
@@ -37,7 +37,32 @@ public abstract class World implements IBlockAccess {
private int a = 63;
protected boolean e;
@ -42,7 +42,7 @@ index e7a2803..8d6aa7a 100644
protected final List<Entity> g = Lists.newArrayList();
public final List<TileEntity> h = Lists.newArrayList();
public final List<TileEntity> tileEntityList = Lists.newArrayList();
@@ -102,6 +127,7 @@ public abstract class World implements IBlockAccess {
@@ -105,6 +130,7 @@ public abstract class World implements IBlockAccess {
private int tickPosition;
// Spigot start
@ -50,7 +50,7 @@ index e7a2803..8d6aa7a 100644
protected final gnu.trove.map.hash.TLongShortHashMap chunkTickList;
protected float growthOdds = 100;
protected float modifiedOdds = 100;
@@ -1341,6 +1367,7 @@ public abstract class World implements IBlockAccess {
@@ -1344,6 +1370,7 @@ public abstract class World implements IBlockAccess {
org.spigotmc.ActivationRange.activateEntities(this); // Spigot
timings.entityTick.startTiming(); // Spigot
@ -58,7 +58,7 @@ index e7a2803..8d6aa7a 100644
// CraftBukkit start - Use field for loop variable
for (this.tickPosition = 0; this.tickPosition < this.entityList.size(); ++this.tickPosition) {
entity = (Entity) this.entityList.get(this.tickPosition);
@@ -1377,12 +1404,15 @@ public abstract class World implements IBlockAccess {
@@ -1380,12 +1407,15 @@ public abstract class World implements IBlockAccess {
this.getChunkAt(j, k).b(entity);
}

View File

@ -1,4 +1,4 @@
From f7c679145cbad061ad38ddbae66acd237f283799 Mon Sep 17 00:00:00 2001
From 35bfd36fe3a58d003058f45666d66b23d2c307a1 Mon Sep 17 00:00:00 2001
From: Thinkofdeath <thethinkofdeath@gmail.com>
Date: Tue, 14 Jan 2014 20:11:25 +0000
Subject: [PATCH] Fix ConcurrentModificationException while being idle kicked
@ -6,10 +6,10 @@ Subject: [PATCH] Fix ConcurrentModificationException while being idle kicked
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 8d6aa7a..3c4c0fe 100644
index ecdebeb..776830a 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1090,6 +1090,7 @@ public abstract class World implements IBlockAccess {
@@ -1093,6 +1093,7 @@ public abstract class World implements IBlockAccess {
this.everyoneSleeping();
}
@ -17,7 +17,7 @@ index 8d6aa7a..3c4c0fe 100644
int i = entity.ae;
int j = entity.ag;
@@ -1106,6 +1107,7 @@ public abstract class World implements IBlockAccess {
@@ -1109,6 +1110,7 @@ public abstract class World implements IBlockAccess {
this.entityList.remove(index);
}
// CraftBukkit end

View File

@ -1,14 +1,14 @@
From 27a8e021352f1fc873ed315a64bef483a8cfa87a Mon Sep 17 00:00:00 2001
From df7a4228114d335deefe40b4d7412b8ebf50dbd1 Mon Sep 17 00:00:00 2001
From: David <dmck2b@gmail.com>
Date: Mon, 21 Apr 2014 12:43:08 +0100
Subject: [PATCH] Prevent NoClassDefError crash and notify on crash
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 3c4c0fe..a53c59e 100644
index 776830a..1507117 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -132,6 +132,8 @@ public abstract class World implements IBlockAccess {
@@ -135,6 +135,8 @@ public abstract class World implements IBlockAccess {
protected float growthOdds = 100;
protected float modifiedOdds = 100;
private final byte chunkTickRadius;
@ -17,7 +17,7 @@ index 3c4c0fe..a53c59e 100644
public static long chunkToKey(int x, int z)
{
@@ -567,6 +569,9 @@ public abstract class World implements IBlockAccess {
@@ -570,6 +572,9 @@ public abstract class World implements IBlockAccess {
}
// CraftBukkit end
iblockdata.getBlock().doPhysics(this, blockposition, iblockdata, block);

View File

@ -1,14 +1,14 @@
From 47f544b2d6dbc76e02c6e446e72ae825c04f0555 Mon Sep 17 00:00:00 2001
From e0775a83d8d6e9c9df2920ee88762a4342a610a8 Mon Sep 17 00:00:00 2001
From: "Evan A. Haskell" <eah2119@gmail.com>
Date: Thu, 26 Jun 2014 18:37:29 -0400
Subject: [PATCH] Fix Null Tile Entity Worlds
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index a53c59e..99b81b5 100644
index 1507117..4a92bd0 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1927,6 +1927,7 @@ public abstract class World implements IBlockAccess {
@@ -1944,6 +1944,7 @@ public abstract class World implements IBlockAccess {
}
}

View File

@ -1,4 +1,4 @@
From 7f4baabb2496489826be226ef4ed583de3ca7c22 Mon Sep 17 00:00:00 2001
From ffc0ccf4ee920c82b760bed086dc176b3b07a3ee Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Fri, 8 Aug 2014 19:57:03 +1000
Subject: [PATCH] Plug WorldMap Memory Leak
@ -18,10 +18,10 @@ index 4b8d548..451f481 100644
public PersistentCollection(IDataManager idatamanager) {
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 99b81b5..ba5f1db 100644
index 4a92bd0..8aace28 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1081,6 +1081,23 @@ public abstract class World implements IBlockAccess {
@@ -1084,6 +1084,23 @@ public abstract class World implements IBlockAccess {
entity.die();
if (entity instanceof EntityHuman) {
this.players.remove(entity);

View File

@ -1,11 +1,11 @@
From 85a19c23ec2e95de28cb094814b9c24b9f44878e Mon Sep 17 00:00:00 2001
From 32510863cbbd124bae1daeff599e7348519f8f88 Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Fri, 20 Feb 2015 21:33:36 +1100
Subject: [PATCH] Use Standard List for EntitySlices.
diff --git a/src/main/java/net/minecraft/server/Chunk.java b/src/main/java/net/minecraft/server/Chunk.java
index 109b657..d70f979 100644
index db7f6bc..2141126 100644
--- a/src/main/java/net/minecraft/server/Chunk.java
+++ b/src/main/java/net/minecraft/server/Chunk.java
@@ -31,7 +31,7 @@ public class Chunk {
@ -35,7 +35,7 @@ index 109b657..d70f979 100644
}
// CraftBukkit end */
@@ -918,12 +918,12 @@ public class Chunk {
@@ -926,12 +926,12 @@ public class Chunk {
j = MathHelper.clamp(j, 0, this.entitySlices.length - 1);
for (int k = i; k <= j; ++k) {
@ -50,7 +50,7 @@ index 109b657..d70f979 100644
list.add((T) entity); // Fix decompile error
}
}
@@ -1303,7 +1303,7 @@ public class Chunk {
@@ -1311,7 +1311,7 @@ public class Chunk {
return this.tileEntities;
}

View File

@ -1,4 +1,4 @@
From bc129e3ad9c9823db73c7c4ade4ca55131b0a5b7 Mon Sep 17 00:00:00 2001
From a9ae7cd20557f3d028a276b487cfab1872c33cee Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Fri, 20 Feb 2015 21:39:31 +1100
Subject: [PATCH] Allow Capping (Tile)Entity Tick Time.
@ -10,10 +10,10 @@ For tiles there is very little tradeoff for this option, as tile ticks are based
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
index ba5f1db..3c89c0d 100644
index 8aace28..0731d42 100644
--- a/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 {
@@ -137,6 +137,9 @@ public abstract class World implements IBlockAccess {
private final byte chunkTickRadius;
public static boolean haveWeSilencedAPhysicsCrash;
public static String blockLocation;
@ -23,7 +23,7 @@ index ba5f1db..3c89c0d 100644
public static long chunkToKey(int x, int z)
{
@@ -222,6 +225,8 @@ public abstract class World implements IBlockAccess {
@@ -225,6 +228,8 @@ public abstract class World implements IBlockAccess {
this.getServer().addWorld(this.world);
// CraftBukkit end
timings = new SpigotTimings.WorldTimingsHandler(this); // Spigot - code below can generate new world and access timings
@ -32,7 +32,7 @@ index ba5f1db..3c89c0d 100644
}
public World b() {
@@ -1393,7 +1398,12 @@ public abstract class World implements IBlockAccess {
@@ -1396,7 +1401,12 @@ public abstract class World implements IBlockAccess {
timings.entityTick.startTiming(); // Spigot
guardEntityList = true; // Spigot
// CraftBukkit start - Use field for loop variable
@ -46,7 +46,7 @@ index ba5f1db..3c89c0d 100644
entity = (Entity) this.entityList.get(this.tickPosition);
// CraftBukkit end
if (entity.vehicle != null) {
@@ -1449,14 +1459,18 @@ public abstract class World implements IBlockAccess {
@@ -1452,14 +1462,18 @@ public abstract class World implements IBlockAccess {
this.c.clear();
}
// CraftBukkit end
@ -69,7 +69,7 @@ index ba5f1db..3c89c0d 100644
continue;
}
// Spigot end
@@ -1484,7 +1498,7 @@ public abstract class World implements IBlockAccess {
@@ -1487,7 +1501,7 @@ public abstract class World implements IBlockAccess {
}
if (tileentity.x()) {

View File

@ -1,4 +1,4 @@
From f77927deb4acc0d5f8bf0f4ab833fe8b673b86bd Mon Sep 17 00:00:00 2001
From f98ff94fa3783823cb178968299c91e1dee7991e Mon Sep 17 00:00:00 2001
From: md_5 <git@md-5.net>
Date: Sun, 22 Feb 2015 12:27:40 +1100
Subject: [PATCH] Use FastMatches for ItemStack Dirty Check
@ -35,10 +35,10 @@ index 9c53acd..3e29730 100644
}
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
index 4b33dbd..de60437 100644
index bbe816c..9a7c7cb 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -440,6 +440,18 @@ public final class ItemStack {
@@ -446,6 +446,18 @@ public final class ItemStack {
return itemstack == null && itemstack1 == null ? true : (itemstack != null && itemstack1 != null ? (itemstack.tag == null && itemstack1.tag != null ? false : itemstack.tag == null || itemstack.tag.equals(itemstack1.tag)) : false);
}