Update from upstream SpigotMC
81e4ab71ca4 b023457499d dc776bee32b 116e6fc98dc 2b97a3846f2
Dieser Commit ist enthalten in:
Ursprung
b07fd9dae8
Commit
74110558b2
@ -1,4 +1,4 @@
|
||||
From be6a8aefafe4a6dc34d952b7c0cf860f7136defe Mon Sep 17 00:00:00 2001
|
||||
From aa9d90078891dc1465e5dcb8de265793a377419e 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,7 +6,7 @@ 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 8d3f539..74efc8b 100644
|
||||
index 49f8028..4e6f620 100644
|
||||
--- a/pom.xml
|
||||
+++ b/pom.xml
|
||||
@@ -1,12 +1,12 @@
|
||||
@ -51,7 +51,7 @@ index 8d3f539..74efc8b 100644
|
||||
<version>${project.version}</version>
|
||||
<type>jar</type>
|
||||
<scope>compile</scope>
|
||||
@@ -132,21 +139,39 @@
|
||||
@@ -124,21 +131,39 @@
|
||||
|
||||
<!-- This builds a completely 'ready to start' jar with all dependencies inside -->
|
||||
<build>
|
||||
@ -94,7 +94,7 @@ index 8d3f539..74efc8b 100644
|
||||
<phase>compile</phase>
|
||||
<goals>
|
||||
<goal>gitdescribe</goal>
|
||||
@@ -163,7 +188,7 @@
|
||||
@@ -155,7 +180,7 @@
|
||||
<manifestEntries>
|
||||
<Main-Class>org.bukkit.craftbukkit.Main</Main-Class>
|
||||
<Implementation-Title>CraftBukkit</Implementation-Title>
|
||||
@ -103,7 +103,7 @@ index 8d3f539..74efc8b 100644
|
||||
<Implementation-Vendor>Bukkit Team</Implementation-Vendor>
|
||||
<Specification-Title>Bukkit</Specification-Title>
|
||||
<Specification-Version>${api.version}</Specification-Version>
|
||||
@@ -196,7 +221,7 @@
|
||||
@@ -188,7 +213,7 @@
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-shade-plugin</artifactId>
|
||||
|
@ -1,4 +1,4 @@
|
||||
From aaca00016118455bba4debef407285ea185d2695 Mon Sep 17 00:00:00 2001
|
||||
From 5d54186471e9e6ed231545bf77a35e765e31f8d0 Mon Sep 17 00:00:00 2001
|
||||
From: md_5 <md_5@live.com.au>
|
||||
Date: Sun, 1 Dec 2013 15:10:48 +1100
|
||||
Subject: [PATCH] mc-dev imports
|
||||
@ -141,333 +141,343 @@ index 0000000..b1c6ad3
|
||||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/net/minecraft/server/BiomeDecorator.java b/src/main/java/net/minecraft/server/BiomeDecorator.java
|
||||
new file mode 100644
|
||||
index 0000000..3705410
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/net/minecraft/server/BiomeDecorator.java
|
||||
@@ -0,0 +1,322 @@
|
||||
+package net.minecraft.server;
|
||||
+
|
||||
+import java.util.Random;
|
||||
+
|
||||
+public class BiomeDecorator {
|
||||
+
|
||||
+ protected World a;
|
||||
+ protected Random b;
|
||||
+ protected BlockPosition c;
|
||||
+ protected CustomWorldSettingsFinal d;
|
||||
+ protected WorldGenerator e = new WorldGenClay(4);
|
||||
+ protected WorldGenerator f;
|
||||
+ protected WorldGenerator g;
|
||||
+ protected WorldGenerator h;
|
||||
+ protected WorldGenerator i;
|
||||
+ protected WorldGenerator j;
|
||||
+ protected WorldGenerator k;
|
||||
+ protected WorldGenerator l;
|
||||
+ protected WorldGenerator m;
|
||||
+ protected WorldGenerator n;
|
||||
+ protected WorldGenerator o;
|
||||
+ protected WorldGenerator p;
|
||||
+ protected WorldGenerator q;
|
||||
+ protected WorldGenerator r;
|
||||
+ protected WorldGenFlowers s;
|
||||
+ protected WorldGenerator t;
|
||||
+ protected WorldGenerator u;
|
||||
+ protected WorldGenerator v;
|
||||
+ protected WorldGenerator w;
|
||||
+ protected WorldGenerator x;
|
||||
+ protected WorldGenerator y;
|
||||
+ protected int z;
|
||||
+ protected int A;
|
||||
+ protected int B;
|
||||
+ protected int C;
|
||||
+ protected int D;
|
||||
+ protected int E;
|
||||
+ protected int F;
|
||||
+ protected int G;
|
||||
+ protected int H;
|
||||
+ protected int I;
|
||||
+ protected int J;
|
||||
+ protected int K;
|
||||
+ public boolean L;
|
||||
+
|
||||
+ public BiomeDecorator() {
|
||||
+ this.f = new WorldGenSand(Blocks.SAND, 7);
|
||||
+ this.g = new WorldGenSand(Blocks.GRAVEL, 6);
|
||||
+ this.s = new WorldGenFlowers(Blocks.YELLOW_FLOWER, EnumFlowerVarient.DANDELION);
|
||||
+ this.t = new WorldGenMushrooms(Blocks.BROWN_MUSHROOM);
|
||||
+ this.u = new WorldGenMushrooms(Blocks.RED_MUSHROOM);
|
||||
+ this.v = new WorldGenHugeMushroom();
|
||||
+ this.w = new WorldGenReed();
|
||||
+ this.x = new WorldGenCactus();
|
||||
+ this.y = new WorldGenWaterLily();
|
||||
+ this.B = 2;
|
||||
+ this.C = 1;
|
||||
+ this.H = 1;
|
||||
+ this.I = 3;
|
||||
+ this.J = 1;
|
||||
+ this.L = true;
|
||||
+ }
|
||||
+
|
||||
+ public void a(World world, Random random, BiomeBase biomebase, BlockPosition blockposition) {
|
||||
+ if (this.a != null) {
|
||||
+ throw new RuntimeException("Already decorating");
|
||||
+ } else {
|
||||
+ this.a = world;
|
||||
+ String s = world.getWorldData().getGeneratorOptions();
|
||||
+
|
||||
+ if (s != null) {
|
||||
+ this.d = CustomWorldSettings.a(s).b();
|
||||
+ } else {
|
||||
+ this.d = CustomWorldSettings.a("").b();
|
||||
+ }
|
||||
+
|
||||
+ this.b = random;
|
||||
+ this.c = blockposition;
|
||||
+ this.h = new WorldGenMinable(Blocks.DIRT.getBlockData(), this.d.I);
|
||||
+ this.i = new WorldGenMinable(Blocks.GRAVEL.getBlockData(), this.d.M);
|
||||
+ this.j = new WorldGenMinable(Blocks.STONE.getBlockData().set(BlockStone.VARIANT, EnumStoneVariant.GRANITE), this.d.Q);
|
||||
+ this.k = new WorldGenMinable(Blocks.STONE.getBlockData().set(BlockStone.VARIANT, EnumStoneVariant.DIORITE), this.d.U);
|
||||
+ this.l = new WorldGenMinable(Blocks.STONE.getBlockData().set(BlockStone.VARIANT, EnumStoneVariant.ANDESITE), this.d.Y);
|
||||
+ this.m = new WorldGenMinable(Blocks.COAL_ORE.getBlockData(), this.d.ac);
|
||||
+ this.n = new WorldGenMinable(Blocks.IRON_ORE.getBlockData(), this.d.ag);
|
||||
+ this.o = new WorldGenMinable(Blocks.GOLD_ORE.getBlockData(), this.d.ak);
|
||||
+ this.p = new WorldGenMinable(Blocks.REDSTONE_ORE.getBlockData(), this.d.ao);
|
||||
+ this.q = new WorldGenMinable(Blocks.DIAMOND_ORE.getBlockData(), this.d.as);
|
||||
+ this.r = new WorldGenMinable(Blocks.LAPIS_ORE.getBlockData(), this.d.aw);
|
||||
+ this.a(biomebase);
|
||||
+ this.a = null;
|
||||
+ this.b = null;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ protected void a(BiomeBase biomebase) {
|
||||
+ this.a();
|
||||
+
|
||||
+ int i;
|
||||
+ int j;
|
||||
+ int k;
|
||||
+
|
||||
+ for (i = 0; i < this.I; ++i) {
|
||||
+ j = this.b.nextInt(16) + 8;
|
||||
+ k = this.b.nextInt(16) + 8;
|
||||
+ this.f.generate(this.a, this.b, this.a.r(this.c.a(j, 0, k)));
|
||||
+ }
|
||||
+
|
||||
+ for (i = 0; i < this.J; ++i) {
|
||||
+ j = this.b.nextInt(16) + 8;
|
||||
+ k = this.b.nextInt(16) + 8;
|
||||
+ this.e.generate(this.a, this.b, this.a.r(this.c.a(j, 0, k)));
|
||||
+ }
|
||||
+
|
||||
+ for (i = 0; i < this.H; ++i) {
|
||||
+ j = this.b.nextInt(16) + 8;
|
||||
+ k = this.b.nextInt(16) + 8;
|
||||
+ this.g.generate(this.a, this.b, this.a.r(this.c.a(j, 0, k)));
|
||||
+ }
|
||||
+
|
||||
+ i = this.A;
|
||||
+ if (this.b.nextInt(10) == 0) {
|
||||
+ ++i;
|
||||
+ }
|
||||
+
|
||||
+ int l;
|
||||
+ BlockPosition blockposition;
|
||||
+
|
||||
+ for (j = 0; j < i; ++j) {
|
||||
+ k = this.b.nextInt(16) + 8;
|
||||
+ l = this.b.nextInt(16) + 8;
|
||||
+ WorldGenTreeAbstract worldgentreeabstract = biomebase.a(this.b);
|
||||
+
|
||||
+ worldgentreeabstract.e();
|
||||
+ blockposition = this.a.getHighestBlockYAt(this.c.a(k, 0, l));
|
||||
+ if (worldgentreeabstract.generate(this.a, this.b, blockposition)) {
|
||||
+ worldgentreeabstract.a(this.a, this.b, blockposition);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ for (j = 0; j < this.K; ++j) {
|
||||
+ k = this.b.nextInt(16) + 8;
|
||||
+ l = this.b.nextInt(16) + 8;
|
||||
+ this.v.generate(this.a, this.b, this.a.getHighestBlockYAt(this.c.a(k, 0, l)));
|
||||
+ }
|
||||
+
|
||||
+ int i1;
|
||||
+
|
||||
+ for (j = 0; j < this.B; ++j) {
|
||||
+ k = this.b.nextInt(16) + 8;
|
||||
+ l = this.b.nextInt(16) + 8;
|
||||
+ i1 = this.b.nextInt(this.a.getHighestBlockYAt(this.c.a(k, 0, l)).getY() + 32);
|
||||
+ blockposition = this.c.a(k, i1, l);
|
||||
+ EnumFlowerVarient enumflowervarient = biomebase.a(this.b, blockposition);
|
||||
+ BlockFlowers blockflowers = enumflowervarient.a().a();
|
||||
+
|
||||
+ if (blockflowers.getMaterial() != Material.AIR) {
|
||||
+ this.s.a(blockflowers, enumflowervarient);
|
||||
+ this.s.generate(this.a, this.b, blockposition);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ for (j = 0; j < this.C; ++j) {
|
||||
+ k = this.b.nextInt(16) + 8;
|
||||
+ l = this.b.nextInt(16) + 8;
|
||||
+ i1 = this.b.nextInt(this.a.getHighestBlockYAt(this.c.a(k, 0, l)).getY() * 2);
|
||||
+ biomebase.b(this.b).generate(this.a, this.b, this.c.a(k, i1, l));
|
||||
+ }
|
||||
+
|
||||
+ for (j = 0; j < this.D; ++j) {
|
||||
+ k = this.b.nextInt(16) + 8;
|
||||
+ l = this.b.nextInt(16) + 8;
|
||||
+ i1 = this.b.nextInt(this.a.getHighestBlockYAt(this.c.a(k, 0, l)).getY() * 2);
|
||||
+ (new WorldGenDeadBush()).generate(this.a, this.b, this.c.a(k, i1, l));
|
||||
+ }
|
||||
+
|
||||
+ j = 0;
|
||||
+
|
||||
+ while (j < this.z) {
|
||||
+ k = this.b.nextInt(16) + 8;
|
||||
+ l = this.b.nextInt(16) + 8;
|
||||
+ i1 = this.b.nextInt(this.a.getHighestBlockYAt(this.c.a(k, 0, l)).getY() * 2);
|
||||
+ blockposition = this.c.a(k, i1, l);
|
||||
+
|
||||
+ while (true) {
|
||||
+ if (blockposition.getY() > 0) {
|
||||
+ BlockPosition blockposition1 = blockposition.down();
|
||||
+
|
||||
+ if (this.a.isEmpty(blockposition1)) {
|
||||
+ blockposition = blockposition1;
|
||||
+ continue;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ this.y.generate(this.a, this.b, blockposition);
|
||||
+ ++j;
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ for (j = 0; j < this.E; ++j) {
|
||||
+ if (this.b.nextInt(4) == 0) {
|
||||
+ k = this.b.nextInt(16) + 8;
|
||||
+ l = this.b.nextInt(16) + 8;
|
||||
+ BlockPosition blockposition2 = this.a.getHighestBlockYAt(this.c.a(k, 0, l));
|
||||
+
|
||||
+ this.t.generate(this.a, this.b, blockposition2);
|
||||
+ }
|
||||
+
|
||||
+ if (this.b.nextInt(8) == 0) {
|
||||
+ k = this.b.nextInt(16) + 8;
|
||||
+ l = this.b.nextInt(16) + 8;
|
||||
+ i1 = this.b.nextInt(this.a.getHighestBlockYAt(this.c.a(k, 0, l)).getY() * 2);
|
||||
+ blockposition = this.c.a(k, i1, l);
|
||||
+ this.u.generate(this.a, this.b, blockposition);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ if (this.b.nextInt(4) == 0) {
|
||||
+ j = this.b.nextInt(16) + 8;
|
||||
+ k = this.b.nextInt(16) + 8;
|
||||
+ l = this.b.nextInt(this.a.getHighestBlockYAt(this.c.a(j, 0, k)).getY() * 2);
|
||||
+ this.t.generate(this.a, this.b, this.c.a(j, l, k));
|
||||
+ }
|
||||
+
|
||||
+ if (this.b.nextInt(8) == 0) {
|
||||
+ j = this.b.nextInt(16) + 8;
|
||||
+ k = this.b.nextInt(16) + 8;
|
||||
+ l = this.b.nextInt(this.a.getHighestBlockYAt(this.c.a(j, 0, k)).getY() * 2);
|
||||
+ this.u.generate(this.a, this.b, this.c.a(j, l, k));
|
||||
+ }
|
||||
+
|
||||
+ for (j = 0; j < this.F; ++j) {
|
||||
+ k = this.b.nextInt(16) + 8;
|
||||
+ l = this.b.nextInt(16) + 8;
|
||||
+ i1 = this.b.nextInt(this.a.getHighestBlockYAt(this.c.a(k, 0, l)).getY() * 2);
|
||||
+ this.w.generate(this.a, this.b, this.c.a(k, i1, l));
|
||||
+ }
|
||||
+
|
||||
+ for (j = 0; j < 10; ++j) {
|
||||
+ k = this.b.nextInt(16) + 8;
|
||||
+ l = this.b.nextInt(16) + 8;
|
||||
+ i1 = this.b.nextInt(this.a.getHighestBlockYAt(this.c.a(k, 0, l)).getY() * 2);
|
||||
+ this.w.generate(this.a, this.b, this.c.a(k, i1, l));
|
||||
+ }
|
||||
+
|
||||
+ if (this.b.nextInt(32) == 0) {
|
||||
+ j = this.b.nextInt(16) + 8;
|
||||
+ k = this.b.nextInt(16) + 8;
|
||||
+ l = this.b.nextInt(this.a.getHighestBlockYAt(this.c.a(j, 0, k)).getY() * 2);
|
||||
+ (new WorldGenPumpkin()).generate(this.a, this.b, this.c.a(j, l, k));
|
||||
+ }
|
||||
+
|
||||
+ for (j = 0; j < this.G; ++j) {
|
||||
+ k = this.b.nextInt(16) + 8;
|
||||
+ l = this.b.nextInt(16) + 8;
|
||||
+ i1 = this.b.nextInt(this.a.getHighestBlockYAt(this.c.a(k, 0, l)).getY() * 2);
|
||||
+ this.x.generate(this.a, this.b, this.c.a(k, i1, l));
|
||||
+ }
|
||||
+
|
||||
+ if (this.L) {
|
||||
+ BlockPosition blockposition3;
|
||||
+
|
||||
+ for (j = 0; j < 50; ++j) {
|
||||
+ blockposition3 = this.c.a(this.b.nextInt(16) + 8, this.b.nextInt(this.b.nextInt(248) + 8), this.b.nextInt(16) + 8);
|
||||
+ (new WorldGenLiquids(Blocks.FLOWING_WATER)).generate(this.a, this.b, blockposition3);
|
||||
+ }
|
||||
+
|
||||
+ for (j = 0; j < 20; ++j) {
|
||||
+ blockposition3 = this.c.a(this.b.nextInt(16) + 8, this.b.nextInt(this.b.nextInt(this.b.nextInt(240) + 8) + 8), this.b.nextInt(16) + 8);
|
||||
+ (new WorldGenLiquids(Blocks.FLOWING_LAVA)).generate(this.a, this.b, blockposition3);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ }
|
||||
+
|
||||
+ protected void a(int i, WorldGenerator worldgenerator, int j, int k) {
|
||||
+ int l;
|
||||
+
|
||||
+ if (k < j) {
|
||||
+ l = j;
|
||||
+ j = k;
|
||||
+ k = l;
|
||||
+ } else if (k == j) {
|
||||
+ if (j < 255) {
|
||||
+ ++k;
|
||||
+ } else {
|
||||
+ --j;
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ for (l = 0; l < i; ++l) {
|
||||
+ BlockPosition blockposition = this.c.a(this.b.nextInt(16), this.b.nextInt(k - j) + j, this.b.nextInt(16));
|
||||
+
|
||||
+ worldgenerator.generate(this.a, this.b, blockposition);
|
||||
+ }
|
||||
+
|
||||
+ }
|
||||
+
|
||||
+ protected void b(int i, WorldGenerator worldgenerator, int j, int k) {
|
||||
+ for (int l = 0; l < i; ++l) {
|
||||
+ BlockPosition blockposition = this.c.a(this.b.nextInt(16), this.b.nextInt(k) + this.b.nextInt(k) + j - k, this.b.nextInt(16));
|
||||
+
|
||||
+ worldgenerator.generate(this.a, this.b, blockposition);
|
||||
+ }
|
||||
+
|
||||
+ }
|
||||
+
|
||||
+ protected void a() {
|
||||
+ this.a(this.d.J, this.h, this.d.K, this.d.L);
|
||||
+ this.a(this.d.N, this.i, this.d.O, this.d.P);
|
||||
+ this.a(this.d.V, this.k, this.d.W, this.d.X);
|
||||
+ this.a(this.d.R, this.j, this.d.S, this.d.T);
|
||||
+ this.a(this.d.Z, this.l, this.d.aa, this.d.ab);
|
||||
+ this.a(this.d.ad, this.m, this.d.ae, this.d.af);
|
||||
+ this.a(this.d.ah, this.n, this.d.ai, this.d.aj);
|
||||
+ this.a(this.d.al, this.o, this.d.am, this.d.an);
|
||||
+ this.a(this.d.ap, this.p, this.d.aq, this.d.ar);
|
||||
+ this.a(this.d.at, this.q, this.d.au, this.d.av);
|
||||
+ this.b(this.d.ax, this.r, this.d.ay, this.d.az);
|
||||
+ }
|
||||
+}
|
||||
deleted file mode 100644
|
||||
index e216a0c..0000000
|
||||
--- a/src/main/java/net/minecraft/server/BiomeDecorator.java
|
||||
+++ /dev/null
|
||||
@@ -1,332 +0,0 @@
|
||||
-package net.minecraft.server;
|
||||
-
|
||||
-import java.util.Random;
|
||||
-
|
||||
-public class BiomeDecorator {
|
||||
-
|
||||
- protected World a;
|
||||
- protected Random b;
|
||||
- protected BlockPosition c;
|
||||
- protected CustomWorldSettingsFinal d;
|
||||
- protected WorldGenerator e = new WorldGenClay(4);
|
||||
- protected WorldGenerator f;
|
||||
- protected WorldGenerator g;
|
||||
- protected WorldGenerator h;
|
||||
- protected WorldGenerator i;
|
||||
- protected WorldGenerator j;
|
||||
- protected WorldGenerator k;
|
||||
- protected WorldGenerator l;
|
||||
- protected WorldGenerator m;
|
||||
- protected WorldGenerator n;
|
||||
- protected WorldGenerator o;
|
||||
- protected WorldGenerator p;
|
||||
- protected WorldGenerator q;
|
||||
- protected WorldGenerator r;
|
||||
- protected WorldGenFlowers s;
|
||||
- protected WorldGenerator t;
|
||||
- protected WorldGenerator u;
|
||||
- protected WorldGenerator v;
|
||||
- protected WorldGenerator w;
|
||||
- protected WorldGenerator x;
|
||||
- protected WorldGenerator y;
|
||||
- protected int z;
|
||||
- protected int A;
|
||||
- protected int B;
|
||||
- protected int C;
|
||||
- protected int D;
|
||||
- protected int E;
|
||||
- protected int F;
|
||||
- protected int G;
|
||||
- protected int H;
|
||||
- protected int I;
|
||||
- protected int J;
|
||||
- protected int K;
|
||||
- public boolean L;
|
||||
-
|
||||
- public BiomeDecorator() {
|
||||
- this.f = new WorldGenSand(Blocks.SAND, 7);
|
||||
- this.g = new WorldGenSand(Blocks.GRAVEL, 6);
|
||||
- this.s = new WorldGenFlowers(Blocks.YELLOW_FLOWER, EnumFlowerVarient.DANDELION);
|
||||
- this.t = new WorldGenMushrooms(Blocks.BROWN_MUSHROOM);
|
||||
- this.u = new WorldGenMushrooms(Blocks.RED_MUSHROOM);
|
||||
- this.v = new WorldGenHugeMushroom();
|
||||
- this.w = new WorldGenReed();
|
||||
- this.x = new WorldGenCactus();
|
||||
- this.y = new WorldGenWaterLily();
|
||||
- this.B = 2;
|
||||
- this.C = 1;
|
||||
- this.H = 1;
|
||||
- this.I = 3;
|
||||
- this.J = 1;
|
||||
- this.L = true;
|
||||
- }
|
||||
-
|
||||
- public void a(World world, Random random, BiomeBase biomebase, BlockPosition blockposition) {
|
||||
- if (this.a != null) {
|
||||
- throw new RuntimeException("Already decorating");
|
||||
- } else {
|
||||
- this.a = world;
|
||||
- String s = world.getWorldData().getGeneratorOptions();
|
||||
-
|
||||
- if (s != null) {
|
||||
- this.d = CustomWorldSettings.a(s).b();
|
||||
- } else {
|
||||
- this.d = CustomWorldSettings.a("").b();
|
||||
- }
|
||||
-
|
||||
- this.b = random;
|
||||
- this.c = blockposition;
|
||||
- this.h = new WorldGenMinable(Blocks.DIRT.getBlockData(), this.d.I);
|
||||
- this.i = new WorldGenMinable(Blocks.GRAVEL.getBlockData(), this.d.M);
|
||||
- this.j = new WorldGenMinable(Blocks.STONE.getBlockData().set(BlockStone.VARIANT, EnumStoneVariant.GRANITE), this.d.Q);
|
||||
- this.k = new WorldGenMinable(Blocks.STONE.getBlockData().set(BlockStone.VARIANT, EnumStoneVariant.DIORITE), this.d.U);
|
||||
- this.l = new WorldGenMinable(Blocks.STONE.getBlockData().set(BlockStone.VARIANT, EnumStoneVariant.ANDESITE), this.d.Y);
|
||||
- this.m = new WorldGenMinable(Blocks.COAL_ORE.getBlockData(), this.d.ac);
|
||||
- this.n = new WorldGenMinable(Blocks.IRON_ORE.getBlockData(), this.d.ag);
|
||||
- this.o = new WorldGenMinable(Blocks.GOLD_ORE.getBlockData(), this.d.ak);
|
||||
- this.p = new WorldGenMinable(Blocks.REDSTONE_ORE.getBlockData(), this.d.ao);
|
||||
- this.q = new WorldGenMinable(Blocks.DIAMOND_ORE.getBlockData(), this.d.as);
|
||||
- this.r = new WorldGenMinable(Blocks.LAPIS_ORE.getBlockData(), this.d.aw);
|
||||
- this.a(biomebase);
|
||||
- this.a = null;
|
||||
- this.b = null;
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- protected void a(BiomeBase biomebase) {
|
||||
- this.a();
|
||||
-
|
||||
- int i;
|
||||
- int j;
|
||||
- int k;
|
||||
-
|
||||
- for (i = 0; i < this.I; ++i) {
|
||||
- j = this.b.nextInt(16) + 8;
|
||||
- k = this.b.nextInt(16) + 8;
|
||||
- this.f.generate(this.a, this.b, this.a.r(this.c.a(j, 0, k)));
|
||||
- }
|
||||
-
|
||||
- for (i = 0; i < this.J; ++i) {
|
||||
- j = this.b.nextInt(16) + 8;
|
||||
- k = this.b.nextInt(16) + 8;
|
||||
- this.e.generate(this.a, this.b, this.a.r(this.c.a(j, 0, k)));
|
||||
- }
|
||||
-
|
||||
- for (i = 0; i < this.H; ++i) {
|
||||
- j = this.b.nextInt(16) + 8;
|
||||
- k = this.b.nextInt(16) + 8;
|
||||
- this.g.generate(this.a, this.b, this.a.r(this.c.a(j, 0, k)));
|
||||
- }
|
||||
-
|
||||
- i = this.A;
|
||||
- if (this.b.nextInt(10) == 0) {
|
||||
- ++i;
|
||||
- }
|
||||
-
|
||||
- int l;
|
||||
- BlockPosition blockposition;
|
||||
-
|
||||
- for (j = 0; j < i; ++j) {
|
||||
- k = this.b.nextInt(16) + 8;
|
||||
- l = this.b.nextInt(16) + 8;
|
||||
- WorldGenTreeAbstract worldgentreeabstract = biomebase.a(this.b);
|
||||
-
|
||||
- worldgentreeabstract.e();
|
||||
- blockposition = this.getHighestBlockYAt(this.c.a(k, 0, l)); // CraftBukkit - Prevent crash
|
||||
- if (worldgentreeabstract.generate(this.a, this.b, blockposition)) {
|
||||
- worldgentreeabstract.a(this.a, this.b, blockposition);
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- for (j = 0; j < this.K; ++j) {
|
||||
- k = this.b.nextInt(16) + 8;
|
||||
- l = this.b.nextInt(16) + 8;
|
||||
- this.v.generate(this.a, this.b, this.getHighestBlockYAt(this.c.a(k, 0, l ))); // CraftBukkit - Prevent crash
|
||||
- }
|
||||
-
|
||||
- int i1;
|
||||
-
|
||||
- for (j = 0; j < this.B; ++j) {
|
||||
- k = this.b.nextInt(16) + 8;
|
||||
- l = this.b.nextInt(16) + 8;
|
||||
- i1 = this.b.nextInt(this.getHighestBlockYAt(this.c.a(k, 0, l)).getY() + 32); // CraftBukkit - Prevent crash
|
||||
- blockposition = this.c.a(k, i1, l);
|
||||
- EnumFlowerVarient enumflowervarient = biomebase.a(this.b, blockposition);
|
||||
- BlockFlowers blockflowers = enumflowervarient.a().a();
|
||||
-
|
||||
- if (blockflowers.getMaterial() != Material.AIR) {
|
||||
- this.s.a(blockflowers, enumflowervarient);
|
||||
- this.s.generate(this.a, this.b, blockposition);
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- for (j = 0; j < this.C; ++j) {
|
||||
- k = this.b.nextInt(16) + 8;
|
||||
- l = this.b.nextInt(16) + 8;
|
||||
- i1 = this.b.nextInt(this.getHighestBlockYAt(this.c.a(k, 0, l)).getY() * 2); // CraftBukkit - Prevent crash
|
||||
- biomebase.b(this.b).generate(this.a, this.b, this.c.a(k, i1, l));
|
||||
- }
|
||||
-
|
||||
- for (j = 0; j < this.D; ++j) {
|
||||
- k = this.b.nextInt(16) + 8;
|
||||
- l = this.b.nextInt(16) + 8;
|
||||
- i1 = this.b.nextInt(this.getHighestBlockYAt(this.c.a(k, 0, l)).getY() * 2); // CraftBukkit - Prevent crash
|
||||
- (new WorldGenDeadBush()).generate(this.a, this.b, this.c.a(k, i1, l));
|
||||
- }
|
||||
-
|
||||
- j = 0;
|
||||
-
|
||||
- while (j < this.z) {
|
||||
- k = this.b.nextInt(16) + 8;
|
||||
- l = this.b.nextInt(16) + 8;
|
||||
- i1 = this.b.nextInt(this.getHighestBlockYAt(this.c.a(k, 0, l)).getY() * 2); // CraftBukkit - Prevent crash
|
||||
- blockposition = this.c.a(k, i1, l);
|
||||
-
|
||||
- while (true) {
|
||||
- if (blockposition.getY() > 0) {
|
||||
- BlockPosition blockposition1 = blockposition.down();
|
||||
-
|
||||
- if (this.a.isEmpty(blockposition1)) {
|
||||
- blockposition = blockposition1;
|
||||
- continue;
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- this.y.generate(this.a, this.b, blockposition);
|
||||
- ++j;
|
||||
- break;
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- for (j = 0; j < this.E; ++j) {
|
||||
- if (this.b.nextInt(4) == 0) {
|
||||
- k = this.b.nextInt(16) + 8;
|
||||
- l = this.b.nextInt(16) + 8;
|
||||
- BlockPosition blockposition2 = this.getHighestBlockYAt(this.c.a(k, 0, l)); // CraftBukkit - Prevent crash
|
||||
-
|
||||
- this.t.generate(this.a, this.b, blockposition2);
|
||||
- }
|
||||
-
|
||||
- if (this.b.nextInt(8) == 0) {
|
||||
- k = this.b.nextInt(16) + 8;
|
||||
- l = this.b.nextInt(16) + 8;
|
||||
- i1 = this.b.nextInt(this.getHighestBlockYAt(this.c.a(k, 0, l)).getY() * 2); // CraftBukkit - Prevent crash
|
||||
- blockposition = this.c.a(k, i1, l);
|
||||
- this.u.generate(this.a, this.b, blockposition);
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- if (this.b.nextInt(4) == 0) {
|
||||
- j = this.b.nextInt(16) + 8;
|
||||
- k = this.b.nextInt(16) + 8;
|
||||
- l = this.b.nextInt(this.getHighestBlockYAt(this.c.a(j, 0, k)).getY() * 2); // CraftBukkit - Prevent crash
|
||||
- this.t.generate(this.a, this.b, this.c.a(j, l, k));
|
||||
- }
|
||||
-
|
||||
- if (this.b.nextInt(8) == 0) {
|
||||
- j = this.b.nextInt(16) + 8;
|
||||
- k = this.b.nextInt(16) + 8;
|
||||
- l = this.b.nextInt(this.getHighestBlockYAt(this.c.a(j, 0, k)).getY() * 2); // CraftBukkit - Prevent crash
|
||||
- this.u.generate(this.a, this.b, this.c.a(j, l, k));
|
||||
- }
|
||||
-
|
||||
- for (j = 0; j < this.F; ++j) {
|
||||
- k = this.b.nextInt(16) + 8;
|
||||
- l = this.b.nextInt(16) + 8;
|
||||
- i1 = this.b.nextInt(this.getHighestBlockYAt(this.c.a(k, 0, l)).getY() * 2); // CraftBukkit - Prevent crash
|
||||
- this.w.generate(this.a, this.b, this.c.a(k, i1, l));
|
||||
- }
|
||||
-
|
||||
- for (j = 0; j < 10; ++j) {
|
||||
- k = this.b.nextInt(16) + 8;
|
||||
- l = this.b.nextInt(16) + 8;
|
||||
- i1 = this.b.nextInt(this.getHighestBlockYAt(this.c.a(k, 0, l)).getY() * 2); // CraftBukkit - Prevent crash
|
||||
- this.w.generate(this.a, this.b, this.c.a(k, i1, l));
|
||||
- }
|
||||
-
|
||||
- if (this.b.nextInt(32) == 0) {
|
||||
- j = this.b.nextInt(16) + 8;
|
||||
- k = this.b.nextInt(16) + 8;
|
||||
- l = this.b.nextInt(this.getHighestBlockYAt(this.c.a(j, 0, k)).getY() * 2); // CraftBukkit - Prevent crash
|
||||
- (new WorldGenPumpkin()).generate(this.a, this.b, this.c.a(j, l, k));
|
||||
- }
|
||||
-
|
||||
- for (j = 0; j < this.G; ++j) {
|
||||
- k = this.b.nextInt(16) + 8;
|
||||
- l = this.b.nextInt(16) + 8;
|
||||
- i1 = this.b.nextInt(this.getHighestBlockYAt(this.c.a(k, 0, l)).getY() * 2); // CraftBukkit - Prevent crash
|
||||
- this.x.generate(this.a, this.b, this.c.a(k, i1, l));
|
||||
- }
|
||||
-
|
||||
- if (this.L) {
|
||||
- BlockPosition blockposition3;
|
||||
-
|
||||
- for (j = 0; j < 50; ++j) {
|
||||
- blockposition3 = this.c.a(this.b.nextInt(16) + 8, this.b.nextInt(this.b.nextInt(248) + 8), this.b.nextInt(16) + 8);
|
||||
- (new WorldGenLiquids(Blocks.FLOWING_WATER)).generate(this.a, this.b, blockposition3);
|
||||
- }
|
||||
-
|
||||
- for (j = 0; j < 20; ++j) {
|
||||
- blockposition3 = this.c.a(this.b.nextInt(16) + 8, this.b.nextInt(this.b.nextInt(this.b.nextInt(240) + 8) + 8), this.b.nextInt(16) + 8);
|
||||
- (new WorldGenLiquids(Blocks.FLOWING_LAVA)).generate(this.a, this.b, blockposition3);
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- }
|
||||
-
|
||||
- // CraftBukkit start - The heightMap can be wrong calculated and return Y = 0 which will crash the Server
|
||||
- private BlockPosition getHighestBlockYAt( BlockPosition blockPosition ) {
|
||||
- BlockPosition returnBlockPosition = this.a.getHighestBlockYAt( blockPosition );
|
||||
- if ( returnBlockPosition.getY() == 0 ) {
|
||||
- returnBlockPosition = returnBlockPosition.up( 1 );
|
||||
- }
|
||||
- return returnBlockPosition;
|
||||
- }
|
||||
- // CraftBukkit end
|
||||
-
|
||||
- protected void a(int i, WorldGenerator worldgenerator, int j, int k) {
|
||||
- int l;
|
||||
-
|
||||
- if (k < j) {
|
||||
- l = j;
|
||||
- j = k;
|
||||
- k = l;
|
||||
- } else if (k == j) {
|
||||
- if (j < 255) {
|
||||
- ++k;
|
||||
- } else {
|
||||
- --j;
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- for (l = 0; l < i; ++l) {
|
||||
- BlockPosition blockposition = this.c.a(this.b.nextInt(16), this.b.nextInt(k - j) + j, this.b.nextInt(16));
|
||||
-
|
||||
- worldgenerator.generate(this.a, this.b, blockposition);
|
||||
- }
|
||||
-
|
||||
- }
|
||||
-
|
||||
- protected void b(int i, WorldGenerator worldgenerator, int j, int k) {
|
||||
- for (int l = 0; l < i; ++l) {
|
||||
- BlockPosition blockposition = this.c.a(this.b.nextInt(16), this.b.nextInt(k) + this.b.nextInt(k) + j - k, this.b.nextInt(16));
|
||||
-
|
||||
- worldgenerator.generate(this.a, this.b, blockposition);
|
||||
- }
|
||||
-
|
||||
- }
|
||||
-
|
||||
- protected void a() {
|
||||
- this.a(this.d.J, this.h, this.d.K, this.d.L);
|
||||
- this.a(this.d.N, this.i, this.d.O, this.d.P);
|
||||
- this.a(this.d.V, this.k, this.d.W, this.d.X);
|
||||
- this.a(this.d.R, this.j, this.d.S, this.d.T);
|
||||
- this.a(this.d.Z, this.l, this.d.aa, this.d.ab);
|
||||
- this.a(this.d.ad, this.m, this.d.ae, this.d.af);
|
||||
- this.a(this.d.ah, this.n, this.d.ai, this.d.aj);
|
||||
- this.a(this.d.al, this.o, this.d.am, this.d.an);
|
||||
- this.a(this.d.ap, this.p, this.d.aq, this.d.ar);
|
||||
- this.a(this.d.at, this.q, this.d.au, this.d.av);
|
||||
- this.b(this.d.ax, this.r, this.d.ay, this.d.az);
|
||||
- }
|
||||
-}
|
||||
diff --git a/src/main/java/net/minecraft/server/BlockAnvil.java b/src/main/java/net/minecraft/server/BlockAnvil.java
|
||||
new file mode 100644
|
||||
index 0000000..8c9ed4c
|
||||
|
@ -1,4 +1,4 @@
|
||||
From b8c7995e487a20b69ee32985463571acbd2673c5 Mon Sep 17 00:00:00 2001
|
||||
From dc7886d3fde174339f15c44078985ec3b795054f Mon Sep 17 00:00:00 2001
|
||||
From: md_5 <md_5@live.com.au>
|
||||
Date: Sun, 2 Jun 2013 15:10:56 +1000
|
||||
Subject: [PATCH] Skeleton API Implementations
|
||||
@ -6,10 +6,10 @@ Subject: [PATCH] Skeleton API Implementations
|
||||
This contains the basic, empty implementations for some Spigot-API extensions. They are included early in the patching progress so that compilation will still succeed midway despite the APIs only being provided by subsequent patches.
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index 075a7fd..38892a0 100644
|
||||
index b4ad7d1..4c33f5a 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -1622,4 +1622,14 @@ public final class CraftServer implements Server {
|
||||
@@ -1626,4 +1626,14 @@ public final class CraftServer implements Server {
|
||||
public UnsafeValues getUnsafe() {
|
||||
return CraftMagicNumbers.INSTANCE;
|
||||
}
|
||||
@ -124,10 +124,10 @@ index 3b9bfec..e4d0e41 100644
|
||||
+ // Spigot end
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
index 661fbae..92a6270 100644
|
||||
index 78a0ab4..fabaecf 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
@@ -667,4 +667,16 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
@@ -668,4 +668,16 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
public final String toString() {
|
||||
return SerializableMeta.classMap.get(getClass()) + "_META:" + serialize(); // TODO: cry
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
From a63a688407f5d27d053b8fd28e28387ee1a72610 Mon Sep 17 00:00:00 2001
|
||||
From 5a74d8939260f6782528b1a1cd4c2423122cdce6 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,7 +35,7 @@ index 29c0a34..424b71d 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 82343c5..44eb108 100644
|
||||
index a8aeca1..b15988a 100644
|
||||
--- a/src/main/java/net/minecraft/server/World.java
|
||||
+++ b/src/main/java/net/minecraft/server/World.java
|
||||
@@ -98,6 +98,7 @@ public abstract class World implements IBlockAccess {
|
||||
@ -55,10 +55,10 @@ index 82343c5..44eb108 100644
|
||||
this.world = new CraftWorld((WorldServer) this, gen, env);
|
||||
this.ticksPerAnimalSpawns = this.getServer().getTicksPerAnimalSpawns(); // CraftBukkit
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index 38892a0..1f49e1c 100644
|
||||
index 7968b4b..9da97e5 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -245,8 +245,10 @@ public final class CraftServer implements Server {
|
||||
@@ -246,8 +246,10 @@ public final class CraftServer implements Server {
|
||||
chunkGCLoadThresh = configuration.getInt("chunk-gc.load-threshold");
|
||||
loadIcon();
|
||||
|
||||
@ -71,7 +71,7 @@ index 38892a0..1f49e1c 100644
|
||||
}
|
||||
|
||||
public boolean getCommandBlockOverride(String command) {
|
||||
@@ -671,6 +673,7 @@ public final class CraftServer implements Server {
|
||||
@@ -673,6 +675,7 @@ public final class CraftServer implements Server {
|
||||
logger.log(Level.WARNING, "Failed to load banned-players.json, " + ex.getMessage());
|
||||
}
|
||||
|
||||
@ -79,7 +79,7 @@ index 38892a0..1f49e1c 100644
|
||||
for (WorldServer world : console.worlds) {
|
||||
world.worldData.setDifficulty(difficulty);
|
||||
world.setSpawnFlags(monsters, animals);
|
||||
@@ -685,11 +688,14 @@ public final class CraftServer implements Server {
|
||||
@@ -687,11 +690,14 @@ public final class CraftServer implements Server {
|
||||
} else {
|
||||
world.ticksPerMonsterSpawns = this.getTicksPerMonsterSpawns();
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 069bf84fffb35ff8883c68069e12d68c0e61a2e4 Mon Sep 17 00:00:00 2001
|
||||
From 0bd6f84fab9a64e161181f3d32009bbbd71aac3a 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
|
||||
@ -133,7 +133,7 @@ index 424b71d..390c6eb 100644
|
||||
|
||||
public boolean ad() {
|
||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||
index 0682904..4886929 100644
|
||||
index 7bec05f..5441e8b 100644
|
||||
--- a/src/main/java/net/minecraft/server/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/server/Entity.java
|
||||
@@ -16,6 +16,7 @@ import org.bukkit.entity.Hanging;
|
||||
@ -153,7 +153,7 @@ index 0682904..4886929 100644
|
||||
public int getId() {
|
||||
return this.id;
|
||||
}
|
||||
@@ -378,6 +381,8 @@ public abstract class Entity implements ICommandListener {
|
||||
@@ -379,6 +382,8 @@ public abstract class Entity implements ICommandListener {
|
||||
}
|
||||
|
||||
public void move(double d0, double d1, double d2) {
|
||||
@ -162,7 +162,7 @@ index 0682904..4886929 100644
|
||||
if (this.T) {
|
||||
this.a(this.getBoundingBox().c(d0, d1, d2));
|
||||
this.recalcPosition();
|
||||
@@ -714,6 +719,7 @@ public abstract class Entity implements ICommandListener {
|
||||
@@ -715,6 +720,7 @@ public abstract class Entity implements ICommandListener {
|
||||
|
||||
this.world.methodProfiler.b();
|
||||
}
|
||||
@ -584,10 +584,10 @@ index 737b546..c07f9f8 100644
|
||||
|
||||
public BiomeMeta a(EnumCreatureType enumcreaturetype, BlockPosition blockposition) {
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index 1f49e1c..1f5021f 100644
|
||||
index 51e4489..5286c1e 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -1632,6 +1632,11 @@ public final class CraftServer implements Server {
|
||||
@@ -1636,6 +1636,11 @@ public final class CraftServer implements Server {
|
||||
private final Spigot spigot = new Spigot()
|
||||
{
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From b2e323897b2d138c4ea2bc5175d6da6e64351024 Mon Sep 17 00:00:00 2001
|
||||
From 5130e3bfb747db131ecf214bffe52690dbb74132 Mon Sep 17 00:00:00 2001
|
||||
From: Antony Riley <antony@cyberiantiger.org>
|
||||
Date: Wed, 27 Mar 2013 01:41:54 +0200
|
||||
Subject: [PATCH] Close Unloaded Save Files
|
||||
@ -18,10 +18,10 @@ index f4f72ef..1b03878 100644
|
||||
public static synchronized RegionFile a(File file, int i, int j) {
|
||||
File file1 = new File(file, "region");
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index 1f5021f..d540cd0 100644
|
||||
index 5286c1e..3175d37 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -947,6 +947,31 @@ public final class CraftServer implements Server {
|
||||
@@ -951,6 +951,31 @@ public final class CraftServer implements Server {
|
||||
|
||||
worlds.remove(world.getName().toLowerCase());
|
||||
console.worlds.remove(console.worlds.indexOf(handle));
|
||||
|
@ -1,14 +1,14 @@
|
||||
From 81d3cead13e4ec13794d87f99d556aeba5339fb7 Mon Sep 17 00:00:00 2001
|
||||
From c5bcf08cd6f792110b93c413f1972643024bb9c0 Mon Sep 17 00:00:00 2001
|
||||
From: md_5 <md_5@live.com.au>
|
||||
Date: Fri, 21 Jun 2013 18:05:54 +1000
|
||||
Subject: [PATCH] Allow Disabling of Command TabComplete
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index d540cd0..a770279 100644
|
||||
index 3175d37..b9cace3 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -1551,6 +1551,13 @@ public final class CraftServer implements Server {
|
||||
@@ -1555,6 +1555,13 @@ public final class CraftServer implements Server {
|
||||
}
|
||||
|
||||
public List<String> tabCompleteCommand(Player player, String message) {
|
||||
|
@ -1,4 +1,4 @@
|
||||
From e825b9f61e1063c007b06771c7baaa01f073473e Mon Sep 17 00:00:00 2001
|
||||
From 21d7a65e1639ca5ae704cdc6a1ad7b4424771f82 Mon Sep 17 00:00:00 2001
|
||||
From: md_5 <md_5@live.com.au>
|
||||
Date: Fri, 21 Jun 2013 19:21:58 +1000
|
||||
Subject: [PATCH] Configurable Messages
|
||||
@ -23,10 +23,10 @@ index f8bac48..e036bc6 100644
|
||||
this.b.close(chatcomponenttext);
|
||||
} else {
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index 5979c78..80123ee 100644
|
||||
index 5ca721b..f76709f 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -378,7 +378,7 @@ public abstract class PlayerList {
|
||||
@@ -379,7 +379,7 @@ public abstract class PlayerList {
|
||||
event.disallow(PlayerLoginEvent.Result.KICK_BANNED, s);
|
||||
} else if (!this.isWhitelisted(gameprofile)) {
|
||||
// return "You are not white-listed on this server!";
|
||||
@ -35,7 +35,7 @@ index 5979c78..80123ee 100644
|
||||
} else if (getIPBans().isBanned(socketaddress) && !getIPBans().get(socketaddress).hasExpired()) {
|
||||
IpBanEntry ipbanentry = this.l.get(socketaddress);
|
||||
|
||||
@@ -392,7 +392,7 @@ public abstract class PlayerList {
|
||||
@@ -393,7 +393,7 @@ public abstract class PlayerList {
|
||||
} else {
|
||||
// return this.players.size() >= this.maxPlayers ? "The server is full!" : null;
|
||||
if (this.players.size() >= this.maxPlayers) {
|
||||
@ -45,10 +45,10 @@ index 5979c78..80123ee 100644
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index a770279..f1ec39b 100644
|
||||
index b9cace3..ce4857d 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -625,11 +625,7 @@ public final class CraftServer implements Server {
|
||||
@@ -627,11 +627,7 @@ public final class CraftServer implements Server {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -1,14 +1,14 @@
|
||||
From 30494ab74e9585b41e4b249b8878b1582dd7c795 Mon Sep 17 00:00:00 2001
|
||||
From 898268b70af55725aab77f43d0f2a1fb809307aa Mon Sep 17 00:00:00 2001
|
||||
From: md_5 <md_5@live.com.au>
|
||||
Date: Tue, 2 Jul 2013 20:32:49 +1000
|
||||
Subject: [PATCH] Entity Mount and Dismount Events
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||
index 178a7a6..3227e8b 100644
|
||||
index 56f71f3..ce0c305 100644
|
||||
--- a/src/main/java/net/minecraft/server/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/server/Entity.java
|
||||
@@ -1543,6 +1543,7 @@ public abstract class Entity implements ICommandListener {
|
||||
@@ -1544,6 +1544,7 @@ public abstract class Entity implements ICommandListener {
|
||||
}
|
||||
}
|
||||
// CraftBukkit end
|
||||
@ -16,7 +16,7 @@ index 178a7a6..3227e8b 100644
|
||||
this.setPositionRotation(this.vehicle.locX, this.vehicle.getBoundingBox().b + (double) this.vehicle.length, this.vehicle.locZ, this.yaw, this.pitch);
|
||||
this.vehicle.passenger = null;
|
||||
}
|
||||
@@ -1577,6 +1578,18 @@ public abstract class Entity implements ICommandListener {
|
||||
@@ -1578,6 +1579,18 @@ public abstract class Entity implements ICommandListener {
|
||||
}
|
||||
}
|
||||
// CraftBukkit end
|
||||
|
@ -1,4 +1,4 @@
|
||||
From ffef4ba9050f0d22ffae56c417e74fb6194cfa32 Mon Sep 17 00:00:00 2001
|
||||
From f8664946ba2853b3d8413cf9c6624f515655c48a Mon Sep 17 00:00:00 2001
|
||||
From: Alex Ciuba <alexciuba@gmail.com>
|
||||
Date: Tue, 11 Jun 2013 15:23:03 -0400
|
||||
Subject: [PATCH] Prevent Ghost Players Caused by Plugins
|
||||
@ -6,10 +6,10 @@ Subject: [PATCH] Prevent Ghost Players Caused by Plugins
|
||||
Check if the player is still connected after firing event. Fixes BUKKIT-4327
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index 80123ee..d94ec46 100644
|
||||
index f76709f..3b6e4f0 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -505,6 +505,11 @@ public abstract class PlayerList {
|
||||
@@ -506,6 +506,11 @@ public abstract class PlayerList {
|
||||
Player respawnPlayer = cserver.getPlayer(entityplayer1);
|
||||
PlayerRespawnEvent respawnEvent = new PlayerRespawnEvent(respawnPlayer, location, isBedSpawn);
|
||||
cserver.getPluginManager().callEvent(respawnEvent);
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 5e9d6f4af94cb8f5a4e07cd12bec06b96ee6c027 Mon Sep 17 00:00:00 2001
|
||||
From 1a7b84867f4ee97511cf7cded475159a1991c7e8 Mon Sep 17 00:00:00 2001
|
||||
From: md_5 <md_5@live.com.au>
|
||||
Date: Sun, 1 Dec 2013 18:18:41 +1100
|
||||
Subject: [PATCH] BungeeCord Support
|
||||
@ -119,10 +119,10 @@ index 97920b0..0b86011 100644
|
||||
this.d = EnumProtocol.a(packetdataserializer.e());
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index d94ec46..6357058 100644
|
||||
index 3b6e4f0..f0d1ada 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -363,7 +363,7 @@ public abstract class PlayerList {
|
||||
@@ -364,7 +364,7 @@ public abstract class PlayerList {
|
||||
|
||||
EntityPlayer entity = new EntityPlayer(server, server.getWorldServer(0), gameprofile, new PlayerInteractManager(server.getWorldServer(0)));
|
||||
Player player = entity.getBukkitEntity();
|
||||
@ -132,10 +132,10 @@ index d94ec46..6357058 100644
|
||||
|
||||
if (getProfileBans().isBanned(gameprofile) && !getProfileBans().get(gameprofile).hasExpired()) {
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index f1ec39b..c79ede5 100644
|
||||
index ce4857d..5c1cfaa 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -558,7 +558,13 @@ public final class CraftServer implements Server {
|
||||
@@ -560,7 +560,13 @@ public final class CraftServer implements Server {
|
||||
|
||||
@Override
|
||||
public long getConnectionThrottle() {
|
||||
|
@ -1,14 +1,14 @@
|
||||
From 0be8e93c32cc99e8db29392abc26d3ef465957ce Mon Sep 17 00:00:00 2001
|
||||
From 5dd51c69a6882437a9c2ca661ee93e1f620be935 Mon Sep 17 00:00:00 2001
|
||||
From: DerFlash <bte@freenet.de>
|
||||
Date: Tue, 9 Jul 2013 00:11:12 +0200
|
||||
Subject: [PATCH] Save ticks lived to nbttag
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||
index 3227e8b..45265c2 100644
|
||||
index ce0c305..b1b9492 100644
|
||||
--- a/src/main/java/net/minecraft/server/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/server/Entity.java
|
||||
@@ -1197,6 +1197,7 @@ public abstract class Entity implements ICommandListener {
|
||||
@@ -1198,6 +1198,7 @@ public abstract class Entity implements ICommandListener {
|
||||
nbttagcompound.setLong("WorldUUIDLeast", this.world.getDataManager().getUUID().getLeastSignificantBits());
|
||||
nbttagcompound.setLong("WorldUUIDMost", this.world.getDataManager().getUUID().getMostSignificantBits());
|
||||
nbttagcompound.setInt("Bukkit.updateLevel", CURRENT_LEVEL);
|
||||
@ -16,7 +16,7 @@ index 3227e8b..45265c2 100644
|
||||
// CraftBukkit end
|
||||
if (this.getCustomName() != null && this.getCustomName().length() > 0) {
|
||||
nbttagcompound.setString("CustomName", this.getCustomName());
|
||||
@@ -1284,6 +1285,8 @@ public abstract class Entity implements ICommandListener {
|
||||
@@ -1285,6 +1286,8 @@ public abstract class Entity implements ICommandListener {
|
||||
if (this instanceof EntityLiving) {
|
||||
EntityLiving entity = (EntityLiving) this;
|
||||
|
||||
|
@ -1,14 +1,14 @@
|
||||
From cf8f74feef3d3fbed4cd960837d6fa3c2d2201c6 Mon Sep 17 00:00:00 2001
|
||||
From 464bde6a73a3569e864b6db724a07019916b3d91 Mon Sep 17 00:00:00 2001
|
||||
From: md_5 <git@md-5.net>
|
||||
Date: Mon, 23 Dec 2013 14:07:41 +1100
|
||||
Subject: [PATCH] Warn if PermGen may be insufficient
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
index 8d127fb..008e037 100644
|
||||
index 9ffd897..f039fbf 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
|
||||
@@ -155,6 +155,22 @@ public class Main {
|
||||
@@ -158,6 +158,22 @@ public class Main {
|
||||
useConsole = false;
|
||||
}
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 588c3ffb97bfb1db52719d708480c333314ba895 Mon Sep 17 00:00:00 2001
|
||||
From d80d05b09d60f8a1356996dcb560b07a1ac1867b Mon Sep 17 00:00:00 2001
|
||||
From: Aikar <aikar@aikar.co>
|
||||
Date: Fri, 31 Jan 2014 11:18:34 -0500
|
||||
Subject: [PATCH] Cap Entity Collisions
|
||||
@ -7,10 +7,10 @@ Limit a single entity to colliding a max of configurable times per tick.
|
||||
This will alleviate issues where living entities are hoarded in 1x1 pens.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||
index 1339fd2..94a997f 100644
|
||||
index c69ae55..c967853 100644
|
||||
--- a/src/main/java/net/minecraft/server/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/server/Entity.java
|
||||
@@ -1058,6 +1058,7 @@ public abstract class Entity implements ICommandListener {
|
||||
@@ -1059,6 +1059,7 @@ public abstract class Entity implements ICommandListener {
|
||||
|
||||
public void d(EntityHuman entityhuman) {}
|
||||
|
||||
|
@ -1,14 +1,14 @@
|
||||
From e3fe3d63d1ac971bc8db54461b67e38f0445c464 Mon Sep 17 00:00:00 2001
|
||||
From 76e657bb3daaf6b9eb389359a4efff083b37ba9d Mon Sep 17 00:00:00 2001
|
||||
From: Thinkofdeath <thethinkofdeath@gmail.com>
|
||||
Date: Wed, 12 Feb 2014 20:44:14 +0000
|
||||
Subject: [PATCH] Allow vanilla commands to be the main version of a command
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index dbb3324..55658b6 100644
|
||||
index a5499a1..5fc0e28 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -315,8 +315,11 @@ public final class CraftServer implements Server {
|
||||
@@ -316,8 +316,11 @@ public final class CraftServer implements Server {
|
||||
}
|
||||
|
||||
if (type == PluginLoadOrder.POSTWORLD) {
|
||||
@ -21,7 +21,7 @@ index dbb3324..55658b6 100644
|
||||
commandMap.registerServerAliases();
|
||||
loadCustomPermissions();
|
||||
DefaultPermissions.registerCorePermissions();
|
||||
@@ -328,10 +331,19 @@ public final class CraftServer implements Server {
|
||||
@@ -330,10 +333,19 @@ public final class CraftServer implements Server {
|
||||
pluginManager.disablePlugins();
|
||||
}
|
||||
|
||||
|
@ -1,14 +1,14 @@
|
||||
From 928d3c2a993a4eea994e4c46121f546d123277d0 Mon Sep 17 00:00:00 2001
|
||||
From 99c9a03e1bfae144c9227a0eae7ef8f0d57c0181 Mon Sep 17 00:00:00 2001
|
||||
From: drXor <mcyoungsota@gmail.com>
|
||||
Date: Sat, 15 Mar 2014 01:30:05 -0400
|
||||
Subject: [PATCH] Descriptive kick reasons instead of Nope!
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||
index 774fe84..3a68762 100644
|
||||
index c967853..2cca633 100644
|
||||
--- a/src/main/java/net/minecraft/server/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/server/Entity.java
|
||||
@@ -207,7 +207,7 @@ public abstract class Entity implements ICommandListener {
|
||||
@@ -208,7 +208,7 @@ public abstract class Entity implements ICommandListener {
|
||||
if (f == Float.POSITIVE_INFINITY || f == Float.NEGATIVE_INFINITY) {
|
||||
if (this instanceof EntityPlayer) {
|
||||
this.world.getServer().getLogger().warning(this.getName() + " was caught trying to crash the server with an invalid yaw");
|
||||
@ -17,7 +17,7 @@ index 774fe84..3a68762 100644
|
||||
}
|
||||
f = 0;
|
||||
}
|
||||
@@ -220,7 +220,7 @@ public abstract class Entity implements ICommandListener {
|
||||
@@ -221,7 +221,7 @@ public abstract class Entity implements ICommandListener {
|
||||
if (f1 == Float.POSITIVE_INFINITY || f1 == Float.NEGATIVE_INFINITY) {
|
||||
if (this instanceof EntityPlayer) {
|
||||
this.world.getServer().getLogger().warning(this.getName() + " was caught trying to crash the server with an invalid pitch");
|
||||
|
@ -1,14 +1,14 @@
|
||||
From 1e6cd90b02676d7d895fb88ce176e7c8fc3f9984 Mon Sep 17 00:00:00 2001
|
||||
From caf26ee83d97c36f4985c62cde9b5e78d1a2d99f Mon Sep 17 00:00:00 2001
|
||||
From: md_5 <git@md-5.net>
|
||||
Date: Mon, 14 Apr 2014 17:21:24 +1000
|
||||
Subject: [PATCH] Check for blank OfflinePlayer Names
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index db1465e..50bb2ba 100644
|
||||
index 6ea7371..31a7a87 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -1271,6 +1271,7 @@ public final class CraftServer implements Server {
|
||||
@@ -1275,6 +1275,7 @@ public final class CraftServer implements Server {
|
||||
@Deprecated
|
||||
public OfflinePlayer getOfflinePlayer(String name) {
|
||||
Validate.notNull(name, "Name cannot be null");
|
||||
|
@ -1,14 +1,14 @@
|
||||
From b952ef7806b987f213f930d93015c537379a5276 Mon Sep 17 00:00:00 2001
|
||||
From a12d6ee8c2c4b41cc287f1a70803039bd946c313 Mon Sep 17 00:00:00 2001
|
||||
From: md_5 <git@md-5.net>
|
||||
Date: Wed, 16 Apr 2014 11:14:38 +1000
|
||||
Subject: [PATCH] Correct Ban Expiration
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index 6357058..2d6ddc7 100644
|
||||
index f0d1ada..82dd862 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -375,7 +375,7 @@ public abstract class PlayerList {
|
||||
@@ -376,7 +376,7 @@ public abstract class PlayerList {
|
||||
}
|
||||
|
||||
// return s;
|
||||
|
@ -1,14 +1,14 @@
|
||||
From aa05774c3fbd923f3cdc7bcfea204462866323e1 Mon Sep 17 00:00:00 2001
|
||||
From 57caebbf7c48ff8546e7933ea900bf126c26a421 Mon Sep 17 00:00:00 2001
|
||||
From: md_5 <git@md-5.net>
|
||||
Date: Sun, 20 Apr 2014 18:58:00 +1000
|
||||
Subject: [PATCH] Don't special case 'invalid' usernames for UUIDs.
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index 50bb2ba..899982b 100644
|
||||
index 31a7a87..8964a18 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -1273,11 +1273,6 @@ public final class CraftServer implements Server {
|
||||
@@ -1277,11 +1277,6 @@ public final class CraftServer implements Server {
|
||||
Validate.notNull(name, "Name cannot be null");
|
||||
com.google.common.base.Preconditions.checkArgument( !org.apache.commons.lang.StringUtils.isBlank( name ), "Name cannot be blank" ); // Spigot
|
||||
|
||||
|
@ -1,14 +1,14 @@
|
||||
From 02509dc7476f72618938ce44287e2dbeec7a17e3 Mon Sep 17 00:00:00 2001
|
||||
From a8a8ff64e451fbc06f035c5dbe37755bf9620c6f Mon Sep 17 00:00:00 2001
|
||||
From: ninja <xninja@openmailbox.org>
|
||||
Date: Tue, 8 Apr 2014 14:05:19 +0200
|
||||
Subject: [PATCH] Implement PlayerSpawnLocationEvent.
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index c9ef1d6..26e4328 100644
|
||||
index 82dd862..34ee440 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -35,6 +35,7 @@ import org.bukkit.event.player.PlayerQuitEvent;
|
||||
@@ -36,6 +36,7 @@ import org.bukkit.event.player.PlayerQuitEvent;
|
||||
import org.bukkit.event.player.PlayerRespawnEvent;
|
||||
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
|
||||
import org.bukkit.util.Vector;
|
||||
@ -16,7 +16,7 @@ index c9ef1d6..26e4328 100644
|
||||
// CraftBukkit end
|
||||
|
||||
public abstract class PlayerList {
|
||||
@@ -98,6 +99,19 @@ public abstract class PlayerList {
|
||||
@@ -99,6 +100,19 @@ public abstract class PlayerList {
|
||||
s1 = networkmanager.getSocketAddress().toString();
|
||||
}
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From e4ab8d61ad019d2cfd1021d342d5e367fd8bc51e Mon Sep 17 00:00:00 2001
|
||||
From ef07b1f5de9476274a7a491bd59ac0a21948fd24 Mon Sep 17 00:00:00 2001
|
||||
From: Thinkofdeath <thinkofdeath@spigotmc.org>
|
||||
Date: Wed, 2 Jul 2014 23:35:51 +0100
|
||||
Subject: [PATCH] Better item validation
|
||||
@ -64,7 +64,7 @@ index 8b7dc17..5227007 100644
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java
|
||||
index 9a24d2e..d3b5002 100644
|
||||
index 0c69a3e..6843fac 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java
|
||||
@@ -20,6 +20,10 @@ import net.minecraft.server.ChatSerializer;
|
||||
@ -78,7 +78,7 @@ index 9a24d2e..d3b5002 100644
|
||||
@DelegateDeserialization(SerializableMeta.class)
|
||||
class CraftMetaBook extends CraftMetaItem implements BookMeta {
|
||||
static final ItemMetaKey BOOK_TITLE = new ItemMetaKey("title");
|
||||
@@ -54,11 +58,11 @@ class CraftMetaBook extends CraftMetaItem implements BookMeta {
|
||||
@@ -55,11 +59,11 @@ class CraftMetaBook extends CraftMetaItem implements BookMeta {
|
||||
super(tag);
|
||||
|
||||
if (tag.hasKey(BOOK_TITLE.NBT)) {
|
||||
@ -91,10 +91,10 @@ index 9a24d2e..d3b5002 100644
|
||||
+ this.author = limit( tag.getString(BOOK_AUTHOR.NBT), 1024 ); // Spigot
|
||||
}
|
||||
|
||||
if (tag.hasKey(RESOLVED.NBT)) {
|
||||
@@ -78,7 +82,7 @@ class CraftMetaBook extends CraftMetaItem implements BookMeta {
|
||||
if (resolved != null && resolved) {
|
||||
page = CraftChatMessage.fromComponent(ChatSerializer.a(page));
|
||||
boolean resolved = false;
|
||||
@@ -84,7 +88,7 @@ class CraftMetaBook extends CraftMetaItem implements BookMeta {
|
||||
// Ignore and treat as an old book
|
||||
}
|
||||
}
|
||||
- pageArray[i] = page;
|
||||
+ pageArray[i] = limit( page, 2048 ); // Spigot
|
||||
@ -102,7 +102,7 @@ index 9a24d2e..d3b5002 100644
|
||||
|
||||
addPage(pageArray);
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
index 92a6270..8d754d8 100644
|
||||
index fabaecf..cb6857c 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
@@ -36,6 +36,10 @@ import com.google.common.base.Strings;
|
||||
@ -116,7 +116,7 @@ index 92a6270..8d754d8 100644
|
||||
/**
|
||||
* Children must include the following:
|
||||
*
|
||||
@@ -229,7 +233,7 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
@@ -230,7 +234,7 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
NBTTagCompound display = tag.getCompound(DISPLAY.NBT);
|
||||
|
||||
if (display.hasKey(NAME.NBT)) {
|
||||
@ -125,7 +125,7 @@ index 92a6270..8d754d8 100644
|
||||
}
|
||||
|
||||
if (display.hasKey(LORE.NBT)) {
|
||||
@@ -237,7 +241,7 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
@@ -238,7 +242,7 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
lore = new ArrayList<String>(list.size());
|
||||
|
||||
for (int index = 0; index < list.size(); index++) {
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 2c388c7f705c6615e19692e82ccf20a4c47f79a8 Mon Sep 17 00:00:00 2001
|
||||
From da0947583dc1dbf478a1c04ab155cc3d64136e71 Mon Sep 17 00:00:00 2001
|
||||
From: Maxim Van de Wynckel <maxim_vdw@hotmail.com>
|
||||
Date: Wed, 30 Jul 2014 01:19:51 +0200
|
||||
Subject: [PATCH] Only fetch an online UUID in online mode
|
||||
@ -12,10 +12,10 @@ You want to store data for player "Test" who never joined. An online UUID is cr
|
||||
The player Test joins with an offline UUID but that will not match the online UUID of the saved data.
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
index 899982b..57bd4f1 100644
|
||||
index 8964a18..8b4b580 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
|
||||
@@ -1275,8 +1275,14 @@ public final class CraftServer implements Server {
|
||||
@@ -1279,8 +1279,14 @@ public final class CraftServer implements Server {
|
||||
|
||||
OfflinePlayer result = getPlayerExact(name);
|
||||
if (result == null) {
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 57950764560d04e70e8388db6d6accf8a8de0b05 Mon Sep 17 00:00:00 2001
|
||||
From 6782704edc90554ab8a70d93f6bec734b6aef1b6 Mon Sep 17 00:00:00 2001
|
||||
From: Thinkofdeath <thinkofdeath@spigotmc.org>
|
||||
Date: Thu, 31 Jul 2014 17:48:20 +0100
|
||||
Subject: [PATCH] Filter attribute modifiers which cause the attribute to go
|
||||
@ -6,7 +6,7 @@ Subject: [PATCH] Filter attribute modifiers which cause the attribute to go
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
index 8d754d8..7638832 100644
|
||||
index cb6857c..b42baa9 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
@@ -38,6 +38,8 @@ import com.google.common.collect.ImmutableMap;
|
||||
@ -18,7 +18,7 @@ index 8d754d8..7638832 100644
|
||||
// Spigot end
|
||||
|
||||
/**
|
||||
@@ -258,6 +260,123 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
@@ -259,6 +261,123 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
NBTTagList save = null;
|
||||
NBTTagList nbttaglist = tag.getList(ATTRIBUTES.NBT, 10);
|
||||
|
||||
|
@ -1,14 +1,14 @@
|
||||
From 142f4098cd2b3118351593dfe155cdfa771a0749 Mon Sep 17 00:00:00 2001
|
||||
From 5f7fe70ea4af2e1d88a18470ad373e5fd5408067 Mon Sep 17 00:00:00 2001
|
||||
From: drXor <mcyoung@mit.edu>
|
||||
Date: Fri, 15 Aug 2014 18:11:09 -0400
|
||||
Subject: [PATCH] Remove uneeded validation
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
index 7638832..e134ace 100644
|
||||
index b42baa9..d6e4023 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
@@ -511,7 +511,7 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
@@ -512,7 +512,7 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
}
|
||||
|
||||
static void applyEnchantments(Map<Enchantment, Integer> enchantments, NBTTagCompound tag, ItemMetaKey key) {
|
||||
@ -17,7 +17,7 @@ index 7638832..e134ace 100644
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -602,7 +602,14 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
@@ -603,7 +603,14 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
}
|
||||
|
||||
public boolean removeEnchant(Enchantment ench) {
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 36429dd025bd601b1b681fb79409e8795316c3c8 Mon Sep 17 00:00:00 2001
|
||||
From 894fbe91ced2095c5776641ff178de748732fadf Mon Sep 17 00:00:00 2001
|
||||
From: Thinkofdeath <thinkofdeath@spigotmc.org>
|
||||
Date: Tue, 19 Aug 2014 11:04:21 +0100
|
||||
Subject: [PATCH] Skip invalid enchants in CraftMetaItem
|
||||
@ -8,10 +8,10 @@ CraftMetaItem would add a null enchantment into the enchantment map which causes
|
||||
NullPointers later
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
index e134ace..e8c1a99 100644
|
||||
index d6e4023..6298d58 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
@@ -434,7 +434,11 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
@@ -435,7 +435,11 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
int id = 0xffff & ((NBTTagCompound) ench.get(i)).getShort(ENCHANTMENTS_ID.NBT);
|
||||
int level = 0xffff & ((NBTTagCompound) ench.get(i)).getShort(ENCHANTMENTS_LVL.NBT);
|
||||
|
||||
|
@ -1,14 +1,14 @@
|
||||
From 254472845abd1ee3a69b4282b547262ff9d1d474 Mon Sep 17 00:00:00 2001
|
||||
From 166fdc1c6f2728e48f35b4afc61039261bcb8350 Mon Sep 17 00:00:00 2001
|
||||
From: libraryaddict <redwarfare@live.com>
|
||||
Date: Fri, 22 Aug 2014 05:35:16 -0400
|
||||
Subject: [PATCH] Added isUnbreakable and setUnbreakable to ItemMeta
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
index e8c1a99..96b7a07 100644
|
||||
index 6298d58..a3bc76d 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
|
||||
@@ -203,6 +203,7 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
@@ -204,6 +204,7 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
static final ItemMetaKey ATTRIBUTES_UUID_HIGH = new ItemMetaKey("UUIDMost");
|
||||
@Specific(Specific.To.NBT)
|
||||
static final ItemMetaKey ATTRIBUTES_UUID_LOW = new ItemMetaKey("UUIDLeast");
|
||||
@ -16,7 +16,7 @@ index e8c1a99..96b7a07 100644
|
||||
|
||||
private String displayName;
|
||||
private List<String> lore;
|
||||
@@ -228,6 +229,7 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
@@ -229,6 +230,7 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
|
||||
this.repairCost = meta.repairCost;
|
||||
this.attributes = meta.attributes;
|
||||
@ -24,7 +24,7 @@ index e8c1a99..96b7a07 100644
|
||||
}
|
||||
|
||||
CraftMetaItem(NBTTagCompound tag) {
|
||||
@@ -420,6 +422,12 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
@@ -421,6 +423,12 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
} else {
|
||||
attributes = null;
|
||||
}
|
||||
@ -37,7 +37,7 @@ index e8c1a99..96b7a07 100644
|
||||
}
|
||||
|
||||
static Map<Enchantment, Integer> buildEnchantments(NBTTagCompound tag, ItemMetaKey key) {
|
||||
@@ -460,6 +468,13 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
@@ -461,6 +469,13 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
}
|
||||
|
||||
attributes = null;
|
||||
@ -51,7 +51,7 @@ index e8c1a99..96b7a07 100644
|
||||
}
|
||||
|
||||
static Map<Enchantment, Integer> buildEnchantments(Map<String, Object> map, ItemMetaKey key) {
|
||||
@@ -492,6 +507,13 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
@@ -493,6 +508,13 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
|
||||
applyEnchantments(enchantments, itemTag, ENCHANTMENTS);
|
||||
|
||||
@ -65,7 +65,7 @@ index e8c1a99..96b7a07 100644
|
||||
if (hasRepairCost()) {
|
||||
itemTag.setInt(REPAIR.NBT, repairCost);
|
||||
}
|
||||
@@ -550,7 +572,7 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
@@ -551,7 +573,7 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
|
||||
@Overridden
|
||||
boolean isEmpty() {
|
||||
@ -74,7 +74,7 @@ index e8c1a99..96b7a07 100644
|
||||
}
|
||||
|
||||
public String getDisplayName() {
|
||||
@@ -674,7 +696,7 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
@@ -675,7 +697,7 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
&& (this.hasEnchants() ? that.hasEnchants() && this.enchantments.equals(that.enchantments) : !that.hasEnchants())
|
||||
&& (this.hasLore() ? that.hasLore() && this.lore.equals(that.lore) : !that.hasLore())
|
||||
&& (this.hasAttributes() ? that.hasAttributes() && this.attributes.equals(that.attributes) : !that.hasAttributes())
|
||||
@ -83,7 +83,7 @@ index e8c1a99..96b7a07 100644
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -700,6 +722,7 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
@@ -701,6 +723,7 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
hash = 61 * hash + (hasEnchants() ? this.enchantments.hashCode() : 0);
|
||||
hash = 61 * hash + (hasAttributes() ? this.attributes.hashCode() : 0);
|
||||
hash = 61 * hash + (hasRepairCost() ? this.repairCost : 0);
|
||||
@ -91,7 +91,7 @@ index e8c1a99..96b7a07 100644
|
||||
return hash;
|
||||
}
|
||||
|
||||
@@ -743,6 +766,13 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
@@ -744,6 +767,13 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
builder.put(REPAIR.BUKKIT, repairCost);
|
||||
}
|
||||
|
||||
@ -105,7 +105,7 @@ index e8c1a99..96b7a07 100644
|
||||
return builder;
|
||||
}
|
||||
|
||||
@@ -805,6 +835,19 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
@@ -806,6 +836,19 @@ class CraftMetaItem implements ItemMeta, Repairable {
|
||||
// Spigot start
|
||||
private final Spigot spigot = new Spigot()
|
||||
{
|
||||
|
In neuem Issue referenzieren
Einen Benutzer sperren