Main GraphMine code. All public classes and functions are stable API.
io.github.sof3.graphmine.scope.BaseScope | Basic implementation of BaseScope |
io.github.sof3.graphmine.world.Block | Represents a block type. |
io.github.sof3.graphmine.world.BlockInstance | Represents a block type at a certain location. The existence persistence of this block is irrelevant to whether the block is really at the location, ever at the location or has been removed. This is a pure value class. |
io.github.sof3.graphmine.world.BlockLocation | A unique identifier for an integer location. |
io.github.sof3.graphmine.world.Blocks | The list of default Block instances. Plugins are not expected to add custom block types to this list |
io.github.sof3.graphmine.client.Client | |
io.github.sof3.graphmine.command.args.ClientArg | Accepts a client name |
io.github.sof3.graphmine.client.ClientAttachable | |
io.github.sof3.graphmine.command.Command | This class represents a command type. Each instance of Command should represent one registered command. |
io.github.sof3.graphmine.command.args.CommandArg | Superclass of a command argument. |
io.github.sof3.graphmine.command.CommandException | Represents any user-friendly errors reported from commands. |
io.github.sof3.graphmine.command.CommandExecutor | The this context of command handlers. |
io.github.sof3.graphmine.command.CommandMap | Stores a list of commands. This class can also be instantiated at individual commands to provide a sub-command list. |
io.github.sof3.graphmine.command.CommandReceiver | Accepts output from a command. |
io.github.sof3.graphmine.command.CommandSender | Represents an object that sends the command. |
io.github.sof3.graphmine.config.ConfigEntryDelegate | The delegate class to a config entry |
io.github.sof3.graphmine.config.ConfigException | Thrown when a config has some problems |
io.github.sof3.graphmine.config.ConfigGroupSpec | Superclass of type specifications of groups in a ConfigSpec |
io.github.sof3.graphmine.config.ConfigMissingException | Thrown when a required entry is missing from a config |
io.github.sof3.graphmine.config.ConfigSpec | Superclass for type specifications of .kts config files |
io.github.sof3.graphmine.config.ConfigValidationException | Thrown when an entry from a config is invalid |
io.github.sof3.graphmine.config.CoreConfig | Model for the server config.yml |
io.github.sof3.graphmine.feature.DoubleFeatureHandler | |
io.github.sof3.graphmine.command.EmptyOverload | An empty overload, reused for commands that do not require arguments. |
io.github.sof3.graphmine.entity.Entity | An entity is a mobile object that exists in a world |
io.github.sof3.graphmine.entity.EntityController | Controls the actions of an entity. |
io.github.sof3.graphmine.entity.EntityState | Contains the savable data of an entity |
io.github.sof3.graphmine.entity.EntityViewEvent | Events that an entity’s view changes. This may be due to changes in entity external views, blocks in world views, or other reasons. |
io.github.sof3.graphmine.command.args.EnumArg | Accepts a value that names one of the constants in the enum class |
io.github.sof3.graphmine.entity.ExternalView | Represents one of the appearances of an entity. |
io.github.sof3.graphmine.entity.ExternalViewer | Provides an adapter that determines how this entity looks to other entities. |
io.github.sof3.graphmine.feature.FeatureEdge | Represents the implementation of a feature. |
io.github.sof3.graphmine.feature.FeatureEvent | Represents an event on some node(s). Implementations shall contain mutable and immutable properties for FeatureEdges to read and modify, except the FeatureNodeInstances do not need to be in the event since they are passed to the event in a different way. |
io.github.sof3.graphmine.feature.FeatureGraph | The Feature Graph is the main registry of features in the server. It is an undirected multi-graph that allows FeatureEdges (the features themselves) to handle interaction events (FeatureEvent) between FeatureNodes (the objects of features, e.g. entities, blocks, or abstract concepts like commands), or self-loop edges that handle events on a single object (e.g. player join). |
io.github.sof3.graphmine.feature.FeatureNode | Represents a concrete or abstract concept that can interact with itself or other FeatureNodes, such as an entity, a block, a client or a command. |
io.github.sof3.graphmine.feature.FeatureNodeInstance | Represents an instance of FeatureNode. The FeatureNode represents the type in general, while FeatureNodeInstance represents each instance of the type. It is valid for FeatureNodeInstance to be singleton or even same as the FeatureNode. For example, each instance of the Client class represents one client, while the singleton Client.Node companion object represents the client type. |
io.github.sof3.graphmine.HasLogger | This interface only exists to avoid the boilerplate of calling the logger. |
io.github.sof3.graphmine.command.args.IntegerArg | Accepts integer arguments. |
io.github.sof3.graphmine.entity.InternalViewer | Acts like the receiver to the camera signals of an entity |
io.github.sof3.graphmine.world.Location | Represents a point in the 3D space of a world. |
io.github.sof3.graphmine.command.args.NumberArg | Accepts any finite real-numeric arguments. |
io.github.sof3.graphmine.command.Overload | Defines the parameters of a command. |
io.github.sof3.graphmine.command.args.RawTextArg | Accepts the rest of the whole line literally |
io.github.sof3.graphmine.command.RegisteredOverload | A factory that creates a new instance of a known command overload for each command execution. |
io.github.sof3.graphmine.scope.Scope | A Scope represents some period of persistence. Features are enabled only during the scope is not disposed. Builtin scopes include: |
io.github.sof3.graphmine.Server | The Server should be the object that links up different components of the server. |
io.github.sof3.graphmine.config.ServerConfig | Settings for the server |
io.github.sof3.graphmine.config.SimpleConfigEntry | |
io.github.sof3.graphmine.feature.SingleFeatureEdge | Convenience implementation of self-looping FeatureEdge |
io.github.sof3.graphmine.feature.SingleFeatureHandler | |
io.github.sof3.graphmine.command.args.StringArg | Accepts the next value in the line. Multi-word arguments can be quoted by "" or their spaces escaped by \ before. |
io.github.sof3.graphmine.command.impl.VersionCommand | Implements the /version command |
io.github.sof3.graphmine.VersionInfo | Holds the static version information for this build |
io.github.sof3.graphmine.world.World | Each world has its set of 3D space. Usually, this is implemented as one saved map, but plugins may create virtual worlds, remote worlds or anything that features the characteristics as required by the interface. |
io.github.sof3.graphmine.world.WorldPartition | Represents a partition of a World. World partitioning is controlled by the server based on WorldUser activity. |
io.github.sof3.graphmine.world.WorldUser | Represents a user of a world that holds resources from being freed. |
io.github.sof3.graphmine.world.WorldView | An adapter that intercepts between a world viewer and the actual world. |
io.github.sof3.graphmine.command.WrongSyntaxException | Thrown when a command with wrong syntax is sent. |