10 years later...

This commit is contained in:
md_5 2013-01-28 09:46:19 +11:00
parent a645cd688d
commit 2124e746b7
6 changed files with 43 additions and 43 deletions

View file

@ -1,4 +1,4 @@
From 773d5d2e6c47548c120cb5c33619964136a384e5 Mon Sep 17 00:00:00 2001
From 1f766e4a465e4eed65061fd7a908ea22e8c0d6fa Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Tue, 22 Jan 2013 15:56:54 +1100
Subject: [PATCH] Spigot changes.
@ -163,13 +163,13 @@ index 79a007c..0bc7882 100644
int j1 = j + random.nextInt(5) - 3;
int k1 = k + random.nextInt(3) - 1;
diff --git a/src/main/java/net/minecraft/server/BlockMushroom.java b/src/main/java/net/minecraft/server/BlockMushroom.java
index 38fac4c..4ff3111 100644
index db90874..9647bb2 100644
--- a/src/main/java/net/minecraft/server/BlockMushroom.java
+++ b/src/main/java/net/minecraft/server/BlockMushroom.java
@@ -23,7 +23,7 @@ public class BlockMushroom extends BlockFlower {
}
@@ -24,7 +24,7 @@ public class BlockMushroom extends BlockFlower {
public void b(World world, int i, int j, int k, Random random) {
final int sourceX = i, sourceY = j, sourceZ = k; // CraftBukkit
- if (random.nextInt(25) == 0) {
+ if (random.nextInt((int) (world.growthOdds * 100 / world.getWorld().mushroomGrowthModifier * 25)) == 0) { // Spigot
byte b0 = 4;
@ -714,10 +714,10 @@ index 0686ba0..58d30eb 100644
URL url = new URL("http://session.minecraft.net/game/checkserver.jsp?user=" + URLEncoder.encode(PendingConnection.d(this.pendingConnection), "UTF-8") + "&serverId=" + URLEncoder.encode(s, "UTF-8"));
BufferedReader bufferedreader = new BufferedReader(new InputStreamReader(url.openStream()));
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index e2fd0df..5a01944 100644
index c3dc4a4..9906b9e 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -64,7 +64,7 @@ public abstract class World implements IBlockAccess {
@@ -65,7 +65,7 @@ public abstract class World implements IBlockAccess {
// CraftBukkit start - public, longhashset
public boolean allowMonsters = true;
public boolean allowAnimals = true;
@ -726,7 +726,7 @@ index e2fd0df..5a01944 100644
public long ticksPerAnimalSpawns;
public long ticksPerMonsterSpawns;
// CraftBukkit end
@@ -72,7 +72,20 @@ public abstract class World implements IBlockAccess {
@@ -73,7 +73,20 @@ public abstract class World implements IBlockAccess {
int[] H;
private List O;
public boolean isStatic;
@ -747,7 +747,7 @@ index e2fd0df..5a01944 100644
public BiomeBase getBiome(int i, int j) {
if (this.isLoaded(i, 0, j)) {
Chunk chunk = this.getChunkAtWorldCoords(i, j);
@@ -98,6 +111,7 @@ public abstract class World implements IBlockAccess {
@@ -99,6 +112,7 @@ public abstract class World implements IBlockAccess {
int lastXAccessed = Integer.MIN_VALUE;
int lastZAccessed = Integer.MIN_VALUE;
final Object chunkLock = new Object();
@ -755,7 +755,7 @@ index e2fd0df..5a01944 100644
public CraftWorld getWorld() {
return this.world;
@@ -110,11 +124,18 @@ public abstract class World implements IBlockAccess {
@@ -111,11 +125,18 @@ public abstract class World implements IBlockAccess {
// Changed signature
public World(IDataManager idatamanager, String s, WorldSettings worldsettings, WorldProvider worldprovider, MethodProfiler methodprofiler, ChunkGenerator gen, org.bukkit.World.Environment env) {
this.generator = gen;
@ -774,7 +774,7 @@ index e2fd0df..5a01944 100644
this.N = this.random.nextInt(12000);
this.H = new int['\u8000'];
this.O = new UnsafeList(); // CraftBukkit - ArrayList -> UnsafeList
@@ -122,7 +143,7 @@ public abstract class World implements IBlockAccess {
@@ -123,7 +144,7 @@ public abstract class World implements IBlockAccess {
this.dataManager = idatamanager;
this.methodProfiler = methodprofiler;
this.worldMaps = new WorldMapCollection(idatamanager);
@ -783,7 +783,7 @@ index e2fd0df..5a01944 100644
if (worldprovider != null) {
this.worldProvider = worldprovider;
} else if (this.worldData != null && this.worldData.j() != 0) {
@@ -903,6 +924,47 @@ public abstract class World implements IBlockAccess {
@@ -901,6 +922,47 @@ public abstract class World implements IBlockAccess {
event = CraftEventFactory.callCreatureSpawnEvent((EntityLiving) entity, spawnReason);
} else if (entity instanceof EntityItem) {
event = CraftEventFactory.callItemSpawnEvent((EntityItem) entity);
@ -831,7 +831,7 @@ index e2fd0df..5a01944 100644
} else if (entity.getBukkitEntity() instanceof org.bukkit.entity.Projectile) {
// Not all projectiles extend EntityProjectile, so check for Bukkit interface instead
event = CraftEventFactory.callProjectileLaunchEvent(entity);
@@ -995,6 +1057,39 @@ public abstract class World implements IBlockAccess {
@@ -993,6 +1055,39 @@ public abstract class World implements IBlockAccess {
int i1 = MathHelper.floor(axisalignedbb.c);
int j1 = MathHelper.floor(axisalignedbb.f + 1.0D);
@ -871,7 +871,7 @@ index e2fd0df..5a01944 100644
for (int k1 = i; k1 < j; ++k1) {
for (int l1 = i1; l1 < j1; ++l1) {
if (this.isLoaded(k1, 64, l1)) {
@@ -1008,6 +1103,7 @@ public abstract class World implements IBlockAccess {
@@ -1006,6 +1101,7 @@ public abstract class World implements IBlockAccess {
}
}
}
@ -879,7 +879,7 @@ index e2fd0df..5a01944 100644
double d0 = 0.25D;
List list = this.getEntities(entity, axisalignedbb.grow(d0, d0, d0));
@@ -1315,7 +1411,37 @@ public abstract class World implements IBlockAccess {
@@ -1313,7 +1409,37 @@ public abstract class World implements IBlockAccess {
this.entityJoinedWorld(entity, true);
}
@ -918,7 +918,7 @@ index e2fd0df..5a01944 100644
int i = MathHelper.floor(entity.locX);
int j = MathHelper.floor(entity.locZ);
byte b0 = 32;
@@ -1896,6 +2022,11 @@ public abstract class World implements IBlockAccess {
@@ -1894,6 +2020,11 @@ public abstract class World implements IBlockAccess {
this.worldData.setWeatherDuration(1);
}
@ -930,7 +930,7 @@ index e2fd0df..5a01944 100644
protected void z() {
// this.chunkTickList.clear(); // CraftBukkit - removed
this.methodProfiler.a("buildList");
@@ -1905,25 +2036,42 @@ public abstract class World implements IBlockAccess {
@@ -1903,25 +2034,42 @@ public abstract class World implements IBlockAccess {
int j;
int k;
@ -987,7 +987,7 @@ index e2fd0df..5a01944 100644
this.methodProfiler.b();
if (this.N > 0) {
@@ -1931,7 +2079,7 @@ public abstract class World implements IBlockAccess {
@@ -1929,7 +2077,7 @@ public abstract class World implements IBlockAccess {
}
this.methodProfiler.a("playerCheckLight");
@ -996,7 +996,7 @@ index e2fd0df..5a01944 100644
i = this.random.nextInt(this.players.size());
entityhuman = (EntityHuman) this.players.get(i);
j = MathHelper.floor(entityhuman.locX) + this.random.nextInt(11) - 5;
@@ -1970,9 +2118,16 @@ public abstract class World implements IBlockAccess {
@@ -1968,9 +2116,16 @@ public abstract class World implements IBlockAccess {
chunk.o();
}
@ -1013,7 +1013,7 @@ index e2fd0df..5a01944 100644
public boolean w(int i, int j, int k) {
return this.c(i, j, k, false);
@@ -2310,7 +2465,10 @@ public abstract class World implements IBlockAccess {
@@ -2308,7 +2463,10 @@ public abstract class World implements IBlockAccess {
}
public List getEntities(Entity entity, AxisAlignedBB axisalignedbb) {
@ -1025,7 +1025,7 @@ index e2fd0df..5a01944 100644
int i = MathHelper.floor((axisalignedbb.a - 2.0D) / 16.0D);
int j = MathHelper.floor((axisalignedbb.d + 2.0D) / 16.0D);
int k = MathHelper.floor((axisalignedbb.c - 2.0D) / 16.0D);
@@ -2319,12 +2477,12 @@ public abstract class World implements IBlockAccess {
@@ -2317,12 +2475,12 @@ public abstract class World implements IBlockAccess {
for (int i1 = i; i1 <= j; ++i1) {
for (int j1 = k; j1 <= l; ++j1) {
if (this.isChunkLoaded(i1, j1)) {

View file

@ -1,4 +1,4 @@
From 41511c81fdae75c5daa04dca85051ddfa83a1b0c Mon Sep 17 00:00:00 2001
From 5c745b48d2a4917947844408f63a581d5f626fb0 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@bigpond.com>
Date: Sun, 23 Dec 2012 17:51:07 +1100
Subject: [PATCH] Update item merge logic
@ -8,10 +8,10 @@ Subject: [PATCH] Update item merge logic
1 file changed, 7 insertions(+), 8 deletions(-)
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 5a01944..28ce1d7 100644
index 9906b9e..1e36467 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -926,6 +926,7 @@ public abstract class World implements IBlockAccess {
@@ -924,6 +924,7 @@ public abstract class World implements IBlockAccess {
event = CraftEventFactory.callItemSpawnEvent((EntityItem) entity);
// Spigot start
ItemStack item = ((EntityItem) entity).getItemStack();
@ -19,7 +19,7 @@ index 5a01944..28ce1d7 100644
int maxSize = item.getMaxStackSize();
if (item.count < maxSize) {
double radius = this.getWorld().itemMergeRadius;
@@ -935,14 +936,12 @@ public abstract class World implements IBlockAccess {
@@ -933,14 +934,12 @@ public abstract class World implements IBlockAccess {
if (e instanceof EntityItem) {
EntityItem loopItem = (EntityItem) e;
ItemStack loopStack = loopItem.getItemStack();

View file

@ -1,4 +1,4 @@
From 383d4ee7388ec2e58dee08aa2338746459f82d15 Mon Sep 17 00:00:00 2001
From 25d363d1f0fdc54987a6d6bc6f06eb53c6129637 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Fri, 11 Jan 2013 11:08:45 -0500
Subject: [PATCH] Fix various crop growth modifier formula issues
@ -55,13 +55,13 @@ index 0bc7882..bf117bc 100644
int j1 = j + random.nextInt(5) - 3;
int k1 = k + random.nextInt(3) - 1;
diff --git a/src/main/java/net/minecraft/server/BlockMushroom.java b/src/main/java/net/minecraft/server/BlockMushroom.java
index 8fa8302..a172ba2 100644
index 9647bb2..ffe9778 100644
--- a/src/main/java/net/minecraft/server/BlockMushroom.java
+++ b/src/main/java/net/minecraft/server/BlockMushroom.java
@@ -23,7 +23,7 @@ public class BlockMushroom extends BlockFlower {
}
@@ -24,7 +24,7 @@ public class BlockMushroom extends BlockFlower {
public void b(World world, int i, int j, int k, Random random) {
final int sourceX = i, sourceY = j, sourceZ = k; // CraftBukkit
- if (random.nextInt((int) (world.growthOdds * 100 / world.getWorld().mushroomGrowthModifier * 25)) == 0) { // Spigot
+ if (random.nextInt(Math.max(1, (int) world.growthOdds / world.getWorld().mushroomGrowthModifier * 25)) == 0) { // Spigot
byte b0 = 4;

View file

@ -1,4 +1,4 @@
From d1e42f45b53d9af605000319340b2a160e205e35 Mon Sep 17 00:00:00 2001
From 3b1fe146746b93011b0a7bab56281160f6461cd1 Mon Sep 17 00:00:00 2001
From: Mike Primm <mike@primmhome.com>
Date: Wed, 16 Jan 2013 15:27:22 -0600
Subject: [PATCH] Alternate, sync-free-but-safe chunk reference cache
@ -8,10 +8,10 @@ Subject: [PATCH] Alternate, sync-free-but-safe chunk reference cache
1 file changed, 6 insertions(+), 8 deletions(-)
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 28ce1d7..39e6110 100644
index 1e36467..e2426bc 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -296,15 +296,13 @@ public abstract class World implements IBlockAccess {
@@ -297,15 +297,13 @@ public abstract class World implements IBlockAccess {
// CraftBukkit start
public Chunk getChunkAt(int i, int j) {

View file

@ -1,4 +1,4 @@
From 5cfd2fa15e41201cc36959046d6a1c5ac860b265 Mon Sep 17 00:00:00 2001
From 8de0c8dfd462f4023fb85beb91afe4cf33d7ab30 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 10 Jan 2013 00:18:11 -0500
Subject: [PATCH] Add Custom Timings to various points
@ -210,7 +210,7 @@ index 43a24f5..7ca0acf 100644
/* CraftBukkit start - No longer needed as we have already handled it in server.dispatchServerCommand above.
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 39e6110..46e8d11 100644
index e2426bc..9b7bc02 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -14,6 +14,7 @@ import java.util.concurrent.Callable;
@ -221,7 +221,7 @@ index 39e6110..46e8d11 100644
import org.bukkit.generator.ChunkGenerator;
import org.bukkit.craftbukkit.CraftServer;
import org.bukkit.craftbukkit.CraftWorld;
@@ -113,6 +114,7 @@ public abstract class World implements IBlockAccess {
@@ -114,6 +115,7 @@ public abstract class World implements IBlockAccess {
final Object chunkLock = new Object();
private byte chunkTickRadius;
@ -229,7 +229,7 @@ index 39e6110..46e8d11 100644
public CraftWorld getWorld() {
return this.world;
}
@@ -192,6 +194,7 @@ public abstract class World implements IBlockAccess {
@@ -193,6 +195,7 @@ public abstract class World implements IBlockAccess {
this.a();
this.getServer().addWorld(this.world); // CraftBukkit
@ -237,7 +237,7 @@ index 39e6110..46e8d11 100644
}
protected abstract IChunkProvider j();
@@ -1206,6 +1209,7 @@ public abstract class World implements IBlockAccess {
@@ -1204,6 +1207,7 @@ public abstract class World implements IBlockAccess {
CrashReport crashreport;
CrashReportSystemDetails crashreportsystemdetails;
@ -245,7 +245,7 @@ index 39e6110..46e8d11 100644
for (i = 0; i < this.i.size(); ++i) {
entity = (Entity) this.i.get(i);
// CraftBukkit start - fixed an NPE, don't process entities in chunks queued for unload
@@ -1260,7 +1264,9 @@ public abstract class World implements IBlockAccess {
@@ -1258,7 +1262,9 @@ public abstract class World implements IBlockAccess {
this.f.clear();
this.methodProfiler.c("regular");
@ -255,7 +255,7 @@ index 39e6110..46e8d11 100644
for (i = 0; i < this.entityList.size(); ++i) {
entity = (Entity) this.entityList.get(i);
@@ -1313,7 +1319,9 @@ public abstract class World implements IBlockAccess {
@@ -1311,7 +1317,9 @@ public abstract class World implements IBlockAccess {
this.methodProfiler.b();
}
@ -265,7 +265,7 @@ index 39e6110..46e8d11 100644
this.M = true;
Iterator iterator = this.tileEntityList.iterator();
@@ -1392,6 +1400,7 @@ public abstract class World implements IBlockAccess {
@@ -1390,6 +1398,7 @@ public abstract class World implements IBlockAccess {
this.a.clear();
}

View file

@ -1,4 +1,4 @@
From 91a71bd3c047776b164cd9e6cd205cbd9519adb6 Mon Sep 17 00:00:00 2001
From 36b9793a096db8f3a5f726b8792ddd1315a88081 Mon Sep 17 00:00:00 2001
From: md_5 <md_5@live.com.au>
Date: Fri, 25 Jan 2013 18:24:54 +1100
Subject: [PATCH] Better + more flexible itemstack merging
@ -40,10 +40,10 @@ index a7baa0f..5e3ac84 100644
}
} else {
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 46e8d11..b300766 100644
index 9b7bc02..262290f 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -925,31 +925,8 @@ public abstract class World implements IBlockAccess {
@@ -923,31 +923,8 @@ public abstract class World implements IBlockAccess {
event = CraftEventFactory.callCreatureSpawnEvent((EntityLiving) entity, spawnReason);
} else if (entity instanceof EntityItem) {
event = CraftEventFactory.callItemSpawnEvent((EntityItem) entity);
@ -77,7 +77,7 @@ index 46e8d11..b300766 100644
EntityExperienceOrb xp = (EntityExperienceOrb) entity;
double radius = this.getWorld().expMergeRadius;
if (radius > 0) {
@@ -964,8 +941,8 @@ public abstract class World implements IBlockAccess {
@@ -962,8 +939,8 @@ public abstract class World implements IBlockAccess {
}
}
}