提供: Minecraft Modding Wiki
移動先: 案内検索
(ページ作成)
(相違点なし)

2012年7月16日 (月) 03:52時点における版

概要

アイテムの入ったチェストを自動で生成するために、以下のクラスを使用します。

TileEntityChest
チェストを開くと出てくるアイテム欄です。
ItemStack
アイテム欄の1項目単位です。

TileEntityChestにItemStackをセット

次のコードでアイテム欄にレッドストーンダストと金ブロックをセットします。

TileEntityChest tEntity = new TileEntityChest();
ItemStack redstoneStack = new ItemStack( Item.redstone, 15);  // 第2引数でアイテムの数を指定します。
ItemStack goldStack = new ItemStack( Block.blockGold, 20);
tEntity.setInventorySlotContents(0, redstoneStack);     // 第1引数はアイテム欄のスロット番号です。左上が0で、右方向に連番が振られています。
tEntity.setInventorySlotContents(1, goldStack);

チェストをワールドに配置

まず何も入っていないチェストを置いてから、TileEntityChestを貼り付けてアイテムを格納します。

world.setBlock(Xc, Yc, Zc, 54);
world.setBlockTileEntity(Xc, Yc, Zc, tEntity);

変数world,Xc,Yc,Zcは各自で適切なものを用意してください。(world:チェストを置くワールド, (Xc,Yc,Zc):チェストを置く座標)

コード全体

TileEntityChest tEntity = new TileEntityChest();
ItemStack redstoneStack = new ItemStack( Item.redstone, 15);
ItemStack goldStack = new ItemStack( Block.blockGold, 20);
tEntity.setInventorySlotContents(0, redstoneStack);
tEntity.setInventorySlotContents(1, goldStack);
world.setBlock(Xc, Yc, Zc, 54);
world.setBlockTileEntity(Xc, Yc, Zc, tEntity);