Захотел прописать GUI блоку. Для этого создал:
TileEntity
TileEntities
И собственно, сам блок
Дальше залез проверять в игру. По задумке, в консоль должно высветится Hello, но я вижу только эту ошибку:
Я не знаю, почему это не работает, пользуюсь этим гайдом:
Гугл/Поиск по форуму не спасли, промучался всю ночь. Надеюсь на вашу помощь.
TileEntity
Код:
package ru.zixxa.mercenary.tileentity;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.server.gui.IUpdatePlayerListBox;
import net.minecraft.tileentity.TileEntity;
public class SmithyTileEntity extends TileEntity{
@Override
public void writeToNBT(NBTTagCompound par1)
{
super.writeToNBT(par1);
}
@Override
public void readFromNBT(NBTTagCompound par1)
{
super.readFromNBT(par1);
}
public class ModTileEntity extends TileEntity implements IUpdatePlayerListBox {
@Override
public void update() {
System.out.println("Hello, I'm a TileEntity!");
}
}
}
TileEntities
Код:
package ru.zixxa.mercenary.tileentity;
import cpw.mods.fml.common.registry.GameRegistry;
public final class MercenaryTileEntities {
public static void init() {
GameRegistry.registerTileEntity(SmithyTileEntity.class, "tutorial_tile_entity");
}
}
Код:
package ru.zixxa.mercenary;
import net.minecraft.block.Block;
import net.minecraft.block.BlockContainer;
import net.minecraft.block.material.Material;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
import ru.zixxa.mercenary.tileentity.SmithyTileEntity;
public class Smithy extends BlockContainer {
protected Smithy() {
super(Material.iron);
this.setBlockName("Smithy");
this.setCreativeTab(CreativeTabs.tabBlock);
this.setHardness(15F);
this.setResistance(10F);
this.setHarvestLevel("pickaxe", 1);
this.setBlockTextureName("mercenary:Smithy");
}
@Override
public TileEntity createNewTileEntity(World worldIn, int meta) {
return new SmithyTileEntity();
}
}
Дальше залез проверять в игру. По задумке, в консоль должно высветится Hello, но я вижу только эту ошибку:
Код:
[08:48:26] [Server thread/ERROR] [FML]: A TileEntity type ru.zixxa.mercenary.tileentity.SmithyTileEntity has throw an exception trying to write state. It will not persist. Report this to the mod author
java.lang.RuntimeException: class ru.zixxa.mercenary.tileentity.SmithyTileEntity is missing a mapping! This is a bug!
at net.minecraft.tileentity.TileEntity.writeToNBT(TileEntity.java:96) ~[TileEntity.class:?]
at ru.zixxa.mercenary.tileentity.SmithyTileEntity.writeToNBT(SmithyTileEntity.java:11) ~[SmithyTileEntity.class:?]
at net.minecraft.world.chunk.storage.AnvilChunkLoader.writeChunkToNBT(AnvilChunkLoader.java:395) [AnvilChunkLoader.class:?]
at net.minecraft.world.chunk.storage.AnvilChunkLoader.saveChunk(AnvilChunkLoader.java:204) [AnvilChunkLoader.class:?]
at net.minecraft.world.gen.ChunkProviderServer.safeSaveChunk(ChunkProviderServer.java:287) [ChunkProviderServer.class:?]
at net.minecraft.world.gen.ChunkProviderServer.saveChunks(ChunkProviderServer.java:340) [ChunkProviderServer.class:?]
at net.minecraft.world.WorldServer.saveAllChunks(WorldServer.java:863) [WorldServer.class:?]
at net.minecraft.server.MinecraftServer.saveAllWorlds(MinecraftServer.java:370) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:636) [MinecraftServer.class:?]
at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:118) [IntegratedServer.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:485) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer$2.run(MinecraftServer.java:752) [MinecraftServer$2.class:?]
Я не знаю, почему это не работает, пользуюсь этим гайдом:
Гугл/Поиск по форуму не спасли, промучался всю ночь. Надеюсь на вашу помощь.