提供: Minecraft Modding Wiki
移動先: 案内検索
(ページの作成:「このページはModLoaderを使っていることを前提に書かれています。<br /> <br /> 作成するソース<br /> mod_Tutorial.java<br /> ItemTutorial.ja...」)
 
(コードのハイライト対応)
7行目: 7行目:
  
 
==全体の完成形==
 
==全体の完成形==
 +
<source lang="java">
 
  package net.minecraft.src;
 
  package net.minecraft.src;
 
   
 
   
24行目: 25行目:
 
     }   
 
     }   
 
  }
 
  }
 +
</source>
  
 
==それぞれの役割==
 
==それぞれの役割==
31行目: 33行目:
 
MODを作る下準備といったところでしょうか。<br />
 
MODを作る下準備といったところでしょうか。<br />
 
<br />
 
<br />
 +
<source lang="java">
 
  package net.minecraft.src;
 
  package net.minecraft.src;
 +
</source>
 
ここでパッケージを読み込みます。必ず必要になります。<br />
 
ここでパッケージを読み込みます。必ず必要になります。<br />
 
<br />
 
<br />
 +
<source lang="java">
 
  public class mod_Tutorial extends BaseMod {
 
  public class mod_Tutorial extends BaseMod {
 +
</source>
 
ModLoaderのクラスBaseModを継承したクラスを作ります。mod_の後のこの部分は任意で構いません。<br />
 
ModLoaderのクラスBaseModを継承したクラスを作ります。mod_の後のこの部分は任意で構いません。<br />
 
クラスを作るときにお好みの名前に変えてください。基本はMOD名になります。<br />
 
クラスを作るときにお好みの名前に変えてください。基本はMOD名になります。<br />
 
<br />
 
<br />
 +
<source lang="java">
 
  public String getVersion() {
 
  public String getVersion() {
 
    return "1.0.0";
 
    return "1.0.0";
 
  }
 
  }
 +
</source>
 
ここでMODのバージョンをModLoaderに渡しています。<br />
 
ここでMODのバージョンをModLoaderに渡しています。<br />
 
'''中の文字列Minecraftのバージョンと関係が無いので適当でも構いません。'''<br />
 
'''中の文字列Minecraftのバージョンと関係が無いので適当でも構いません。'''<br />
 
<br />
 
<br />
 
===アイテムを作る===
 
===アイテムを作る===
 +
<source lang="java">
 
  public static Item ttrItem;
 
  public static Item ttrItem;
 +
</source>
 
ここでアイテム""ttrItem""のフィールドを用意しています。<br />
 
ここでアイテム""ttrItem""のフィールドを用意しています。<br />
 
<br />
 
<br />
 +
<source lang="java">
 
  public void load() {
 
  public void load() {
 +
</source>
 
このメソッドがModLoaderが読み込んでくれる部分です。<br />
 
このメソッドがModLoaderが読み込んでくれる部分です。<br />
 
<br />
 
<br />
 +
<source lang="java">
 
  ttrItem = new Item(5000).setItemName("ttrItem");
 
  ttrItem = new Item(5000).setItemName("ttrItem");
 +
</source>
 
アイテム""ttrItem""にIDと名前を渡しています。数字は任意に変えてください。<br />
 
アイテム""ttrItem""にIDと名前を渡しています。数字は任意に変えてください。<br />
 
ただし、この数字はアイテムIDなので、他のMODや既存アイテムとかぶると競合してしまいます。<br />
 
ただし、この数字はアイテムIDなので、他のMODや既存アイテムとかぶると競合してしまいます。<br />
57行目: 71行目:
 
ここで入れてる名前はゲーム内で表示される名前ではありません。<br />
 
ここで入れてる名前はゲーム内で表示される名前ではありません。<br />
 
<br />
 
<br />
 +
<source lang="java">
 
  ttrItem.iconIndex = ModLoader.addOverride("/gui/items.png", "/ttritem.png");
 
  ttrItem.iconIndex = ModLoader.addOverride("/gui/items.png", "/ttritem.png");
 +
</source>
 
アイテムttrItemにModLoaderの機能でテクスチャをオーバーライドしています。用意していたttritem.pngが反映されます。<br />
 
アイテムttrItemにModLoaderの機能でテクスチャをオーバーライドしています。用意していたttritem.pngが反映されます。<br />
 
画像が見つからない場合、エラーが出ます。<br />
 
画像が見つからない場合、エラーが出ます。<br />
 
MCPを使っている場合、画像を入れるのは eclipse/client/bin/ のnetフォルダと同じところに置きます。<br />
 
MCPを使っている場合、画像を入れるのは eclipse/client/bin/ のnetフォルダと同じところに置きます。<br />
 
ファイルで画像をまとめたい場合、指定を"/フォルダ名/画像名"というようにします。<br />
 
ファイルで画像をまとめたい場合、指定を"/フォルダ名/画像名"というようにします。<br />
<br />  
+
<br />
 +
<source lang="java">
 
  ModLoader.addName(ttrItem, "Tutorial Item");
 
  ModLoader.addName(ttrItem, "Tutorial Item");
 +
</source>
 
ここではアイテムのゲーム内で表示する名前を設定しています。(アイテム名,"表示したい名前")にしてください。<br />
 
ここではアイテムのゲーム内で表示する名前を設定しています。(アイテム名,"表示したい名前")にしてください。<br />
 
これでゲーム内にアイテムができました。ですがレシピがなければサバイバルで使うことはできません。<br />
 
これでゲーム内にアイテムができました。ですがレシピがなければサバイバルで使うことはできません。<br />
69行目: 87行目:
 
<br />
 
<br />
 
===レシピを作る===
 
===レシピを作る===
 +
<source lang="java">
 
  ModLoader.addRecipe(new ItemStack(ttrItem, 4),  
 
  ModLoader.addRecipe(new ItemStack(ttrItem, 4),  
 
                     new Object[]{ "X","X",
 
                     new Object[]{ "X","X",
 
                     Character.valueOf('X'),Block.dirt });
 
                     Character.valueOf('X'),Block.dirt });
 +
</source>
 
レシピを指定してる部分はこの部分です。<br />
 
レシピを指定してる部分はこの部分です。<br />
 
ModLoader.addRecipeで形が決まったレシピでこれを作りますよ!というのを決めています。<br />
 
ModLoader.addRecipeで形が決まったレシピでこれを作りますよ!というのを決めています。<br />
78行目: 98行目:
 
===クラスの終わり===
 
===クラスの終わり===
 
最後に足りない } が入ります。このチュートリアルの場合2つになります。<br />
 
最後に足りない } が入ります。このチュートリアルの場合2つになります。<br />
 +
<source lang="java">
 
    }
 
    }
 
  }
 
  }
 +
