blob: bf748084d5225f7accfb5b8d9f4966ef771a2caa [file] [log] [blame] [raw]
package li.cil.oc.server.computer
import li.cil.oc.api.{Visibility, INetworkNode}
import net.minecraft.world.World
/**
* This has to be implemented by owners of computer instances and allows the
* computers to access information about the world they live in.
*/
trait IComputerEnvironment extends INetworkNode {
override def name = "computer"
override def visibility = Visibility.Network
def world: World
/**
* Called when the computer state changed, so it should be saved again.
*
* This is called asynchronously from the Computer's executor thread, so the
* computer's owner must make sure to handle this in a synchronized fashion.
*/
def markAsChanged(): Unit
}