提供: Minecraft Modding Wiki
移動先: 案内検索
(ソースコード)
 
(3人の利用者による、間の4版が非表示)
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>ダメージが6(鉄剣と同じ)剣を追加する。また、金床で骨を使って修復することができる。</p>
 
<p>ダメージが6(鉄剣と同じ)剣を追加する。また、金床で骨を使って修復することができる。</p>
  
67行目: 68行目:
 
super(par1, par2EnumToolMaterial);
 
super(par1, par2EnumToolMaterial);
 
this.setUnlocalizedName("SampleSword"); //システム名の登録
 
this.setUnlocalizedName("SampleSword"); //システム名の登録
this.setTextureName("sample:sample_sword"); //テクスチャの指定
+
this.setTextureName("sample_sword"); //テクスチャの指定
 
}
 
}
  

2014年10月5日 (日) 14:33時点における最新版

この記事は"Minecraft Forge Universal 9.10.0.xxx~"を前提MODとしています。

Stone pickaxe.png
中級者向けのチュートリアルです。
C item.png
Itemに関係のあるチュートリアルです。

武器(剣)の追加[編集]

ダメージが6(鉄剣と同じ)剣を追加する。また、金床で骨を使って修復することができる。

ソースコード[編集]

  • SampleSwordCore.java
package mods.swordsample;

import net.minecraft.item.EnumToolMaterial;
import net.minecraft.item.Item;
import net.minecraft.item.ItemSword;
import net.minecraftforge.common.EnumHelper;
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="SampleSwordCore", name="SampleSwordCore", version="1.0")
public class SampleSwordCore
{
	public static Item sampleSword;
	public static int sampleSwordID = 28522;
	
	public static EnumToolMaterial sampleEnum;
	
	@EventHandler
	public void init(FMLInitializationEvent event)
	{
		//表示名の登録
		LanguageRegistry.addName(sampleSword, "Sample Sword");
		LanguageRegistry.instance().addNameForObject(sampleSword, "ja_JP", "サンプル剣");
	}
	
	@EventHandler
	public void preInit(FMLPreInitializationEvent event)
	{
		//インスタンスの代入。
		sampleSword = new ItemSampleSword(sampleSwordID, sampleEnum);
		GameRegistry.registerItem(sampleSword, "sampleSword");
	}
	
	static
	{
		//剣に使う基本素材の設定
		sampleEnum = EnumHelper.addToolMaterial("SAMPLE", 0, 150, 4.0F, 2.0F, 22);
		sampleEnum.customCraftingMaterial = Item.bone;
	}
}
  • ItemSampleSword.java
package mods.swordsample;

import net.minecraft.item.EnumToolMaterial;
import net.minecraft.item.ItemSword;

public class ItemSampleSword extends ItemSword
{
	
	public ItemSampleSword(int par1, EnumToolMaterial par2EnumToolMaterial)
	{
		super(par1, par2EnumToolMaterial);
		this.setUnlocalizedName("SampleSword");	//システム名の登録
		this.setTextureName("sample_sword");	//テクスチャの指定
	}

}

解説[編集]

SampleSwordCore.java[編集]

public static Item sampleSword;
public static int sampleSwordID = 28522;

追加する剣を保持しておく変数と、剣のIDを保持しておく変数を宣言。

LanguageRegistry.addName(sampleSword, "Sample Sword");
LanguageRegistry.instance().addNameForObject(sampleSword, "ja_JP", "サンプル剣");

ゲーム中に表示される名前の登録。
2段目の2つめの引数に"ja_JP"を指定することで日本語名称の登録

//インスタンスの代入。
sampleSword = new ItemSampleSword(sampleSwordID, sampleEnum);
GameRegistry.registerItem(sampleSword, "sampleSword");

剣のデータをMinecraftに登録している。

sampleEnum = EnumHelper.addToolMaterial("SAMPLE", 0, 150, 4.0F, 2.0F, 22);
sampleEnum.customCraftingMaterial = Item.bone;

剣の素材を設定している。
1段目の設定では、引数に、名前、基本性能(今回は不要)、耐久値、壊す速度(今回は不要)、攻撃時のダメージ(これに+3されます)、良エンチャントの付きやすさ
を指定している。
2段めでは、金床使用時に修復するアイテムを指定している。今回は骨を指定している。

ItemSampleSword.java[編集]

this.setUnlocalizedName("SampleSword");	//システム名の登録
this.setTextureName("sample_sword");	//テクスチャの指定

システム名の登録をしないと、表示名の登録はできません。
テクスチャは、"assets/minecraft/textures/items/登録名"に置いたのが表示されます。
今回の場合は、"assets/minecraft/textures/items/sample_sword.png"です。