Skip to content

Commit 977d8cb

Browse files
committed
在进入存档和离开存档时候会重置函数缓存
1 parent 2ca6103 commit 977d8cb

File tree

2 files changed

+15
-8
lines changed

2 files changed

+15
-8
lines changed

src/main/java/top/mcfpp/mod/debugger/DatapackDebugger.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
package top.mcfpp.mod.debugger;
22

33
import net.fabricmc.api.ModInitializer;
4+
import net.fabricmc.fabric.api.entity.event.v1.ServerPlayerEvents;
5+
import net.fabricmc.fabric.api.event.lifecycle.v1.ServerLifecycleEvents;
46
import org.slf4j.Logger;
57
import org.slf4j.LoggerFactory;
68
import top.mcfpp.mod.debugger.command.BreakPointCommand;
@@ -11,7 +13,7 @@ public class DatapackDebugger implements ModInitializer {
1113
@Override
1214
public void onInitialize() {
1315

14-
16+
ServerLifecycleEvents.SERVER_STARTED.register(server -> BreakPointCommand.clear());
1517

1618
BreakPointCommand.onInitialize();
1719
}

src/main/java/top/mcfpp/mod/debugger/command/BreakPointCommand.java

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99

1010
import net.minecraft.nbt.NbtElement;
1111
import net.minecraft.nbt.NbtHelper;
12+
import net.minecraft.server.MinecraftServer;
1213
import net.minecraft.server.command.ServerCommandSource;
1314
import net.minecraft.text.MutableText;
1415
import net.minecraft.text.Style;
@@ -119,13 +120,7 @@ public static void onInitialize() {
119120
)
120121
.then(literal("clear")
121122
.executes(context -> {
122-
isDebugCommand = false;
123-
isDebugging = false;
124-
debugMode = true;
125-
moveSteps = 0;
126-
storedCommandExecutionContext.clear();
127-
FunctionStackManager.functionStack.clear();
128-
FunctionStackManager.source.clear();
123+
clear();
129124
return 1;
130125
})
131126
)
@@ -147,6 +142,16 @@ public static void onInitialize() {
147142
});
148143
}
149144

145+
public static void clear(){
146+
isDebugCommand = false;
147+
isDebugging = false;
148+
debugMode = true;
149+
moveSteps = 0;
150+
storedCommandExecutionContext.clear();
151+
FunctionStackManager.functionStack.clear();
152+
FunctionStackManager.source.clear();
153+
}
154+
150155
private static void breakPoint(@NotNull ServerCommandSource source) {
151156
source.getServer().getTickManager().setFrozen(true);
152157
isDebugging = true;

0 commit comments

Comments
 (0)