自称中級者のMinecraft日記 Eclipseで艦これMOD(仮)に挑戦 MODのリリーステストの準備
閉じる
閉じる

新しい記事を投稿しました。シェアして読者に伝えましょう

×

自称中級者のMinecraft日記 Eclipseで艦これMOD(仮)に挑戦 MODのリリーステストの準備

2016-11-18 18:41
    <目 次>
    開発環境の構築編
    最初に書くメインクラスの基本形
    防具の追加1 登録用Armorクラス
    アイテムの追加1 アイテムの登録まで
    クリエイティブタブの追加
    ブロックの追加1 ブロックの登録まで
    レシピの追加1 作業台を使うクラフト

    MODのリリーステストの準備
    リリーステスト1 jarファイル出力
    リリーステスト2 jarファイルをMinecraftに入れてみる
    リリーステスト補足

    鉱石ブロック1 アイテムをドロップするブロック
    鎮守府MOD の配布はじめました
    ――――――――――――――――――――――――――――――――――――――――
    アイテムとブロック、レシピの追加を終えたことですし、今回はリリースのテストをしたいと思います。

    これまで 製作中のMOD の不具合は、Eclipse 経由で起動させるクライアントで確認してきました。しかし、MODのリリース、つまり MOD を jarファイル にして、配布する形にしたらどうなるかは未だ見ていません。

    jarファイル にするだけなので不具合は出ないはずですが、練習がてらやってみます。

    build.gladle を見てみよう

    MOD を jarファイル にする作業では、Forge に付属している build.gladle を使います。開発環境の構築のときにも出てきたやつですね。

    中身をみると、こんな感じになっています。



    で、build.gradle の中で弄るのはここだけのようです。

    複数のバージョンに対応させている MOD では他も弄ることになりそうですが、自分の MOD は1.9.4専用で進めているので調べていません。

    さて、これまで今回の MOD は ayutaki.chinjufumod という形で製作を進めて来ました。実行テストも問題なかったので特に気にしていませんでしたが、build.gradle のフォーマットは com.yourname.modid となっています。

    参考になるコードを探して他の MOD を見比べていたのですが、私が見た中では com. を付けない方が多い印象でした。もちろん com. を付けているものもありましたし、org. を使っていたり、 net. だったりで、com. は必須では無いことだけは解りました。

    ここをどうするかは、フォルダの階層
    \src\main\java\ayutaki\chinjufumod なのか?
    \src\main\java\com\ayutaki\chinjufumod なのか?
    に関わってきますが、あんまり大きな問題にならないんでしょうかねぇ・・・・・・。

    まあ、Eclipse の機能説明の良い機会になりますし、Eclipse の リファクタリング を使ってayutaki.chinjufumodcom.ayutaki.chinjufumod へ変更したいと思います。

    Eclipse の リファクタリング を使ってみよう

    Eclipse におけるパッケージやクラスの名前変更では、メニューの中にある リファクタリング というのを使います。


    ayutaki.chinjufumod を com.ayutaki.chinjufumod に変更し、init などのサブパッケージへも変更を反映させるために、「 □サブパッケージの名前変更(S) 」にもチェックを入れます。



    Eclipse の処理を待つと、このようにパッケージの名前変更が行われます。


    リファクタリング を使うと、import のような Eclipseの機能側に近いコードについては、Eclipse が自動的に書き換えてくれます。


    しかし、Referenceクラス で書いた下記のような ユーザー側に近いコードについては、ユーザーが手入力で書き換える必要があるので注意しましょう。



    念のため実行テストをしておくと、無事に通りました。


    レシピも機能しているので、問題は無さそうです。


    今回はサブパッケージを含むパッケージに行った大掛かりな名前変更でしたが、リファクタリングは、個別クラスの名前変更やテクスチャの名前変更などで使います。私自身、作っている途中で「このファイルは名前を変えた方が管理しやすいな」ということが多々あったので、覚えておく必要のある機能だと思います。

    (つづく)
    広告
    コメントを書く
    コメントをするには、
    ログインして下さい。