craftbukkit/nms-patches/net/minecraft/server/commands/CommandTime.patch

45 lines
1.8 KiB
Diff
Raw Normal View History

2021-03-16 09:00:00 +11:00
--- a/net/minecraft/server/commands/CommandTime.java
+++ b/net/minecraft/server/commands/CommandTime.java
@@ -10,6 +10,11 @@
import net.minecraft.network.chat.ChatMessage;
import net.minecraft.server.level.WorldServer;
2021-03-09 08:47:33 +11:00
2019-12-20 17:06:18 -08:00
+// CraftBukkit start
+import org.bukkit.Bukkit;
+import org.bukkit.event.world.TimeSkipEvent;
2021-03-09 08:47:33 +11:00
+// CraftBukkit end
+
2019-12-20 17:06:18 -08:00
public class CommandTime {
2020-06-25 10:00:00 +10:00
2021-03-16 09:00:00 +11:00
public static void a(CommandDispatcher<CommandListenerWrapper> commanddispatcher) {
@@ -51,7 +56,13 @@
2019-12-20 17:06:18 -08:00
while (iterator.hasNext()) {
WorldServer worldserver = (WorldServer) iterator.next();
- worldserver.setDayTime((long) i);
+ // CraftBukkit start
+ TimeSkipEvent event = new TimeSkipEvent(worldserver.getWorld(), TimeSkipEvent.SkipReason.COMMAND, i - worldserver.getDayTime());
+ Bukkit.getPluginManager().callEvent(event);
+ if (!event.isCancelled()) {
+ worldserver.setDayTime((long) worldserver.getDayTime() + event.getSkipAmount());
+ }
+ // CraftBukkit end
}
commandlistenerwrapper.sendMessage(new ChatMessage("commands.time.set", new Object[]{i}), true);
2021-03-16 09:00:00 +11:00
@@ -64,7 +75,13 @@
2019-12-20 17:06:18 -08:00
while (iterator.hasNext()) {
WorldServer worldserver = (WorldServer) iterator.next();
- worldserver.setDayTime(worldserver.getDayTime() + (long) i);
+ // CraftBukkit start
+ TimeSkipEvent event = new TimeSkipEvent(worldserver.getWorld(), TimeSkipEvent.SkipReason.COMMAND, i);
+ Bukkit.getPluginManager().callEvent(event);
+ if (!event.isCancelled()) {
+ worldserver.setDayTime(worldserver.getDayTime() + event.getSkipAmount());
+ }
+ // CraftBukkit end
}
int j = a(commandlistenerwrapper.getWorld());