2016年2月14日日曜日

[Nukkit-JAVA版PocketMine-MP] Nukkitのプラグインを作る!

haniokasaiです
Nukkitのプラグインの作り方をまとめます。(java経験なしw)

2016/12/14 コードのミスを修正。
2017/3/31  minecraftjpのリンク切れ、webarchiveから画像回収

引用元
http://minecraftjp.info/modding/index.php/Plugin_Tutorial(こちらと内容がかなりかぶるので、ここの画像等を流用させていただきます。)
https://github.com/onebone/MineCombat-Nukkit


前提 http://blog.haniokasai.com/2016/02/nukkit-javapocketmine-mp-maven.html
http://blog.haniokasai.com/2016/02/nukkit-javapocketmine-mp-nukkit.html
http://wiki.mcpe.jp/d/Pocketmine-MP%CD%D1%A5%D7%A5%E9%A5%B0%A5%A4%A5%F3%A4%CE%BA%EE%A4%EA%CA%FD
こちらのサイトを先に見てください。

作り方
(eclipseにて)
1.新規プロジェクトを作ります。












2.mavenを選んで、次へ























3、シンプルな(ryにチェックを入れて次へ。





















4.画像の通りに埋めます、そして完了







5.pom.xmlを編集します。


これを入力してください。


6.では、mavenの依存関係を読み込み直させます(意味は考えなくてもいいと思います)

パッケージエクスプローラー内のTutorialPluginのフォルダを右クリックし、maven->プロジェクトの更新。出てきた画面のokを押せば完了。

7,次にパッケージをつくります。
src/main/javaを右クリックして、新規->パッケージ。

ここでは、my.test.plugin.tutorialplugin とします。



8.メインクラスを作ります。 my.test.plugin.tutorialpluginを右クリックして新規クラスを作ります。





名前をMain スーパークラスをcn.nukkit.event.Listenerとします。

























そして、Main.javaの5行目を
public class Main extends Listener {
から
public class Main extends PluginBase implements Listener{

とします。
さらに、
import cn.nukkit.event.Listener;の下に

import cn.nukkit.plugin.PluginBase;

と書いてください。

9,plugin.ymlを作ります。
src/main/resourceを右クリックし、ファイルをつくります 



そして、それに以下のことを書いてください。




では、Main.javaにうつってください。
public class Main extends PluginBase implements Listener{の下に、
public void onEnable() {
        Server.getInstance().getLogger().info("起動しました");
 }

書いてください。

http://blog.haniokasai.com/2016/02/nukkit-javapocketmine-mp-maven.html
に従って、プラグインをコンパイルし動作を確認してください。
もし、
[INFO] Scanning for projects...
[INFO]                                                                      
[INFO] ------------------------------------------------------------------------
[INFO] Building Example 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] Downloading: http://ci.mengcraft.com:8080/plugin/repository/everything/cn/nukkit/nukkit/1.0-SNAPSHOT/maven-metadata.xml

で、そこから先にすすまないのなら、
pom.xmlを
<repositories>
<repository>
<id>mengcraft</id>
<url>http://ci.mengcraft.com:8080/plugin/repository/everything/</url>
</repository>
</repositories>
らへんにある<id>~</url>を
   <id>projectinfinity-repo</id>
  <url>http://ci.regularbox.com/plugin/repository/everything/</url>
とします。

起動するとこうなります




//////////

さあ、プラグインをもっと作り込んでいきましょう。



そしてコンパイルすれば、

となるはずです。

説明が雑だったかもしれませんが、すこしでも役に立てば幸いです。

1 件のコメント:

  1. すごく参考になりました!
    某Nukkit.j○のWikiでやるとPluginBaseやらが読み込めませんでしたが
    Mavenでやってなかったからなんですね...
    pmmpのサンプルコード..というよりAPI?組み込み関数でしたっけ...?
    はもうやったのであとはnukkitのを覚えるだけ...
    といってもIDEが補助してくれるんですが笑
    とにかくこれのお陰でNukkitのプラグインが作れるようになりました!
    ありがとうございます!

    返信削除

nginxでライブストリーミング!nginx-rtmp-module

生配信サーバーを構築してみたかったのですが、nginxのエクステンションでできることがわかって構築しました。 サーバーは これ で構築できました。 macbook air obs-(wifi 100mbps)>ubuntuサーバー-(wifi)>macb...