Interface IGameState
- Namespace
- AcDream.Plugin.Abstractions
- Assembly
- AcDream.Plugin.Abstractions.dll
A read-only view of what the client currently has in the world. Every list is a snapshot the host rebuilds; it is never mutated underneath a reader.
public interface IGameState
Properties
Contracts
The character's tracked quest contracts. Empty on a host that does not track them and before the server has sent any.
IReadOnlyList<ContractSnapshot> Contracts { get; }
Property Value
Entities
Everything the client is currently drawing, with its position and facing. Empty before the local player is in the world.
IReadOnlyList<WorldEntitySnapshot> Entities { get; }
Property Value
SceneryObjects
The fixed decoration of the landscape around the character -- trees, rocks, buildings and the other pieces that come with the map rather than from the world server -- with the position and facing the client placed each one at.
These are not objects. Nothing here can be selected, used, attacked or picked up, and none of it has a server identity, so an id in this list never appears in Entities and never belongs in a command. It is useful for reading the shape of the surroundings and for nothing else.
Empty on a host that draws nothing, because what is placed, and how far out, is a fact about a drawn world. A plugin that wants the surroundings has to cope with an empty list.
IReadOnlyList<WorldEntitySnapshot> SceneryObjects { get; }