diff --git a/packages/plugins/src/MiaoChat.ts b/packages/plugins/src/MiaoChat.ts
index e397ce2b..8cee2058 100644
--- a/packages/plugins/src/MiaoChat.ts
+++ b/packages/plugins/src/MiaoChat.ts
@@ -2,9 +2,9 @@
///
///
-import { server, plugin as pluginApi, channel } from '@ms/api'
+import { server, plugin as pluginApi, channel, constants } from '@ms/api'
import { inject, optional } from '@ms/container';
-import { plugin, interfaces, cmd, listener, tab, config } from '@ms/plugin'
+import { plugin, interfaces, cmd, listener, tab, config, enable } from '@ms/plugin'
import Tellraw from '@ms/common/dist/tellraw'
const ByteArrayInputStream = Java.type("java.io.ByteArrayInputStream");
@@ -12,10 +12,8 @@ const ByteArrayOutputStream = Java.type("java.io.ByteArrayOutputStream");
const StandardCharsets = Java.type("java.nio.charset.StandardCharsets");
const GZIPInputStream = Java.type("java.util.zip.GZIPInputStream");
const GZIPOutputStream = Java.type("java.util.zip.GZIPOutputStream");
-const Consumer = Java.type("java.util.function.Consumer");
-const ByteArray = Java.type("byte[]")
-
const BiConsumer = Java.type('java.util.function.BiConsumer')
+const ByteArray = Java.type("byte[]")
class MiaoMessage {
// public static final String CHANNEL = "MiaoChat:Default".toLowerCase();
@@ -146,7 +144,7 @@ export class MiaoChat extends interfaces.Plugin {
}
private compare(prop: string) {
- return function(obj1: { [x: string]: any; }, obj2: { [x: string]: any; }) {
+ return function (obj1: { [x: string]: any; }, obj2: { [x: string]: any; }) {
var val1 = obj1[prop];
var val2 = obj2[prop];
if (!isNaN(Number(val1)) && !isNaN(Number(val2))) {
@@ -184,9 +182,6 @@ export class MiaoChat extends interfaces.Plugin {
} catch (ex) {
this.logger.console("§cCan't found me.clip.placeholderapi.PlaceholderAPI variable will not be replaced! Err: " + ex)
}
- this.channelOff = this.Channel?.listen(this, MiaoMessage.CHANNEL, (data) => {
- this.sendChatAll(MiaoMessage.decode(data).json)
- })
}
spongeenable() {
@@ -205,6 +200,10 @@ export class MiaoChat extends interfaces.Plugin {
} catch (ex) {
this.logger.console("§cCan't found me.rojo8399.placeholderapi.PlaceholderService variable will not be replaced! Err: " + ex)
}
+ }
+
+ @enable({ servers: [constants.ServerType.Bukkit, constants.ServerType.Sponge] })
+ serverEnbale() {
this.channelOff = this.Channel?.listen(this, MiaoMessage.CHANNEL, (data) => {
this.sendChatAll(MiaoMessage.decode(data).json)
})
@@ -244,7 +243,7 @@ export class MiaoChat extends interfaces.Plugin {
@listener({ servers: ['bukkit'] })
AsyncPlayerChatEvent(event: org.bukkit.event.player.AsyncPlayerChatEvent) {
- this.sendChat(event.getPlayer(), event.getMessage(), function() {
+ this.sendChat(event.getPlayer(), event.getMessage(), function () {
event.setCancelled(true);
});
}
@@ -260,7 +259,7 @@ export class MiaoChat extends interfaces.Plugin {
if (plain.startsWith(Tellraw.duplicateChar)) {
return;
}
- this.sendChat(player, plain, function() {
+ this.sendChat(player, plain, function () {
event.setMessageCancelled(true)
});
}
diff --git a/packages/plugins/src/MiaoConsole.ts b/packages/plugins/src/MiaoConsole.ts
index cced75d0..974e2fd4 100644
--- a/packages/plugins/src/MiaoConsole.ts
+++ b/packages/plugins/src/MiaoConsole.ts
@@ -7,6 +7,12 @@ import { plugin, interfaces, cmd } from '@ms/plugin'
import { inject, ContainerInstance, Container } from '@ms/container'
import io, { Server as SocketIOServer, Socket as SocketIOSocket } from '@ms/websocket'
+const suffixMap = {
+ ts: 'typescript',
+ js: 'javascript',
+ yml: 'yaml'
+}
+
@plugin({ name: 'MiaoConsole', version: '1.0.0', author: 'MiaoWoo', servers: ['!nukkit'], source: __filename })
export class MiaoConsole extends interfaces.Plugin {
@inject(ContainerInstance)
@@ -84,7 +90,7 @@ export class MiaoConsole extends interfaces.Plugin {
}
})
client.on('edit', (file: string, fn) => {
- fn && fn(base.read(file), file.split('.', 2)[1])
+ fn && fn(base.read(file), suffixMap[file.split('.', 2)[1]])
})
client.on('disconnect', () => {
this.logger.console(`§6客户端 §b${client.id} §c断开连接...`)
@@ -93,16 +99,16 @@ export class MiaoConsole extends interfaces.Plugin {
this.logger.info('Netty Channel Pipeline Inject MiaoDetectHandler Successful!')
}
- private runCode(code: string, namespace, client) {
+ private runCode(code: string, namespace: any, client: any) {
let tfunc = new Function('namespace', 'client', `
var reflect = require('@ms/common/dist/reflect');
var tempconcent = '';
function print(text) {
- tempconcent += "\\n" + text
+ tempconcent += text + "\\n"
}
- return eval(${JSON.stringify(code)}) + tempconcent
+ var result = eval(${JSON.stringify(code)});
+ return tempconcent + result
`)
- console.log(tfunc)
return this.task.callSyncMethod(() => tfunc.apply(this, [namespace, client])) + ''
}
}
diff --git a/packages/plugins/tsconfig.json b/packages/plugins/tsconfig.json
index 05d1d3c0..17353c5f 100644
--- a/packages/plugins/tsconfig.json
+++ b/packages/plugins/tsconfig.json
@@ -3,7 +3,9 @@
"compilerOptions": {
"baseUrl": "src",
"outDir": "dist",
- "skipLibCheck": true
+ "skipLibCheck": true,
+ "sourceMap": false,
+ "inlineSourceMap": true
},
"exclude": [
"dist",
diff --git a/packages/websocket/src/server/index.ts b/packages/websocket/src/server/index.ts
index 96449b98..d2a6496f 100644
--- a/packages/websocket/src/server/index.ts
+++ b/packages/websocket/src/server/index.ts
@@ -1,10 +1,10 @@
import { EventEmitter } from 'events'
+import { NettyClient } from './client'
+import { ServerOptions } from '../socket-io'
import { ServerEvent, Keys } from './constants'
import { WebSocketDetect } from './websocket_detect'
import { WebSocketHandler } from './websocket_handler'
-import { NettyClient } from './client'
-import { ServerOptions } from '../socket-io'
class NettyWebSocketServer extends EventEmitter {
private pipeline: any;
@@ -22,10 +22,9 @@ class NettyWebSocketServer extends EventEmitter {
ctx.fireChannelRead(channel)
})
connectEvent.on(ServerEvent.connect, (ctx) => {
- console.log('NettyWebSocketServer ServerEvent.connect', ctx, ctx.channel().id(), ctx.channel().class.name)
- let nettyClient = new NettyClient(this, ctx.channel());
- this.allClients[nettyClient.id] = nettyClient;
- this.emit(ServerEvent.connect, nettyClient);
+ let nettyClient = new NettyClient(this, ctx.channel())
+ this.allClients[nettyClient.id] = nettyClient
+ this.emit(ServerEvent.connect, nettyClient)
})
connectEvent.on(ServerEvent.message, (ctx, msg) => {
this.emit(ServerEvent.message, this.allClients[ctx.channel().id()], msg.text())
@@ -46,4 +45,4 @@ export {
NettyWebSocketServer,
ServerEvent,
NettyClient
-};
\ No newline at end of file
+}
diff --git a/packages/websocket/src/server/text_websocket_frame.ts b/packages/websocket/src/server/text_websocket_frame.ts
index 00c4abbf..a566633b 100644
--- a/packages/websocket/src/server/text_websocket_frame.ts
+++ b/packages/websocket/src/server/text_websocket_frame.ts
@@ -1,7 +1,7 @@
-import { TextWebSocketFrameHandlerAdapter } from '../netty'
import { EventEmitter } from 'events'
import { ServerEvent } from './constants'
import { ServerOptions } from '../socket-io';
+import { TextWebSocketFrameHandlerAdapter } from '../netty'
export class TextWebSocketFrameHandler extends TextWebSocketFrameHandlerAdapter {
private event: EventEmitter;