Table of Contents

Class MclqData

Namespace
WoWLib.Formats.ADT
Assembly
WoWLib.dll

A terrain chunk's legacy liquid (MCLQ, up to WotLK, deprecated by MH2O): a 9x9 grid of liquid vertices (SLVert; read as magma/slime via as_magma()), an 8x8 grid of tile flag bytes and the active flow vectors. The height range and the flow-vector count are stored; the trailing pair of flow vectors is always written.

public class MclqData : IDisposable
Inheritance
MclqData
Implements
Inherited Members

Constructors

MclqData()

public MclqData()

MclqData(MclqData)

Copy-construct: a deep copy of other (the C++ copy constructor).

public MclqData(MclqData other)

Parameters

other MclqData

MclqData(CRange, Vector<SlVert>, byte[], Vector<SwFlowv>)

public MclqData(CRange heightRange, Vector<SlVert> vertices, byte[] tiles, Vector<SwFlowv> flows)

Parameters

heightRange CRange
vertices Vector<SlVert>
tiles byte[]
flows Vector<SwFlowv>

Properties

Empty

Whether the chunk carries no legacy liquid.

public bool Empty { get; }

Property Value

bool

Flows

The active flow vectors (0-2).

public Vector<SwFlowv> Flows { get; }

Property Value

Vector<SwFlowv>

HeightRange

The surface height range (CRange: min, max).

public CRange HeightRange { get; set; }

Property Value

CRange

Tiles

The 8x8 = 64 tile flag bytes (bits: liquid type, don't-render, fatigue).

public Vector<byte> Tiles { get; }

Property Value

Vector<byte>

Vertices

The 9x9 = 81 liquid vertices, row-major.

public Vector<SlVert> Vertices { get; }

Property Value

Vector<SlVert>

Methods

Dispose()

Release the native object now. Optional: the finalizer releases it on collection anyway - dispose (or using) when you want native memory back promptly.

public virtual void Dispose()

Equals(object?)

Determines whether the specified object is equal to the current object.

public override bool Equals(object? obj)

Parameters

obj object

The object to compare with the current object.

Returns

bool

true if the specified object is equal to the current object; otherwise, false.

GetHashCode()

Reference-identity hash (the C++ type has no hash to mirror).

public override int GetHashCode()

Returns

int

Operators

operator ==(MclqData?, MclqData?)

public static bool operator ==(MclqData? l, MclqData? r)

Parameters

l MclqData
r MclqData

Returns

bool

operator !=(MclqData?, MclqData?)

public static bool operator !=(MclqData? l, MclqData? r)

Parameters

l MclqData
r MclqData

Returns

bool