提供: Minecraft Modding Wiki
移動先: 案内検索

この記事は"Minecraft Forge6.6x"を前提MODとしています。

Blockクラスに追加されるメソッド[編集]

Forge導入後にBlockクラスに追加されるメソッド群の簡単な説明, ここで説明するのはBlockクラスのForgeStart以降のメソッドで, Forgeで書き換えられるメソッドではないことに注意. またForge6.6以前にはないメソッドや, 6.6以降で仕様が変わっているメソッドもあると考えられるのであくまで参考までに. 自分の環境にあるBlockクラスを参照のこと. なお, 各メソッドには(英語だが)説明が載っている.

Blockの描画に関するメソッド[編集]

public String getTextureFile()

参照するテクスチャへのパスを返すメソッド.

public Block setTextureFile(String texture)

参照するテクスチャを変更するメソッド.

public boolean canRenderInPass(int pass)

このブロックがパスによってレンダーするかどうかを返すメソッド.

@SideOnly(Side.CLIENT)
public boolean addBlockHitEffects(World worldObj, MovingObjectPosition target, EffectRenderer effectRenderer)

ブロックを叩いているときのエフェクトを設定するメソッド.

@SideOnly(Side.CLIENT)
public boolean addBlockDestroyEffects(World world, int x, int y, int z, int meta, EffectRenderer effectRenderer)

ブロックが破壊したときにエフェクトを設定するメソッド.


Block自体の振る舞いに関するメソッド[編集]

public int getLightValue(IBlockAccess world, int x, int y, int z)

ブロックの光量を取得するメソッド. ブロックのメタデータごとに光量を変えることが可能. ブロックIDの節約に.

public int getLightOpacity(World world, int x, int y, int z)

このブロックの不透過率を返すメソッド.

public boolean isLadder(World world, int x, int y, int z)

ブロックがはしごのように振る舞うかどうかを決定するメソッド. trueを返すとはしごのように上り下りが出来るようになる. こちらもメタデータごとに切り替えられる.

public boolean isBlockNormalCube(World world, int x, int y, int z)

ブロックが普通の, 固体のブロックであることを決定するメソッド. レッドストーン動力やMobのスポーンに関連する.

public boolean isBlockSolidOnSide(World world, int x, int y, int z, ForgeDirection side)

与えられた面が密かどうかを返すメソッド. たとえば階段は6面のうち2面がtrueになる. たいまつが設置できるかどうかや, 上面がtrueならMobがスポーンするなどを決定する.

public boolean isBlockReplaceable(World world, int x, int y, int z)

このブロックがプレイヤーによって他のブロックに置き換えられるかどうかを決定するメソッド. バニラでの水や溶岩のような振る舞いである. Materialに依存しない?

public boolean isBlockBurning(World world, int x, int y, int z)

このブロックが燃えるかどうかを決定するメソッド. 燃えているときの炎は接触したEntityにダメージを与える.

public boolean isAirBlock(World world, int x, int y, int z)

このブロックが空気ブロックであるかのように振る舞わせるか決定するメソッド. ただし, 実装には熟考すること.

public int getFlammability(IBlockAccess world, int x, int y, int z, int metadata, ForgeDirection face)

与えられた面のブロックの燃えやすさ(燃焼の伝搬のしやすさ)を返す.

public boolean isFlammable(IBlockAccess world, int x, int y, int z, int metadata, ForgeDirection face)

与えられた面が燃えるかどうか返す.

public int getFireSpreadSpeed(World world, int x, int y, int z, int metadata, ForgeDirection face)

与えられた面の燃えひろがる時間を返す.

public boolean canCreatureSpawn(EnumCreatureType type, World world, int x, int y, int z)

Mobがスポーンするかどうかを決定するメソッド.

public float getExplosionResistance(Entity par1Entity, World world, int x, int y, int z, double explosionX, double explosionY, double explosionZ)

このブロックの爆発耐性を返すメソッド.

public boolean canDragonDestroy(World world, int x, int y, int z)

このブロックをエンダードラゴンが壊せるかどうかを返すメソッド.

バニラの特定のブロックと同等の振る舞いをさせるためのメソッド[編集]

public boolean isFireSource(World world, int x, int y, int z, int metadata, ForgeDirection side)

