From 5b621d3d99c89d580f4647925fb1183d27c67a7b Mon Sep 17 00:00:00 2001 From: coding Date: Tue, 17 Oct 2017 02:53:51 +0000 Subject: [PATCH] =?UTF-8?q?refactor:=20=E5=87=8F=E5=B0=91=E5=85=A8?= =?UTF-8?q?=E5=B1=80=E5=8F=98=E9=87=8F=20=E8=B0=83=E8=AF=95require?= =?UTF-8?q?=E9=80=89=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/core/console.js | 51 ++++++++++++++++-------------- src/main/resources/core/init.js | 31 ++++++------------ src/main/resources/core/require.js | 2 +- 3 files changed, 37 insertions(+), 47 deletions(-) diff --git a/src/main/resources/core/console.js b/src/main/resources/core/console.js index 2bb360c..94b4c96 100644 --- a/src/main/resources/core/console.js +++ b/src/main/resources/core/console.js @@ -3,28 +3,31 @@ */ /*global base*/ var log = base.getLog().static; -var Level = Java.type('java.util.logging.Level'); -var Console = function (name) { - this.name = name ? '[' + name + '] ' : ''; - Object.defineProperty(this, 'name', { - get: function () { - return this._name; - }.bind(this), - set: function (name) { - this._name = name ? '[' + name + '] ' : ''; - }.bind(this) - }); - this.log = function () { - log.i(this.name + Array.prototype.join.call(arguments, ' ')); - }, - this.warn = function () { - log.w(this.name + Array.prototype.join.call(arguments, ' ')); - }, - this.error = function () { - log.log(Level.SEVERE, this.name + Array.prototype.join.call(arguments, ' ')); - }, - this.debug = function () { - log.d(this.name + Array.prototype.join.call(arguments, ' ')); +(function(global){ + var Level = Java.type('java.util.logging.Level'); + var Console = function (name) { + Object.defineProperty(this, 'name', { + get: function () { + return this._name; + }.bind(this), + set: function (name) { + this._name = name ? '[' + name + '] ' : ''; + }.bind(this) + }); + this.name = name; + this.log = function () { + log.i(this.name + Array.prototype.join.call(arguments, ' ')); + }, + this.warn = function () { + log.w(this.name + Array.prototype.join.call(arguments, ' ')); + }, + this.error = function () { + log.log(Level.SEVERE, this.name + Array.prototype.join.call(arguments, ' ')); + }, + this.debug = function () { + log.d(this.name + Array.prototype.join.call(arguments, ' ')); + } } -} -global.console = new Console(); \ No newline at end of file + global.Console = Console; + global.console = new Console(); +})(global) \ No newline at end of file diff --git a/src/main/resources/core/init.js b/src/main/resources/core/init.js index cbd3ad5..5de6693 100644 --- a/src/main/resources/core/init.js +++ b/src/main/resources/core/init.js @@ -5,34 +5,21 @@ var global = this; // noinspection JSUnusedLocalSymbols function init(root, plugin) { global.root = root; - initDir(); loadCore(); loadRequire(); loadLib4Bukkit(); loadPlugins(plugin); } -/** - * 初始化目录 - */ -function initDir() { - // 核心目录 - global.core_dir = root + "/core"; - // 模块目录 - global.miao_module_dir = root + "/modules"; - // 插件目录 - global.plugins_dir = root + "/plugins"; -} - /** * 初始化核心 */ function loadCore() { // 加载基础模块 - load(core_dir + '/ext.js'); - load(core_dir + '/console.js'); + load(root + '/core/ext.js'); + load(root + '/core/console.js'); // 加载补丁和扩展 - load(core_dir + '/patch.js'); + load(root + '/core/patch.js'); } /** @@ -40,20 +27,20 @@ function loadCore() { */ function loadRequire() { // 初始化加载器 - global.require = load(core_dir + '/require.js')(root); + global.require = load(root + '/core/require.js')(root); } function loadLib4Bukkit() { require('modules/event'); var task = require('modules/task'); - global.setTimeout = function (func, time, async) { - return async ? task.laterAsync(func, time) : task.later(func, time); + global.setTimeout = function (func, time, _async) { + return _async ? task.laterAsync(func, time) : task.later(func, time); }; global.clearTimeout = function (task) { task.cancel(); }; - global.setInterval = function (func, time, async) { - return async ? task.timerAsync(func, time) : task.timer(func, time); + global.setInterval = function (func, time, _async) { + return _async ? task.timerAsync(func, time) : task.timer(func, time); }; global.clearInterval = function (task) { task.cancel(); @@ -66,7 +53,7 @@ function loadLib4Bukkit() { function loadPlugins(plugin) { // 初始化本体插件 global.pluginManager = require('modules/plugin'); - pluginManager.init(plugin, plugins_dir); + pluginManager.init(plugin, root + '/plugins'); // 只有当在正式环境运行的时候才加载 if (pluginManager.$) { pluginManager.load(); diff --git a/src/main/resources/core/require.js b/src/main/resources/core/require.js index c7153c6..a41bca6 100644 --- a/src/main/resources/core/require.js +++ b/src/main/resources/core/require.js @@ -103,7 +103,7 @@ * @returns {Object} */ function compileModule(id, name, file, optional) { - log.d('加载模块 %s 位于 %s', name, id); + log.d('加载模块 %s 位于 %s Optional %s', name, id, optional.toJson()); // noinspection JSUnresolvedVariable var module = { id: id,