From 816445bccd80ab9f6ac204aee980318d208f41e3 Mon Sep 17 00:00:00 2001 From: luisc Date: Mon, 13 Dec 2021 22:51:33 -0600 Subject: [PATCH] Script error output shortened to just the error description and line number. --- .../npcs/controllers/ScriptContainer.java | 31 +++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/src/main/java/noppes/npcs/controllers/ScriptContainer.java b/src/main/java/noppes/npcs/controllers/ScriptContainer.java index fefa8ff50..f252a871f 100644 --- a/src/main/java/noppes/npcs/controllers/ScriptContainer.java +++ b/src/main/java/noppes/npcs/controllers/ScriptContainer.java @@ -20,6 +20,7 @@ import noppes.npcs.CustomNpcs; import noppes.npcs.NBTTags; import noppes.npcs.NoppesUtilServer; import noppes.npcs.constants.EnumScriptType; +import scala.Char; public class ScriptContainer { private static final String lock = "lock"; @@ -101,7 +102,20 @@ public class ScriptContainer { this.errored = true; var14.printStackTrace(pw); } finally { - this.appandConsole(sw.getBuffer().toString().trim()); + String errorString = sw.getBuffer().toString().trim(); + int startIndex = 0; + if(!errorString.isEmpty()) { + String endString = "in at line number "; + startIndex = errorString.indexOf(endString) + endString.length(); + + for (int i = startIndex; i < errorString.length(); i++) { + if (!Character.isDigit(errorString.charAt(i))) { + startIndex = i; + break; + } + } + } + this.appandConsole(errorString.substring(0, startIndex)); pw.close(); } } @@ -141,7 +155,20 @@ public class ScriptContainer { this.errored = true; var14.printStackTrace(pw); } finally { - this.appandConsole(sw.getBuffer().toString().trim()); + String errorString = sw.getBuffer().toString().trim(); + int startIndex = 0; + if(!errorString.isEmpty()) { + String endString = "in at line number "; + startIndex = errorString.indexOf(endString) + endString.length(); + + for (int i = startIndex; i < errorString.length(); i++) { + if (!Character.isDigit(errorString.charAt(i))) { + startIndex = i; + break; + } + } + } + this.appandConsole(errorString.substring(0, startIndex)); pw.close(); Current = null; }