40 lines
904 B
Java
40 lines
904 B
Java
package net.minecraft.world.level.saveddata;
|
|
|
|
import java.util.Objects;
|
|
import net.minecraft.server.level.ServerLevel;
|
|
import org.jetbrains.annotations.Nullable;
|
|
|
|
public abstract class SavedData {
|
|
private boolean dirty;
|
|
|
|
/**
|
|
* Marks this {@code SavedData} dirty, to be saved to disk when the level next saves.
|
|
*/
|
|
public void setDirty() {
|
|
this.setDirty(true);
|
|
}
|
|
|
|
/**
|
|
* Sets the dirty state of this {@code SavedData}, whether it needs saving to disk.
|
|
*/
|
|
public void setDirty(boolean dirty) {
|
|
this.dirty = dirty;
|
|
}
|
|
|
|
/**
|
|
* Whether this {@code SavedData} needs saving to disk.
|
|
*/
|
|
public boolean isDirty() {
|
|
return this.dirty;
|
|
}
|
|
|
|
public record Context(@Nullable ServerLevel level, long worldSeed) {
|
|
public Context(ServerLevel level) {
|
|
this(level, level.getSeed());
|
|
}
|
|
|
|
public ServerLevel levelOrThrow() {
|
|
return (ServerLevel)Objects.requireNonNull(this.level);
|
|
}
|
|
}
|
|
}
|