【質問】初期エンチャントについて[1.4.2]

Modding・サーバPlugin制作・ツール制作など、開発関連の質問があればこちらにお願い致します。
フォーラムルール
質問関連フォーラムで質問する時は、必ず次のトピックを一読/厳守お願い致します。
viewtopic.php?f=5&t=999
  • (PostNo.62815)

【質問】初期エンチャントについて[1.4.2]

投稿記事by seibuzuki » 2012年11月14日(水) 08:00

こんにちは。
武器追加MODを作っているのですが、
クラフティングしたときにエンチャント(ノックバックなど)をつけるには
どうしたらよいのでしょう。
実況やってます。見てくれると嬉しいな♪
http://www.nicovideo.jp/watch/sm22306932
seibuzuki
ID:aa3d49d5
木を殴ってる
 
記事: 25
登録日時: 2012年2月26日(日) 07:51

  • (PostNo.62828)

Re: 【質問】初期エンチャントについて[1.4.2]

投稿記事by FirstSpring » 2012年11月14日(水) 12:31

コード: 全て選択
public void takenFromCrafting(EntityPlayer entityplayer, ItemStack itemstack, IInventory iinventory)
   {
      if(itemstack.getItem() == hoge)
         itemstack.addEnchantment(Enchantment.knockback, 1);
   }

こんな感じにmod本体に書けばいけると思います
hogeの部分を自分でつけたアイテム名に変えればいけるかと

takenFromCraftingはクラフトしたときに呼ばれます

エンチャントの種類を変えたいときはEnchantment.knockbackの部分をEnchantment.javaから引っ張ってきて変えればおk
レベルを変えたいときは1の部分を変えればおk
FirstSpring
ID:5ab9d9c0
レッドストーン掘り
 
記事: 517
登録日時: 2012年10月12日(金) 23:14

  • (PostNo.62878)

Re: 【質問】初期エンチャントについて[1.4.2]

投稿記事by mozipi » 2012年11月14日(水) 19:52

loadメソッド内に
ItemStack itemstack = new ItemStack(hoge).addEnchantment(Enchantment.unbreaking, 3);
ModLoader.addRecipe( itemstack, new Object[]{"XXX"," Y "," Y " , Character.valueOf('X'), Item.diamond, Character.valueOf('Y'), Item.stick});
これでいけます。
ちなみにこれは、unbreaking3がつきます
画像
UsefulMilletなどの製作を行っています。
よろしければどうぞ。
ニコニコミュニティ:co2105535
サイト:http://mozipi.jpn.ph/

NAGServerの運営もしております。ぜひ投票・サーバーログインお願い致します
画像
アバター
mozipi
ID:21efee09
レッドストーン掘り
 
記事: 569
登録日時: 2011年12月26日(月) 19:44

  • (PostNo.63117)

Re: 【質問】初期エンチャントについて[1.4.2]

投稿記事by seibuzuki » 2012年11月15日(木) 22:30

>FirstSpringさん、Momiziさん
わかりやすい解説解答ありがとうございます。これでまたMOD製作が再開できます。
実況やってます。見てくれると嬉しいな♪
http://www.nicovideo.jp/watch/sm22306932
seibuzuki
ID:b2e16a54
木を殴ってる
 
記事: 25
登録日時: 2012年2月26日(日) 07:51


Return to 質問:開発・制作関連

x