make schedule command per world

This commit is contained in:
Jake Potrebic 2021-01-04 19:53:36 -08:00 committed by MiniDigger | Martin
parent aac07a271c
commit 97b020f133

View file

@ -0,0 +1,37 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Jake Potrebic <jake.m.potrebic@gmail.com>
Date: Mon, 4 Jan 2021 19:52:44 -0800
Subject: [PATCH] Make schedule command per-world
diff --git a/src/main/java/net/minecraft/server/CommandSchedule.java b/src/main/java/net/minecraft/server/CommandSchedule.java
index c4cb8fb2b611cc8e2df82497a7248e106cdc188e..4f167cace29637ca5c4624a2628e1df7066bb0de 100644
--- a/src/main/java/net/minecraft/server/CommandSchedule.java
+++ b/src/main/java/net/minecraft/server/CommandSchedule.java
@@ -19,7 +19,7 @@ public class CommandSchedule {
return new ChatMessage("commands.schedule.cleared.failure", new Object[]{object});
});
private static final SuggestionProvider<CommandListenerWrapper> c = (commandcontext, suggestionsbuilder) -> {
- return ICompletionProvider.b((Iterable) ((CommandListenerWrapper) commandcontext.getSource()).getServer().getSaveData().H().u().a(), suggestionsbuilder);
+ return ICompletionProvider.b((Iterable) ((CommandListenerWrapper) commandcontext.getSource()).getWorld().worldDataServer.H().u().a(), suggestionsbuilder); // Paper
};
public static void a(com.mojang.brigadier.CommandDispatcher<CommandListenerWrapper> com_mojang_brigadier_commanddispatcher) {
@@ -42,7 +42,7 @@ public class CommandSchedule {
} else {
long j = commandlistenerwrapper.getWorld().getTime() + (long) i;
MinecraftKey minecraftkey = (MinecraftKey) pair.getFirst();
- CustomFunctionCallbackTimerQueue<MinecraftServer> customfunctioncallbacktimerqueue = commandlistenerwrapper.getServer().getSaveData().H().u();
+ CustomFunctionCallbackTimerQueue<MinecraftServer> customfunctioncallbacktimerqueue = commandlistenerwrapper.getWorld().worldDataServer.H().u(); // Paper
((Either) pair.getSecond()).ifLeft((customfunction) -> {
String s = minecraftkey.toString();
@@ -68,7 +68,7 @@ public class CommandSchedule {
}
private static int a(CommandListenerWrapper commandlistenerwrapper, String s) throws CommandSyntaxException {
- int i = commandlistenerwrapper.getServer().getSaveData().H().u().a(s);
+ int i = commandlistenerwrapper.getWorld().worldDataServer.H().u().a(s); // Paper
if (i == 0) {
throw CommandSchedule.b.create(s);