Fix build

This commit is contained in:
Etil
2021-12-10 22:19:30 +01:00
parent 1fe5fc54b0
commit c0751b3dde
10 changed files with 114 additions and 14 deletions

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Mirai Branding Changes
diff --git a/build.gradle.kts b/build.gradle.kts
index bc42301d161b49eead1d5408183bb04d7f617153..d3fdca4fe0de48446987f8fae650daab6665ae17 100644
index 088e1e6f76774350066ce1021f6aed4eb3e27c2d..228d6d8a892e14f57b642125e2cb02984825d2c4 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -18,7 +18,7 @@ repositories {
@@ -17,7 +17,7 @@ index bc42301d161b49eead1d5408183bb04d7f617153..d3fdca4fe0de48446987f8fae650daab
// Pufferfish start
implementation("io.papermc.paper:paper-mojangapi:1.18-R0.1-SNAPSHOT") {
exclude("io.papermc.paper", "paper-api")
@@ -79,7 +79,7 @@ tasks.jar {
@@ -80,7 +80,7 @@ tasks.jar {
attributes(
"Main-Class" to "org.bukkit.craftbukkit.Main",
"Implementation-Title" to "CraftBukkit",
@@ -205,7 +205,7 @@ index 1e7ae166a1d53fce28297e2eaebd11ec28a57a55..819fc4b53b5f2f9dc9c25641be644218
public SystemReport fillSystemReport(SystemReport details) {
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index d42aa5c6a5bdb00893a134946ec07ec513e53991..6576026980ff20e7ae7d5450aa3bb54347572701 100644
index 70007282d5fbb243d1d76d46713e3dcbc2411677..cdb95e4070f7069e2f1eb0b115d6803db1ead22f 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -253,7 +253,7 @@ import javax.annotation.Nullable; // Paper

View File

@@ -26,7 +26,7 @@ index aae2dadabedb075fd1bc712f0226882b85f4551d..0178460888a2273e4a7f75b1330ce853
this.setPvpAllowed(dedicatedserverproperties.pvp);
this.setFlightAllowed(dedicatedserverproperties.allowFlight);
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 6576026980ff20e7ae7d5450aa3bb54347572701..9ad3d54593c6d7bc7c918ef9bcd52f5c54cc984e 100644
index cdb95e4070f7069e2f1eb0b115d6803db1ead22f..e8b256c947f7638496fdc8dd29b88298e3e003eb 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -931,6 +931,7 @@ public final class CraftServer implements Server {
@@ -38,10 +38,10 @@ index 6576026980ff20e7ae7d5450aa3bb54347572701..9ad3d54593c6d7bc7c918ef9bcd52f5c
// world.serverLevelData.setDifficulty(config.difficulty); // Paper - per level difficulty
world.setSpawnSettings(world.serverLevelData.getDifficulty() != Difficulty.PEACEFUL && config.spawnMonsters, config.spawnAnimals); // Paper - per level difficulty (from MinecraftServer#setDifficulty(ServerLevel, Difficulty, boolean))
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
index 450518903c0a10301b177d8dd7fe05aca3b8b37e..b944e9344713866987d29599e329213e279f816c 100644
index deb33456b5b194a662cbdbacf17752c87f2cecaf..3db00cf0143ca4422ab686f0bea8224766edd5df 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -153,6 +153,14 @@ public class Main {
@@ -155,6 +155,14 @@ public class Main {
.describedAs("Jar file");
// Paper end

View File

@@ -1,17 +1,17 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Etil <81570777+etil2jz@users.noreply.github.com>
Date: Sat, 4 Dec 2021 22:52:50 +0100
Date: Fri, 10 Dec 2021 21:48:43 +0100
Subject: [PATCH] Utilities
Original code by YatopiaMC, licensed under MIT
You can find the original code on https://github.com/YatopiaMC/Yatopia
diff --git a/build.gradle.kts b/build.gradle.kts
index 6a16c5843bc2c585dde268b6dacef7f54a13d4fb..2e69e4875f22b2cb695ebfa851ae545e580c8b9c 100644
index 228d6d8a892e14f57b642125e2cb02984825d2c4..4b8ec4b11b6622e796541c8619753cf84839743e 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -39,6 +39,7 @@ dependencies {
implementation("org.apache.logging.log4j:log4j-iostreams:2.14.1") // Paper
@@ -40,6 +40,7 @@ dependencies {
implementation("org.apache.logging.log4j:log4j-slf4j18-impl:2.15.0") // Paper
implementation("org.ow2.asm:asm:9.2")
implementation("org.ow2.asm:asm-commons:9.2") // Paper - ASM event executor generation
+ implementation("org.apache.commons:commons-rng-core:1.4") // Yatopia

View File

@@ -5,7 +5,7 @@ Subject: [PATCH] Configurable max bees in hive
diff --git a/src/main/java/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java
index 9fcd835d219aafbe113ebb1b796052e07bf2b046..5d04fedb428d5bfd59bfc47ace42006be3f58737 100644
index 9fcd835d219aafbe113ebb1b796052e07bf2b046..ffd89bb615b0e64f961a8f37f1d279c0fb6f43d1 100644
--- a/src/main/java/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java
+++ b/src/main/java/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java
@@ -43,7 +43,7 @@ public class BeehiveBlockEntity extends BlockEntity {

View File

@@ -32,7 +32,7 @@ index 32a4b7554677609691e23f833a5ec76d1d437ff0..13085533dba61cf526cf77bac44e3235
public static ExecutorService backgroundExecutor() {
return BACKGROUND_EXECUTOR;
diff --git a/src/main/java/net/minecraft/util/datafix/DataFixers.java b/src/main/java/net/minecraft/util/datafix/DataFixers.java
index b08d32bc80b4a65ebb980366a3e717c3b0e1bdab..9e31e12203dcfa0836e38ee32bad33bf34caa688 100644
index b08d32bc80b4a65ebb980366a3e717c3b0e1bdab..a4ff80ec773e3a33238d444966054bd9a48a60d8 100644
--- a/src/main/java/net/minecraft/util/datafix/DataFixers.java
+++ b/src/main/java/net/minecraft/util/datafix/DataFixers.java
@@ -78,15 +78,15 @@ public class DataFixers {

View File

@@ -7,10 +7,10 @@ Original code by YatopiaMC, licensed under MIT
You can find the original code on https://github.com/YatopiaMC/Yatopia
diff --git a/build.gradle.kts b/build.gradle.kts
index 2e69e4875f22b2cb695ebfa851ae545e580c8b9c..23966877a25943a700dd159f02441b79946f8890 100644
index 4b8ec4b11b6622e796541c8619753cf84839743e..3152e5c7262712411933c4c1111b466b2a6e0871 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -106,6 +106,7 @@ relocation {
@@ -107,6 +107,7 @@ relocation {
relocate("org.bukkit.craftbukkit" to "org.bukkit.craftbukkit.v$packageVersion") {
exclude("org.bukkit.craftbukkit.Main*")
}

View File

@@ -0,0 +1,24 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Etil <81570777+etil2jz@users.noreply.github.com>
Date: Fri, 10 Dec 2021 22:00:25 +0100
Subject: [PATCH] Don't save Fireworks
Original code by Starlis, licensed under GNU General Public License v3.0
You can find the original code on https://github.com/starlis/empirecraft
diff --git a/src/main/java/net/minecraft/world/entity/projectile/FireworkRocketEntity.java b/src/main/java/net/minecraft/world/entity/projectile/FireworkRocketEntity.java
index fe502e148e218ae404e0049c0251d3e3ca08c825..015422d2a01c99c121481643473b8a129bbbac77 100644
--- a/src/main/java/net/minecraft/world/entity/projectile/FireworkRocketEntity.java
+++ b/src/main/java/net/minecraft/world/entity/projectile/FireworkRocketEntity.java
@@ -355,4 +355,11 @@ public class FireworkRocketEntity extends Projectile implements ItemSupplier {
public boolean isAttackable() {
return false;
}
+
+ // EMC start
+ @Override
+ public boolean shouldBeSaved() {
+ return false;
+ }
+ // EMC end
}

View File

@@ -0,0 +1,20 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Etil <81570777+etil2jz@users.noreply.github.com>
Date: Fri, 10 Dec 2021 22:07:06 +0100
Subject: [PATCH] Do not drop items from Give command
Original code by Starlis, licensed under GNU General Public License v3.0
You can find the original code on https://github.com/starlis/empirecraft
diff --git a/src/main/java/net/minecraft/server/commands/GiveCommand.java b/src/main/java/net/minecraft/server/commands/GiveCommand.java
index a0dc380e90415de9068ea408d62a1605c82631df..be8380837c1ddcd5b27694de2d5c3a9a2760c093 100644
--- a/src/main/java/net/minecraft/server/commands/GiveCommand.java
+++ b/src/main/java/net/minecraft/server/commands/GiveCommand.java
@@ -45,6 +45,7 @@ public class GiveCommand {
k -= l;
ItemStack itemStack = item.createItemStack(l, false);
boolean bl = serverPlayer.getInventory().add(itemStack);
+ if (true) { continue; } // EMC - never drop items
if (bl && itemStack.isEmpty()) {
itemStack.setCount(1);
ItemEntity itemEntity2 = serverPlayer.drop(itemStack, false, false, true); // Paper - Fix duplicating /give items on item drop cancel

View File

@@ -0,0 +1,36 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Etil <81570777+etil2jz@users.noreply.github.com>
Date: Fri, 10 Dec 2021 22:13:13 +0100
Subject: [PATCH] Don't load chunks for physics
Original code by Starlis, licensed under GNU General Public License v3.0
You can find the original code on https://github.com/starlis/empirecraft
diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java
index 426b006ba49bf244b048a3a0f3a3b5b577041cd3..2eb8ce55cdca9bcc2e9178c498c750dca9e9939b 100644
--- a/src/main/java/net/minecraft/world/level/Level.java
+++ b/src/main/java/net/minecraft/world/level/Level.java
@@ -896,7 +896,8 @@ public abstract class Level implements LevelAccessor, AutoCloseable {
public void neighborChanged(BlockPos pos, Block sourceBlock, BlockPos neighborPos) {
if (!this.isClientSide) {
- BlockState iblockdata = this.getBlockState(pos);
+ BlockState iblockdata = this.getBlockStateIfLoaded(pos); // EMC
+ if (iblockdata == null) return; // EMC
try {
// CraftBukkit start
diff --git a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
index 05c46f3b3bce5225b819d86e6e06729a5093e092..450202b29726df7ddbe9422836a2ed2fdcbc52df 100644
--- a/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
+++ b/src/main/java/net/minecraft/world/level/block/state/BlockBehaviour.java
@@ -930,7 +930,8 @@ public abstract class BlockBehaviour {
Direction enumdirection = aenumdirection[l];
blockposition_mutableblockposition.setWithOffset(pos, enumdirection);
- BlockState iblockdata = world.getBlockState(blockposition_mutableblockposition);
+ BlockState iblockdata = world.getBlockStateIfLoaded(blockposition_mutableblockposition); // EMC
+ if (iblockdata == null) { continue; } // EMC
BlockState iblockdata1 = iblockdata.updateShape(enumdirection.getOpposite(), this.asState(), world, blockposition_mutableblockposition, pos);
Block.updateOrDestroy(iblockdata, iblockdata1, world, blockposition_mutableblockposition, flags, maxUpdateDepth);

View File

@@ -0,0 +1,20 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Etil <81570777+etil2jz@users.noreply.github.com>
Date: Fri, 10 Dec 2021 22:18:19 +0100
Subject: [PATCH] Do not process chat/commands before player has joined
Original code by Starlis, licensed under GNU General Public License v3.0
You can find the original code on https://github.com/starlis/empirecraft
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
index 23c1f6d97ef72f2f75cad51b725bdbdf011d3c4e..c65cd541a60172054ae1bb6ab3610f3eb042b50d 100644
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
@@ -2067,6 +2067,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser
private void handleChat(TextFilter.FilteredText message) {
if (this.player.isRemoved() || this.player.getChatVisibility() == ChatVisiblity.HIDDEN) { // CraftBukkit - dead men tell no tales
this.send(new ClientboundChatPacket((new TranslatableComponent("chat.disabled.options")).withStyle(ChatFormatting.RED), ChatType.SYSTEM, Util.NIL_UUID));
+ } else if (!player.didPlayerJoinEvent) { return; // EMC - do not handle chat messages before they joined
} else {
this.player.resetLastActionTime();
String s = message.getRaw();