メインコンテンツへスキップ
  1. 記事一覧(旧)/

BungeeCordプラグイン制作の基本

BungeeCord Java Minecraft プラグイン制作 プログラミング
⚠️

⚠️

この記事は移行作業中です。レイアウトが崩れる場合があります。

目次

 

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さん報告ありがとうございました。