Files
PlazmaBukkitMC/patches/server/0060-Tick-toggle-subcommand.patch
2024-12-25 19:12:48 +09:00

37 lines
1.8 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: AlphaKR93 <dev@alpha93.kr>
Date: Sat, 14 Dec 2024 11:06:41 +0900
Subject: [PATCH] Tick toggle subcommand
diff --git a/src/main/java/net/minecraft/server/commands/TickCommand.java b/src/main/java/net/minecraft/server/commands/TickCommand.java
index 13d96b54f48d60b098b80e04ba6168762c335c75..5aab945085eb4ed2ea44832319c6daad96fe3a71 100644
--- a/src/main/java/net/minecraft/server/commands/TickCommand.java
+++ b/src/main/java/net/minecraft/server/commands/TickCommand.java
@@ -21,6 +21,10 @@ public class TickCommand {
dispatcher.register(
Commands.literal("tick")
.requires(source -> source.hasPermission(3))
+ // Plazma start - Tick toggle subcommand
+ .executes(context -> toggleFreeze(context.getSource()))
+ .then(Commands.literal("toggle").executes(context -> toggleFreeze(context.getSource())))
+ // Plazma end - Tick toggle subcommand
.then(Commands.literal("query").executes(context -> tickQuery(context.getSource())))
.then(
Commands.literal("rate")
@@ -108,6 +112,14 @@ public class TickCommand {
return 1;
}
+ // Plazma start - Tick toggle subcommand
+ private static int toggleFreeze(CommandSourceStack source) {
+ ServerTickRateManager serverTickRateManager = source.getServer().tickRateManager();
+ boolean frozen = !serverTickRateManager.isFrozen();
+ return setFreeze(source, frozen);
+ }
+ // Plazma end - Tick toggle subcommand
+
private static int setFreeze(CommandSourceStack source, boolean frozen) {
ServerTickRateManager serverTickRateManager = source.getServer().tickRateManager();
if (frozen) {