Interface IAutomationSurface
- Namespace
- AcDream.Plugin.Abstractions
- Assembly
- AcDream.Plugin.Abstractions.dll
The whole of live gameplay as a plugin sees it: the character, the spells, the world, and the commands that act on them. Each area is its own interface; an area the host does not provide returns the shared inert implementation instead of null.
public interface IAutomationSurface
Properties
Allegiance
Authoritative allegiance identity and membership state.
IAllegianceAutomation Allegiance { get; }
Property Value
Character
The local character.
ICharacterInfo Character { get; }
Property Value
CharacterOptions
The character's own on/off options, as on the character options page.
ICharacterOptionsAutomation CharacterOptions { get; }
Property Value
Chat
Reading and writing the client's text.
IPluginChat Chat { get; }
Property Value
Combat
Combat state, nearby hostiles, and melee/missile attacks.
ICombatAutomation Combat { get; }
Property Value
Dialogs
Answering the server's yes/no confirmation dialogs.
IDialogAutomation Dialogs { get; }
Property Value
DungeonMap
The shape of the dungeon the character is in, for drawing a map of it.
IDungeonMapAutomation DungeonMap { get; }
Property Value
Enchantments
Enchantments in force on other objects, as the client tracks them.
IEnchantmentAutomation Enchantments { get; }
Property Value
Equipment
What the character owns to wear or wield, and equipping it.
IEquipmentAutomation Equipment { get; }
Property Value
Fellowship
Authoritative fellowship vitals for helper spell policy.
IFellowshipAutomation Fellowship { get; }
Property Value
IsAvailable
Whether there is a live in-world session behind this surface. False before login, after logout, and on a surface the host never bound -- read it before trusting anything else here.
bool IsAvailable { get; }
Property Value
Items
The character's inventory, and using or applying items.
IItemAutomation Items { get; }
Property Value
Labels
Text labels hung over objects in the world.
IWorldLabelAutomation Labels { get; }
Property Value
Login
The account's character list, and logging out.
ILoginAutomation Login { get; }
Property Value
Loot
Corpses and containers, and taking things out of them.
ILootAutomation Loot { get; }
Property Value
Magic
Casting spells.
IMagicCommands Magic { get; }
Property Value
Navigation
Where things are, and moving and turning the character.
INavigationAutomation Navigation { get; }
Property Value
Network
The other clients on this computer: the local client list, and the casts they report.
INetworkAutomation Network { get; }
Property Value
Objects
The world objects the client is tracking.
IWorldObjectAutomation Objects { get; }
Property Value
Projectiles
Whether a missile or spell would reach a target.
IProjectileAutomation Projectiles { get; }
Property Value
Recalls
Generation-safe recall commands and portal transition state.
IRecallAutomation Recalls { get; }
Property Value
Recovery
Recovering after death.
IRecoveryAutomation Recovery { get; }
Property Value
Selection
What the player has selected, and acting on it.
ISelectionAutomation Selection { get; }
Property Value
Spells
The spells the character knows, and every spell description loaded.
ISpellCatalog Spells { get; }
Property Value
Trade
Trading directly with another player.
ITradeAutomation Trade { get; }
Property Value
Vendor
Buying from and selling to a vendor.
IVendorAutomation Vendor { get; }
Property Value
WorldTime
The in-game clock and calendar.
IWorldTimeAutomation WorldTime { get; }