feat: 完善Sponge事件注册 新增player封装类

This commit is contained in:
coding
2017-12-28 08:30:16 +00:00
parent fe615564ce
commit ea5fe60538
8 changed files with 275 additions and 70 deletions

View File

@ -7,7 +7,7 @@ var Thread = Java.type("java.lang.Thread");
var Bukkit = Java.type("org.bukkit.Bukkit");
var Listener = Java.type("org.bukkit.event.Listener");
var Modifier = Java.type("java.lang.reflect.Modifier");
var BukkitEvent = Java.type("org.bukkit.event.Event");
var Event = Java.type("org.bukkit.event.Event");
var EventPriority = Java.type("org.bukkit.event.EventPriority");
var EventExecutor = Java.type("org.bukkit.plugin.EventExecutor");
@ -65,7 +65,7 @@ function mapEventName() {
*/
function isVaildEvent(clz) {
// noinspection JSUnresolvedVariable 继承于 org.bukkit.event.Event
return BukkitEvent.class.isAssignableFrom(clz) &&
return Event.class.isAssignableFrom(clz) &&
// 访问符为Public
Modifier.isPublic(clz.getModifiers()) &&
// 不是抽象类
@ -87,6 +87,7 @@ function listen(jsp, event, exec, priority, ignoreCancel) {
if (!eventCls) {
try {
eventCls = base.getClass(eventCls);
mapEvent[event] = eventCls;
} catch (ex) {
console.warn("事件 %s 未找到!".format(event));
return;
@ -142,7 +143,7 @@ function listen(jsp, event, exec, priority, ignoreCancel) {
var mapEvent = [];
// 映射事件名称
console.info('Bukkit 事件映射完毕 共计 %s 个事件!'.format(mapEventName().toFixed(0)));
console.info('Sponge 事件映射完毕 共计 %s 个事件!'.format(mapEventName().toFixed(0)));
module.exports = {
on: listen,