提供: Minecraft Modding Wiki
移動先: 案内検索
(解説を追加。)
(「飲食物を追加する」にリダイレクトさせました。)
 
1行目: 1行目:
 
+
#REDIRECT [[飲食物を追加する]]
{{前提MOD|reqmod="ModLoader"}}
 
作成するソース<br />
 
mod_Tutorial.java<br />
 
ItemTutorialDrink.java<br />
 
ttritemDrink.png<br />
 
 
 
==ソースの解説==
 
 
 
===mod_Tutorialクラス作成===
 
mod_***クラスを作成します
 
 
 
mod_Tutorialソース
 
<source lang="java">
 
package net.minecraft.src;
 
 
public class mod_Tutorial extends BaseMod {
 
   
 
    public String getVersion() {
 
      return "1.0.0";
 
    }
 
 
    public static Item TutorialDrink;
 
 
    public void load() {
 
 
    /*
 
      (5000, 3, 1F , false)の所の5000がアイテムID 3が回復量 1F 不明 falseは犬に与えれるかです。
 
      */
 
      TutorialDrink = new  ItemTutorialDrink(5000, 3, 1F , false).setItemName("TutorialDrink");
 
      TutorialDrink.iconIndex = ModLoader.addOverride("/gui/items.png", "/ttr/ttritemDrink.png");
 
      ModLoader.addName(TutorialDrink, "TutorialDrink Item");
 
 
 
    /*
 
    レシピの作成。
 
    ここでは、空のボトル(glassBottle)と土(dirt)をクラフトして土ドリンク(TutorialDrink)を作っています。
 
      */
 
   ModLoader.addRecipe(new ItemStack(TutorialDrink, 1),
 
                    new Object[]{ "X","Y",
 
                    Character.valueOf('X'),Block.dirt, Character.valueOf('Y'), Item.glassBottle });
 
 
 
    } 
 
}
 
</source>
 
 
 
===ItemTutorialDrinkクラス作成===
 
 
 
ItemTutorialDrinkクラスを作成します。
 
ItemFoodクラスを継承して作成します。
 
 
 
<source lang="java">
 
 
 
package net.minecraft.src;
 
 
 
import java.util.Random;
 
 
 
public class ItemTutorialDrink extends ItemFood implements ITextureProvider
 
{
 
 
 
 
 
    public ItemTutorialDrink(int i, int j , float par3, boolean flag)
 
    {
 
            super(i, j, par3 ,flag);
 
    }
 
 
 
    /*
 
    アイテムを消費した後の処理を書いています。
 
  return par1ItemStack.stackSize <= 0 ? new ItemStack(Item.glassBottle) : par1ItemStack;
 
  の所の(Item.glassBottle)を違うアイテムに変更すれば戻ってくるアイテムも変わります。
 
  例 空のバケツにするなら(Item.bucketEmpty)に変更してください。
 
    */
 
    public ItemStack onFoodEaten(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer)
 
    {
 
    --par1ItemStack.stackSize;
 
 
 
    if (!par2World.isRemote)
 
    {
 
            par3EntityPlayer.clearActivePotions();
 
    }
 
 
 
    return par1ItemStack.stackSize <= 0 ? new ItemStack(Item.glassBottle) : par1ItemStack;
 
    }
 
 
 
   /*
 
    右クリック長押しをした時の動作を指定しています。
 
  ここを削除すれば食べ物を食べる時と同じ動作になります。
 
    */
 
    public EnumAction getItemUseAction(ItemStack par1ItemStack)
 
    {
 
    return EnumAction.drink;
 
    }
 
 
 
}
 
 
 
</source>
 
解説を追加。 <br />
 
他のチュートリアルに書いてあることは省いて、必要なところを書きました。誤字脱字や内容に誤りがありましたらコメントで教えてください。
 
<comments />
 

2012年3月27日 (火) 22:46時点における最新版