BungeeCordプラグイン制作の基本

 

BungeeCordを利用するのでメモ

bungee.yml と plugin.yml の両方が必要。

 

Mainクラス

BungeeCordを外部Jarでライブラリーに追加

下記のようにMainクラスに記述

import net.md_5.bungee.api.plugin.Plugin;

public class Main extends Plugin {
 @Override
 public void onEnable(){
//イベント登録
 getProxy().getPluginManager().registerListener(this, new Event());
//コマンド登録
 getProxy().getPluginManager().registerCommand(this, new CommandHub());
//ロード時メッセージ
 getLogger().info("ロードしたよ!");
 }

}

 

イベント取得クラス

import net.md_5.bungee.api.plugin.Listener;
import net.md_5.bungee.event.EventHandler;
import net.md_5.bungee.api.event.PostLoginEvent;

public class Event implements Listener {

 @EventHandler
 public void onLogin(PostLoginEvent e) { //ログイン時の例
  //何かの処理
 }

}

 

コマンド取得クラス

import net.md_5.bungee.api.ChatColor;
import net.md_5.bungee.api.CommandSender;
import net.md_5.bungee.api.ProxyServer;
import net.md_5.bungee.api.chat.ComponentBuilder;
import net.md_5.bungee.api.connection.ProxiedPlayer;
import net.md_5.bungee.api.plugin.Command;

public class CommandHub extends Command {
 public CommandHub(){
  //コマンドとパーミッション
  super("matumo","com.matumo");
 }

 public void execute(CommandSender sender, String[] arg){
  //senderは実行者
 //ProxiedPlayer取得
  ProxiedPlayer p = (ProxiedPlayer) sender;
 //argはコマンド引数
 }

}

 

plugin.yml

Spigotと大体同じ。

name: MatumoBungeeCordPlugin
main: com.matumo.mc.bc.core.Main
version: 1.0
author: matumo
commands:
 matumo:
 description: MatumoBungeeCordPluginCommand

 

bungee.yml

name: MatumoBungeeCordPlugin
main: com.matumo.mc.bc.core.Main
version: 1.0
author: matumo

 

【2017年5月18日追記】

コマンド取得クラスを訂正しました。

Seaoftreesさん報告ありがとうございました。

 

評価ありがとうございます。
記事の評価をお願いします。今後の参考にさせていただきます。
  • 役に立った (1)
  • まあまあだった (0)
  • 理解不能 (0)
  • 役に立たなかった (0)

コメント (1件)

  1. わかりやすい説明、ありがとうございます!参考にさせていただきます!

コメントを残す