炎の燃焼元かどうかを決定する. trueを返せばバニラの炎ブロックのように周囲の燃焼可能ブロックを燃やす.

public boolean hasTileEntity(int metadata)

このブロックのメタデータがTileEntityを持っているかどうかを返すメソッド.

public TileEntity createTileEntity(World world, int metadata)

メタデータごとにTileEntityを生成するメソッド.

public boolean isBed(World world, int x, int y, int z, EntityLiving player)

ベッドかどうかを決定するメソッド.

public ChunkCoordinates getBedSpawnPosition(World world, int x, int y, int z, EntityPlayer player)

ベッドからスポーンする場所を返すメソッド.

public void setBedOccupied(World world, int x, int y, int z, EntityPlayer player, boolean occupied)

ベッドの占有を設定するメソッド.

public int getBedDirection(IBlockAccess world, int x, int y, int z)

ベッドの向きを返すメソッド.

public boolean isBedFoot(IBlockAccess world, int x, int y, int z)

ベッドの足側かどうかを返すメソッド.

public void beginLeavesDecay(World world, int x, int y, int z)

葉ブロックが散るときに呼ばれるメソッド.

public boolean canSustainLeaves(World world, int x, int y, int z)

葉ブロックが散るかどうかを決定するメソッド.

public boolean isLeaves(World world, int x, int y, int z)

葉ブロックかどうかを返すメソッド.

public boolean canBeReplacedByLeaves(World world, int x, int y, int z)

木が成長したときに, 葉ブロックに置換されるかどうかを返すメソッド.

public boolean isWood(World world, int x, int y, int z)

原木ブロックかどうかを返すメソッド.

public boolean isGenMineableReplaceable(World world, int x, int y, int z)

鉱石の生成時に鉱石と置換される条件を設定するメソッド. デフォルトは石.

public boolean canConnectRedstone(IBlockAccess world, int x, int y, int z, int side)

レッドストーンと接続可能かどうかを返すメソッド.

public boolean canSustainPlant(World world, int x, int y, int z, ForgeDirection direction, IPlantable plant)

植物がこのブロック上に存在し続けられるかどうかを返すメソッド.

public boolean isFertile(World world, int x, int y, int z)

湿った農地かどうかを返すメソッド.

public boolean isBeaconBase(World worldObj, int x, int y, int z, int beaconX, int beaconY, int beaconZ)

このブロックがビーコンの基礎(鉄, 金, ダイアブロックなどのような)になれるかどうかを返すメソッド.

プレイヤーの操作に関するメソッド[編集]

public boolean canHarvestBlock(EntityPlayer player, int meta)

プレイヤーが採掘できるかどうか, すなわちブロック破壊時にアイテムを取得できるかどうかを決定する.

public boolean removeBlockByPlayer(World world, EntityPlayer player, int x, int y, int z)

プレイヤーがブロックを破壊したときに呼ばれる. デフォルトでは空気ブロックに置換される処理を変えることができる?

public int quantityDropped(int meta, int fortune, Random random)

メタデータごとにfortuneが適用されたときのドロップ数を返すメソッド.

public boolean canSilkHarvest(World world, EntityPlayer player, int x, int y, int z, int metadata)

シルクタッチで回収可能かどうか決定するメソッド.

public ArrayList<ItemStack> getBlockDropped(World world, int x, int y, int z, int metadata, int fortune)

このブロックが壊れたときにドロップする全てのアイテムのリストを返すメソッド.

public void addCreativeItems(ArrayList itemList)

クリエイティブタブにアイテムを追加する. が, setCreativeTabを使うべき.

public boolean canPlaceTorchOnTop(World world, int x, int y, int z)

上面にトーチを設置できるかどうかを返すメソッド.

public ItemStack getPickBlock(MovingObjectPosition target, World world, int x, int y, int z)

クリエイティブモードでPickしたとき(デフォルトはホイールクリック) </source>にスロットにセットされるItemStackを返すメソッド.

public boolean isBlockFoliage(World world, int x, int y, int z)

バイオームのデコレーションや村の生成時に呼ばれるメソッドで, このブロックの上にプレイヤーがスポーン出来るかどうかを返す.