diff --git a/src/main/resources/core/console.js b/src/main/resources/core/console.js index 717069e..bfde13c 100644 --- a/src/main/resources/core/console.js +++ b/src/main/resources/core/console.js @@ -2,43 +2,43 @@ * 控制台输出类 */ /*global base*/ -(function (global) { +(function(global) { var Arrays = Java.type('java.util.Arrays'); var Level = Java.type('java.util.logging.Level'); global.ConsoleDefault = function ConsoleDefault(name) { Object.defineProperty(this, 'name', { - get: function () { + get: function() { return this._name; }.bind(this), - set: function (name) { + set: function(name) { this._name = name ? '[' + name + '] ' : ''; // noinspection JSUnusedGlobalSymbols this.prefix = name ? '§6[§cMS§6][§b' + name + '§6]§r ' : '§6[§bMiaoScript§6]§r '; }.bind(this) }); this.name = name; - this.log = this.info = function () { + this.log = this.info = function() { log.info(this.name + Array.prototype.join.call(arguments, ' ')); }; // noinspection JSUnusedGlobalSymbols - this.warn = function () { + this.warn = function() { log.warning(this.name + Array.prototype.join.call(arguments, ' ')); }; - this.error = function () { + this.error = function() { log.log(Level.SEVERE, this.name + Array.prototype.join.call(arguments, ' ')); }; - this.debug = function () { + this.debug = function() { log.info(this.name + '[DEBUG] ' + Array.prototype.join.call(arguments, ' ')); }; this.debug = global.debug ? this.debug : global.noop; this.sender = this.info; this.console = this.info; - this.object = function (obj) { + this.object = function(obj) { for (var i in obj) { this.log(i, '=>', obj[i]) } }; - this.ex = function (message, ex) { + this.ex = function(message, ex) { if (!ex) { this.console('§4' + message); ex = message; @@ -49,11 +49,13 @@ if (track.class) { track = Arrays.asList(track) } - track.forEach(function (stack) { + track.forEach(function(stack) { if (stack.className.startsWith('<')) { this.console(' §e位于§c', stack.fileName, '=>§c', stack.methodName, '§4行', stack.lineNumber); } else {// %s.%s(§4%s:%s§c) - this.console(' §e位于§c', stack.className + '.' + stack.methodName + '(§4' + stack.fileName + ':' + stack.lineNumber + '§c)'); + var className = stack.className + className = className.startsWith('jdk.nashorn.internal.scripts') ? className.substr(className.lastIndexOf('$') + 1) : className + this.console(' §e位于§c', className + '.' + stack.methodName + '(§4' + stack.fileName + ':' + stack.lineNumber + '§c)'); } }.bind(this)); }; diff --git a/src/main/resources/internal/bukkit/console.js b/src/main/resources/internal/bukkit/console.js index e562d3c..fdaab7a 100644 --- a/src/main/resources/internal/bukkit/console.js +++ b/src/main/resources/internal/bukkit/console.js @@ -6,6 +6,7 @@ var sender = arguments[0]; if (!(sender instanceof org.bukkit.command.CommandSender)) { this.error("第一个参数未实现 org.bukkit.command.CommandSender 无法发送消息!") + return } var args = Array.prototype.slice.call(arguments, 1); sender.sendMessage(console.prefix + args.join(' ')); diff --git a/src/main/resources/internal/sponge/console.js b/src/main/resources/internal/sponge/console.js index 38fa1f6..084cf70 100644 --- a/src/main/resources/internal/sponge/console.js +++ b/src/main/resources/internal/sponge/console.js @@ -7,6 +7,7 @@ var sender = arguments[0]; if (!(sender instanceof org.spongepowered.api.command.CommandSource)) { this.error("第一个参数未实现 org.spongepowered.api.command.CommandSource 无法发送消息!") + return } var args = Array.prototype.slice.call(arguments, 1); sender.sendMessage(Text.of(console.prefix + args.join(' ')));