提供: Minecraft Modding Wiki
(ページの作成:「{{前提MOD|reqmod="Minecraft Forge Universal 9.10.0.xxx~"}} ==食料の追加== <p>食べることのできる食料の追加<br>レシピの追加は行ってい...」) |
(→SampleFoodCore.java) |
||
(4人の利用者による、間の5版が非表示) | |||
1行目: | 1行目: | ||
{{前提MOD|reqmod="Minecraft Forge Universal 9.10.0.xxx~"}} | {{前提MOD|reqmod="Minecraft Forge Universal 9.10.0.xxx~"}} | ||
− | + | {{チュートリアル難易度|difficulty=1|clear=none}} | |
+ | {{チュートリアルカテゴリー|difficulty=1|type=Item}} | ||
==食料の追加== | ==食料の追加== | ||
<p>食べることのできる食料の追加<br>レシピの追加は行っていないので、自分で追加する必要がある</p> | <p>食べることのできる食料の追加<br>レシピの追加は行っていないので、自分で追加する必要がある</p> | ||
28行目: | 29行目: | ||
//表示名の登録 | //表示名の登録 | ||
LanguageRegistry.addName(sampleFood, "Sample Food"); | LanguageRegistry.addName(sampleFood, "Sample Food"); | ||
− | LanguageRegistry.instance().addNameForObject(sampleFood, " | + | LanguageRegistry.instance().addNameForObject(sampleFood, "ja_JP", "サンプル フード"); |
} | } | ||
55行目: | 56行目: | ||
super(par1, par2, par3); | super(par1, par2, par3); | ||
this.setUnlocalizedName("SampleFood"); //システム名の登録 | this.setUnlocalizedName("SampleFood"); //システム名の登録 | ||
− | this. | + | this.setTextureName("sample_food"); //テクスチャの指定 |
this.setMaxStackSize(64); //スタックできる量 | this.setMaxStackSize(64); //スタックできる量 | ||
//以下不要なら消してください | //以下不要なら消してください | ||
this.setAlwaysEdible(); //お腹すいてなくても食べれる。 | this.setAlwaysEdible(); //お腹すいてなくても食べれる。 | ||
− | this.setPotionEffect(Potion.poison.id, 5, 0, 0.6F); //ポーション効果 ID, 時間, レベル, 確率 | + | this.setPotionEffect(Potion.poison.id, 5, 0, 0.6F); //ポーション効果 ID, 時間(秒), レベル(書いた値+1になる), 確率(0.0~1.0F 1.0Fの時100%) |
} | } | ||
77行目: | 78行目: | ||
<source lang = "java"> | <source lang = "java"> | ||
LanguageRegistry.addName(sampleFood, "Sample Food"); | LanguageRegistry.addName(sampleFood, "Sample Food"); | ||
− | LanguageRegistry.instance().addNameForObject(sampleFood, " | + | LanguageRegistry.instance().addNameForObject(sampleFood, "ja_JP", "サンプル フード"); |
</source> | </source> | ||
ゲーム中に表示される名前の登録。<br> | ゲーム中に表示される名前の登録。<br> | ||
87行目: | 88行目: | ||
GameRegistry.registerItem(sampleFood, "sampleFood"); | GameRegistry.registerItem(sampleFood, "sampleFood"); | ||
</source> | </source> | ||
− | + | sampleFood の変数にItemSampleFoodのインスタンスを代入。<br> | |
一つ目の引数は、アイテムID、二つ目は回復量、三つ目は狼が食べられるか。食べられる=true | 一つ目の引数は、アイテムID、二つ目は回復量、三つ目は狼が食べられるか。食べられる=true | ||
98行目: | 99行目: | ||
//以下不要なら消してください | //以下不要なら消してください | ||
this.setAlwaysEdible(); //お腹すいてなくても食べれる。 | this.setAlwaysEdible(); //お腹すいてなくても食べれる。 | ||
− | this.setPotionEffect(Potion.poison.id, 5, 0, 0.6F); //ポーション効果 ID, 時間, レベル, 確率 | + | this.setPotionEffect(Potion.poison.id, 5, 0, 0.6F); //ポーション効果 ID, 時間(秒), レベル(書いた値+1になる), 確率(0.0~1.0F 1.0Fの時100%) |
</source> | </source> | ||
システム名の登録をしないと、表示名の登録はできません。<br> | システム名の登録をしないと、表示名の登録はできません。<br> | ||
テクスチャは、'''"assets/minecraft/textures/items/登録名"'''に置いたのが表示されます。<br> | テクスチャは、'''"assets/minecraft/textures/items/登録名"'''に置いたのが表示されます。<br> | ||
今回の場合は、"assets/minecraft/textures/items/sample_food.png"です。<br> | 今回の場合は、"assets/minecraft/textures/items/sample_food.png"です。<br> |
2017年8月7日 (月) 11:57時点における最新版
この記事は"Minecraft Forge Universal 9.10.0.xxx~"を前提MODとしています。 |
食料の追加[編集]
食べることのできる食料の追加
レシピの追加は行っていないので、自分で追加する必要がある
ソースコード[編集]
- SampleFoodCore.java
package mods.foodsample; import net.minecraft.item.Item; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; import cpw.mods.fml.common.event.FMLInitializationEvent; import cpw.mods.fml.common.event.FMLPreInitializationEvent; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.common.registry.LanguageRegistry; @Mod(modid="SampleFoodCore", name="SampleFoodCore", version="1.0") public class SampleFoodCore { public static Item sampleFood; public static int sampleFoodID = 28521; @EventHandler public void init(FMLInitializationEvent event) { //表示名の登録 LanguageRegistry.addName(sampleFood, "Sample Food"); LanguageRegistry.instance().addNameForObject(sampleFood, "ja_JP", "サンプル フード"); } @EventHandler public void preInit(FMLPreInitializationEvent event) { //インスタンスの代入。引数はID, 回復量, 狼が食べれるか sampleFood = new ItemSampleFood(sampleFoodID, 5, false); GameRegistry.registerItem(sampleFood, "sampleFood"); } }
- ItemSampleFood.java
package mods.foodsample; import net.minecraft.item.ItemFood; import net.minecraft.potion.Potion; public class ItemSampleFood extends ItemFood { public ItemSampleFood(int par1, int par2, boolean par3) { super(par1, par2, par3); this.setUnlocalizedName("SampleFood"); //システム名の登録 this.setTextureName("sample_food"); //テクスチャの指定 this.setMaxStackSize(64); //スタックできる量 //以下不要なら消してください this.setAlwaysEdible(); //お腹すいてなくても食べれる。 this.setPotionEffect(Potion.poison.id, 5, 0, 0.6F); //ポーション効果 ID, 時間(秒), レベル(書いた値+1になる), 確率(0.0~1.0F 1.0Fの時100%) } }
解説[編集]
SampleFoodCore.java[編集]
public static Item sampleFood; public static int sampleFoodID = 28521;
追加する食料を保持しておく変数と、IDを保持しておく変数を宣言。
LanguageRegistry.addName(sampleFood, "Sample Food"); LanguageRegistry.instance().addNameForObject(sampleFood, "ja_JP", "サンプル フード");
ゲーム中に表示される名前の登録。
2段目の2つめの引数に"ja_JP"を指定することで日本語名称の登録
//インスタンスの代入。引数はID, 回復量, 狼が食べれるか sampleFood = new ItemSampleFood(sampleFoodID, 5, false); GameRegistry.registerItem(sampleFood, "sampleFood");
sampleFood の変数にItemSampleFoodのインスタンスを代入。
一つ目の引数は、アイテムID、二つ目は回復量、三つ目は狼が食べられるか。食べられる=true
ItemSampleFood.java[編集]
this.setUnlocalizedName("SampleFood"); //システム名の登録 this.func_111206_d("sample_food"); //テクスチャの指定 this.setMaxStackSize(64); //スタックできる量 //以下不要なら消してください this.setAlwaysEdible(); //お腹すいてなくても食べれる。 this.setPotionEffect(Potion.poison.id, 5, 0, 0.6F); //ポーション効果 ID, 時間(秒), レベル(書いた値+1になる), 確率(0.0~1.0F 1.0Fの時100%)
システム名の登録をしないと、表示名の登録はできません。
テクスチャは、"assets/minecraft/textures/items/登録名"に置いたのが表示されます。
今回の場合は、"assets/minecraft/textures/items/sample_food.png"です。