剣としても使えて投げ槍にもなる武器MODを作りたい

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

剣としても使えて投げ槍にもなる武器MODを作りたい

投稿記事by x裕紀x » 2012年5月23日(水) 00:13

剣の武器MODを作ったのですが,それを投げれるようにしたいと考えています.
ですがバニラの.javaファイルにItemArrowというファイルがなくどのようにしてプログラムが組まれているのか
解読できず難航しております.
剣の武器MODは下記にしるしておきますので,教えていただける方いましたら教えていただけると嬉しいです.

"ItemLonginus"
package net.minecraft.src;

public class ItemLonginusSword extends Item
{
public ItemLonginusSword(int i,EnumToolYuki enumtoolyuki)//剣の初期化を行う。
{
super(i);//各アイテム共通の初期化を行う。
maxStackSize = 1;//インベントリで重ねられる数を設定する。剣は重ねられないので1。
setMaxDamage(enumtoolyuki.getMaxUses());//剣の耐久度を設定する。材料によって変わる。
weaponDamage = 4 + enumtoolyuki.getDamageVsEntity() * 2;
//剣の攻撃力を設定する。材料(enumtooltutorial.~)によって変わる。
}

public float getStrVsBlock(ItemStack itemstack, Block block)//ブロックの破壊速度を返す。
{
return block.blockID != Block.web.blockID ? 1.5F : 15F;
//もしクモの巣ブロックであれば素手の15倍、それ以外のブロックは1.5倍。
}

public boolean hitEntity(ItemStack itemstack, EntityLiving entityliving, EntityLiving entityliving1)
//この武器を使ってentityliving1(通常はプレイヤー)がentityliving(通常はMob)を攻撃したときに呼ばれる。
{
itemstack.damageItem(1,entityliving1);//剣の耐久度を1減らす。
return true;//攻撃が成功したことを返す。
}

public boolean onBlockDestroyed(ItemStack itemstack, int i, int j, int k, int l, EntityLiving entityliving)
//この武器を使ってブロックが破壊されたときに呼ばれる。
{
itemstack.damageItem(2,entityliving);//剣の耐久度を2減らす。
return true;//ブロック破壊が成功したことを返す。
}

public int getDamageVsEntity(Entity entity)//剣の攻撃力を返す。
{
return weaponDamage;//初期化のときに設定した攻撃力を返す。
}

public boolean isFull3D()//手に持ったときに厚みを持たせるかどうか。
{
return true;//剣なので厚みを持たせる。
}

public EnumAction func_35412_b(ItemStack itemstack)//剣を使ったときの動作を返す。
{
return EnumAction.block;//ブロックと同じ(振る)動作を行う。
}

public ItemStack onItemRightClick(ItemStack itemstack, World world, EntityPlayer entityplayer)
//アイテムを持って右クリックしたときに呼ばれる。
{
//ここを変えるとできるのかも?
}

public boolean canHarvestBlock(Block block)
//素手で壊してもアイテムにならないブロックを剣で壊した際、アイテムが得られるかどうか。
{
return block.blockID == Block.web.blockID;//クモの巣であればアイテムを得られる。
}

private int weaponDamage;//剣の攻撃力を表す変数。
}
x裕紀x
ID:70743d1d
 

  • (PostNo.40137)

Re: 剣としても使えて投げ槍にもなる武器MODを作りたい

投稿記事by mozipi » 2012年5月23日(水) 10:01

public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) メソッドを使い、
par2World.spawnEntityInWorld(new [EntityClass]() );を書いてください。
ヒントは、ItemEgg.javaにあります。
あと、動く動作はEntityArrow.javaを参照するといいでしょう。
ただし、数学の知識が必要になります。
画像
UsefulMilletなどの製作を行っています。
よろしければどうぞ。
ニコニコミュニティ:co2105535
サイト:http://mozipi.jpn.ph/

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

  • (PostNo.40224)

Re: 剣としても使えて投げ槍にもなる武器MODを作りたい

投稿記事by x裕紀x » 2012年5月23日(水) 18:53

momiziさんありがとうございます!!
出来るようになりました^^

ですが右クリックを押すと普通の弓矢がでてきてしまいます。
viewtopic.php?f=21&t=3854
などを見たのですが、弓矢を使用して飛ばすのは少々したくないので
この武器を使用したとき 専用の弓矢をとばしたいのですが

弓矢のテクスチャーが記述してあるところがわからず><

困っております><
x裕紀x
ID:70743d1d
 


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

x