Table of Contents

Interface IDungeonMapAutomation

Namespace
AcDream.Plugin.Abstractions
Assembly
AcDream.Plugin.Abstractions.dll

The shape of the dungeon the character is in, for a plugin drawing a map of it. The plan is data, not a picture: the plugin draws it however it likes, on whatever it has to draw with.

public interface IDungeonMapAutomation

Properties

CurrentLandblockId

The landblock the character stands in, with a zero low half, or zero when the character has no position yet, which is also what the default implementation always reports.

uint CurrentLandblockId { get; }

Property Value

uint

Methods

CaptureFloorplan(uint)

The floorplan of a landblock's indoor cells, built from the game data the first time it is asked for and the same plan every time after. Any cell id in the landblock will do. Reading the data can take a few milliseconds on a large dungeon the first time; the plan is worth keeping. Empty comes back for a landblock the data does not have, for one with no indoor cells, and on a host that cannot read the game data, which is what the default implementation always returns.

PluginDungeonFloorplan CaptureFloorplan(uint landblockId)

Parameters

landblockId uint

The landblock, or any cell in it.

Returns

PluginDungeonFloorplan

CaptureIndoorCells(uint)

Every indoor cell of a landblock as the game data authors it -- the environment piece each is built from and how it is placed -- in cell id order, read from the game data the first time it is asked for and the same list every time after. Unlike the floorplan this is the raw placement of every cell the landblock lists, geometry or not. Empty for a landblock the data does not have, one with no indoor cells, and on a host that cannot read the game data, which is what the default implementation always returns.

IReadOnlyList<PluginIndoorCell> CaptureIndoorCells(uint landblockId)

Parameters

landblockId uint

The landblock, or any cell in it.

Returns

IReadOnlyList<PluginIndoorCell>

IsSealedDungeon(uint)

Whether cellId is an indoor cell that sees nothing outside, as a dungeon's cells are; false for outdoor cells, for the interiors of buildings that open onto the landscape, for cells the data lacks, and on a host that cannot read the game data, which is what the default implementation always reports.

bool IsSealedDungeon(uint cellId)

Parameters

cellId uint

The full cell id, landblock in the high half.

Returns

bool