    001package net.minecraft.world;
    002
    003import net.minecraft.nbt.NBTTagCompound;
    004
    005public abstract class WorldSavedData
    006{
    007    /** The name of the map data nbt */
    008    public final String mapName;
    009
    010    /** Whether this MapDataBase needs saving to disk. */
    011    private boolean dirty;
    012
    013    public WorldSavedData(String par1Str)
    014    {
    015        this.mapName = par1Str;
    016    }
    017
    018    /**
    019     * reads in data from the NBTTagCompound into this MapDataBase
    020     */
    021    public abstract void readFromNBT(NBTTagCompound nbttagcompound);
    022
    023    /**
    024     * write data to NBTTagCompound from this MapDataBase, similar to Entities and TileEntities
    025     */
    026    public abstract void writeToNBT(NBTTagCompound nbttagcompound);
    027
    028    /**
    029     * Marks this MapDataBase dirty, to be saved to disk when the level next saves.
    030     */
    031    public void markDirty()
    032    {
    033        this.setDirty(true);
    034    }
    035
    036    /**
    037     * Sets the dirty state of this MapDataBase, whether it needs saving to disk.
    038     */
    039    public void setDirty(boolean par1)
    040    {
    041        this.dirty = par1;
    042    }
    043
    044    /**
    045     * Whether this MapDataBase needs saving to disk.
    046     */
    047    public boolean isDirty()
    048    {
    049        return this.dirty;
    050    }
    051}