@@ -18,17 +18,17 @@ export class PluginCommandManager {
 | 
			
		||||
        let cmds = getPluginCommandMetadata(pluginInstance)
 | 
			
		||||
        let tabs = getPluginTabCompleterMetadata(pluginInstance)
 | 
			
		||||
        for (const cmd of cmds) {
 | 
			
		||||
            let tab = tabs.get(cmd.name)
 | 
			
		||||
            if (!this.ServerChecker.check(cmd.servers)) {
 | 
			
		||||
                console.debug(`[${pluginInstance.description.name}] ${cmd.target.constructor.name} incompatible command ${cmd.name} server(${cmd.servers}) ignore.`)
 | 
			
		||||
                continue
 | 
			
		||||
            }
 | 
			
		||||
            let exec = {
 | 
			
		||||
                cmd: pluginInstance[cmd.executor].bind(pluginInstance),
 | 
			
		||||
                tab: tab ? pluginInstance[tab.executor].bind(pluginInstance) : undefined
 | 
			
		||||
            }
 | 
			
		||||
            for (let command of [cmd.name, ...cmd.alias]) {
 | 
			
		||||
                this.CommandManager.on(pluginInstance, command, exec)
 | 
			
		||||
                this.CommandManager.on(pluginInstance, command, {
 | 
			
		||||
                    cmd: pluginInstance[cmd.executor].bind(pluginInstance),
 | 
			
		||||
                    tab: tabs.has(command) ?
 | 
			
		||||
                        pluginInstance[tabs.get(command).executor].bind(pluginInstance) :
 | 
			
		||||
                        console.debug(`[${pluginInstance.description.name}] command ${cmd.name} is not registry tabCompleter`)
 | 
			
		||||
                })
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user