- 435
- 1
В общем есть у меня WorldSavedData, он грузится/создается для мира вот так:
И у меня есть тик хэндлер для мира. Теперь вопрос: как получить мой WorldSavedData с уникальным именем (sswWorld) в тик хэндлере?
[merge_posts_bbcode]Добавлено: 22.05.2015 08:52:47[/merge_posts_bbcode]
Ах вот сам WorldSavedData
Код:
@ForgeSubscribe
public void onWorldLoad(WorldEvent.Load event)
{
loadOrCreateData(event.world);
data.getData().setInteger("blowOut", 100);
data.markDirty();
}
public SSWWorldData data;
public String getTagName() {
return "sswWorld";
}
public final void loadOrCreateData(World world) {
if (data == null) {
data = (SSWWorldData) world.perWorldStorage.loadData(SSWWorldData.class, getTagName());
if (data == null)
{
data = new SSWWorldData(getTagName());
world.perWorldStorage.setData(getTagName(), data);
}
else
{
NBTTagCompound compound = data.getData();
}
}
}
И у меня есть тик хэндлер для мира. Теперь вопрос: как получить мой WorldSavedData с уникальным именем (sswWorld) в тик хэндлере?
[merge_posts_bbcode]Добавлено: 22.05.2015 08:52:47[/merge_posts_bbcode]
Ах вот сам WorldSavedData
Код:
public class SSWWorldData extends WorldSavedData
{
private NBTTagCompound data = new NBTTagCompound();
public SSWWorldData(String tagName) {
super(tagName);
}
@Override
public void readFromNBT(NBTTagCompound compound) {
data = compound.getCompoundTag("sswWorld");
}
@Override
public void writeToNBT(NBTTagCompound compound) {
compound.setTag("sswWorld", data);
}
public NBTTagCompound getData() {
return data;
}
}