BukkitInjectedTools/src/main/java/pw/yumc/BukkitInjectedTools/BukkitInjectedTools.java

54 lines
1.8 KiB
Java

package pw.yumc.BukkitInjectedTools;
import java.io.File;
import java.io.IOException;
import org.bukkit.Bukkit;
import org.bukkit.OfflinePlayer;
import org.bukkit.plugin.java.JavaPlugin;
import cn.citycraft.PluginHelper.commands.HandlerCommand;
import cn.citycraft.PluginHelper.commands.HandlerCommands;
import cn.citycraft.PluginHelper.commands.InvokeCommandEvent;
import cn.citycraft.PluginHelper.commands.InvokeSubCommand;
import cn.citycraft.PluginHelper.kit.PluginKit;
import cn.citycraft.PluginHelper.utils.IOUtil;
/**
* Bukkit 注入工具类
*
* @since 2016年3月31日 下午7:36:20
* @author 喵♂呜
*/
public class BukkitInjectedTools extends JavaPlugin implements HandlerCommands {
@HandlerCommand(name = "inject")
public void inject(final InvokeCommandEvent e) throws IOException {
InjectedKit.injectSetOpMethod(e.getSender(), this.getDataFolder().getCanonicalPath() + File.separatorChar + "Bukkit");
}
@HandlerCommand(name = "net")
public void net(final InvokeCommandEvent e) throws IOException {
e.getSender().sendMessage("§c主线程访问网络测试!");
PluginKit.scheduleTask(new Runnable() {
@Override
public void run() {
IOUtil.getData("http://www.yumc.pw");
}
});
}
@Override
public void onEnable() {
final InvokeSubCommand isc = new InvokeSubCommand(this, "BukkitInjectedTools");
isc.registerCommands(this);
}
@HandlerCommand(name = "op", minimumArguments = 1)
public void op(final InvokeCommandEvent e) {
e.getSender().sendMessage("§cSetOp拦截测试!");
final OfflinePlayer op = Bukkit.getOfflinePlayer(e.getArgs()[0]);
op.setOp(true);
}
}