自称中級者のMinecraft日記 Eclipseで艦これMOD(仮)に挑戦 レシピの追加1 作業台を使うクラフト
閉じる
閉じる

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

×

自称中級者のMinecraft日記 Eclipseで艦これMOD(仮)に挑戦 レシピの追加1 作業台を使うクラフト

2016-11-11 17:52
    <目 次>
    開発環境の構築編
    最初に書くメインクラスの基本形
    防具の追加1 登録用Armorクラス
    アイテムの追加1 アイテムの登録まで
    クリエイティブタブの追加
    ブロックの追加1 ブロックの登録まで

    レシピの追加1 作業台を使うクラフト
    レシピの追加2 かまどを使う精錬レシピ
    レシピの追加3 アイテムの耐久値を消費するレシピ

    MODのリリーステストの準備
    鉱石ブロック1 アイテムをドロップするブロック
    鎮守府MOD の配布はじめました
    ――――――――――――――――――――――――――――――――――――――――

    Recipesクラス を作ろう

    Minecraft のレシピには、作業台を使うレシピとかまどを使うレシピがあります。

    まとめて Recipesクラス に登録することも多いですが、今回は、作業台レシピを ChinjufuModCrafting というクラスで登録していきます。


    Recipesクラス と メインクラス をつなげよう

    レシピの登録は FMLInitializationEvent で行うので、
    ClientProxy の init に「 ChinjufuModCrafting.register(); 」を付け足します。


    素材と配置を指定する 定形レシピを書いていこう

    public ChinjufuModCrafting() { register(); } 」で登録を行うことを宣言すると、赤線で中身を書くように言われます。


    定形レシピは、addRecipe を使って下のように書きます。

    public static void register() {
    GameRegistry
    .addRecipe(new ItemStack(ChinjufuModItems.ADMIRAL_STAMP, 1), new Object [] {   ・・・クラフトの生成物 new ItemStack(参照クラス名.アイテム名, 個数, メタ値)
    "#x#" ,    ・・・・・・作業台1段目
    "xxx" ,    ・・・・・・作業台2段目
    "yyy" ,    ・・・・・・作業台3段目
    'x', new ItemStack(Blocks.PLANKS),
    'y', new ItemStack(Items.DYE, 1, 1)
              ・・・素材 new ItemStack(参照クラス名.アイテム名, 個数, メタ値)
    }); 」

    作業台の3×3のマスに対応させて、どのマスに何の素材を置くかを指定していきます。


    必要な素材だけを設定する 不定形レシピ

    上記の定形レシピの他に、addShapelessRecipe を使って、必要な素材だけを設定する不定形レシピというものもあります。
    GameRegistry
    .addShapelessRecipe(new ItemStack(ChinjufuModItems.AMMUNITION_KC, 8),
       ・・・クラフトによる生成物 new ItemStack(クラス名.アイテム名, 個数, メタ値)
    Items.IRON_INGOT,
    Items.GUNPOWDER,
    ChinjufuModItems.WORK_ORDER );
       ・・・素材 クラス名.アイテム名
    }

    不定形レシピでは素材の配置を設定しないため、素材だけ揃えば、クラフトが出来ます。



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