</source>
 
これで1つのソースが完成します。<br />
 
これで1つのソースが完成します。<br />

2012年3月15日 (木) 23:04時点における版

このページはModLoaderを使っていることを前提に書かれています。

作成するソース
mod_Tutorial.java
ItemTutorial.java
ttritem.png

全体の完成形

package net.minecraft.src;
 
 public class mod_Tutorial extends BaseMod {
    
    public String getVersion() {
       return "1.0.0";
    }
 
    public static Item ttrItem;
 
    public void load() {
 
       ttrItem = new Item(5000).setItemName("ttrItem"); 
       ttrItem.iconIndex = ModLoader.addOverride("/gui/items.png", "/ttr/ttritem.png");
       ModLoader.addName(ttrItem, "Tutorial Item");
    }   
 }

それぞれの役割

ここから、ソースのそれぞれの部分の役割を説明していきます。

パッケージ、クラスを作る、バージョンを指定する

MODを作る下準備といったところでしょうか。

package net.minecraft.src;

ここでパッケージを読み込みます。必ず必要になります。

public class mod_Tutorial extends BaseMod {

ModLoaderのクラスBaseModを継承したクラスを作ります。mod_の後のこの部分は任意で構いません。
クラスを作るときにお好みの名前に変えてください。基本はMOD名になります。

public String getVersion() {
   return "1.0.0";
 }

ここでMODのバージョンをModLoaderに渡しています。
中の文字列Minecraftのバージョンと関係が無いので適当でも構いません。

アイテムを作る

public static Item ttrItem;

ここでアイテム""ttrItem""のフィールドを用意しています。

public void load() {

このメソッドがModLoaderが読み込んでくれる部分です。

ttrItem = new Item(5000).setItemName("ttrItem");

アイテム""ttrItem""にIDと名前を渡しています。数字は任意に変えてください。
ただし、この数字はアイテムIDなので、他のMODや既存アイテムとかぶると競合してしまいます。
アイテムなのでほとんどありませんが気を付けてください。
ここで入れてる名前はゲーム内で表示される名前ではありません。

ttrItem.iconIndex = ModLoader.addOverride("/gui/items.png", "/ttritem.png");

アイテムttrItemにModLoaderの機能でテクスチャをオーバーライドしています。用意していたttritem.pngが反映されます。
画像が見つからない場合、エラーが出ます。
MCPを使っている場合、画像を入れるのは eclipse/client/bin/ のnetフォルダと同じところに置きます。
ファイルで画像をまとめたい場合、指定を"/フォルダ名/画像名"というようにします。

ModLoader.addName(ttrItem, "Tutorial Item");

ここではアイテムのゲーム内で表示する名前を設定しています。(アイテム名,"表示したい名前")にしてください。
これでゲーム内にアイテムができました。ですがレシピがなければサバイバルで使うことはできません。
次ではレシピを追加していきます。

レシピを作る

ModLoader.addRecipe(new ItemStack(ttrItem, 4), 
                     new Object[]{ "X","X",
                     Character.valueOf('X'),Block.dirt });

レシピを指定してる部分はこの部分です。
ModLoader.addRecipeで形が決まったレシピでこれを作りますよ!というのを決めています。
詳しくはレシピの追加をご覧下さい

クラスの終わり

最後に足りない } が入ります。このチュートリアルの場合2つになります。

  }
 }

これで1つのソースが完成します。