From 97d49c526fa221a1cd880c3c2fedc489826b6384 Mon Sep 17 00:00:00 2001 From: Reider745 Date: Sun, 19 Apr 2026 10:59:55 +0300 Subject: [PATCH] feat: improve print stack trace --- src/main/java/com/reider745/InnerCoreServer.java | 16 +++++++++++++--- .../java/com/reider745/entity/EntityMethod.java | 2 +- 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/reider745/InnerCoreServer.java b/src/main/java/com/reider745/InnerCoreServer.java index e1538f98..c5d16e98 100644 --- a/src/main/java/com/reider745/InnerCoreServer.java +++ b/src/main/java/com/reider745/InnerCoreServer.java @@ -34,6 +34,7 @@ import com.zhekasmirnov.innercore.ui.LoadingUI; import com.zhekasmirnov.innercore.utils.FileTools; import com.zhekasmirnov.mcpe161.InnerCore; import org.json.JSONObject; +import org.mozilla.javascript.Context; import java.io.*; import java.net.HttpURLConnection; @@ -52,7 +53,7 @@ import java.util.zip.ZipFile; public class InnerCoreServer { public enum MethodHandling { - NONE, DEBUG, WARNING, RAISE; + NONE, DEBUG, WARNING, TRACE, RAISE; } public static final int PROTOCOL = 422; @@ -659,6 +660,7 @@ public class InnerCoreServer { case DEBUG -> Logger.message(message); case WARNING -> Logger.warning(message); case RAISE -> throw new RuntimeException(message); + case TRACE -> printStackTrace(message); default -> throw new UnsupportedOperationException(); } } @@ -681,11 +683,19 @@ public class InnerCoreServer { + "), which is why you're reading this right now"); } - public static void printStackTrace() { + public static void warning(String message) { + handleUnsupportedMethod("Warning: " + message); + } + + public static void printStackTrace(String message) { try { - throw new RuntimeException("Aboba"); + throw Context.reportRuntimeError("Error"); } catch (Exception e) { System.out.println(ICLog.getStackTrace(e)); } } + + public static void printStackTrace() { + printStackTrace("Trace"); + } } diff --git a/src/main/java/com/reider745/entity/EntityMethod.java b/src/main/java/com/reider745/entity/EntityMethod.java index 5e264452..eca35b19 100644 --- a/src/main/java/com/reider745/entity/EntityMethod.java +++ b/src/main/java/com/reider745/entity/EntityMethod.java @@ -75,7 +75,7 @@ public class EntityMethod { } if (entityUid != 0 && InnerCoreServer.isDeveloperMode()) { - Logger.warning("NativeAPI", "Unknown entityUid=" + entityUid + ", aborting requested action!"); + InnerCoreServer.warning("Unknown entityUid=" + entityUid + ", aborting requested action!"); } return null;