Skip to main content
Version: 1.0.0

Struct EffectsAttributes

Namespace: OblivionMp.Sdk.Common.Archetypes.Mixins
Assembly: OblivionMp.Sdk.Common.dll

A character's active effect values, keyed by CharacterEffect cast to byte.

[ArchetypeMixin]
public readonly struct EffectsAttributes : IArchetypeMixin, IArchetypeQueryable, IEntityShape

Implements​

IArchetypeMixin, IArchetypeQueryable, IEntityShape

Inherited Members​

object.GetType(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

Properties​

AttributeCount​

public int AttributeCount { get; }

Property Value​

int

Methods​

AddAttribute(in byte, in float)​

[Changes("EffectsAttributes.Field.Attribute")]
public bool AddAttribute(in byte key, in float value)

Parameters​

key byte

value float

Returns​

bool

ClearAttribute()​

[Changes("EffectsAttributes.Field.Attribute")]
public void ClearAttribute()

ContainsAttribute(in byte, in float)​

public bool ContainsAttribute(in byte key, in float value)

Parameters​

key byte

value float

Returns​

bool

ContainsAttributeKey(in byte)​

public bool ContainsAttributeKey(in byte key)

Parameters​

key byte

Returns​

bool

GetAttribute()​

public NativeDictionary<byte, float, ByteHash>.ReadOnly GetAttribute()

Returns​

NativeDictionary<byte, float, ByteHash>.ReadOnly

GetAttribute(in byte)​

public float GetAttribute(in byte key)

Parameters​

key byte

Returns​

float

Keep()​

This entity, which it already is: a loop over this shape hands over the shape itself.

public EffectsAttributes Keep()

Returns​

EffectsAttributes

Remarks​

Here so taking something out of a loop reads the same whichever way the loop walks. Whether a shape is walked by chunk follows from what it includes, which the call site cannot see and which changes when an include does.

RemoveAttribute(in byte)​

[Changes("EffectsAttributes.Field.Attribute")]
public bool RemoveAttribute(in byte key)

Parameters​

key byte

Returns​

bool

SetAttribute(in NativeDictionary<byte, float, ByteHash>)​

[Changes("EffectsAttributes.Field.Attribute")]
public void SetAttribute(in NativeDictionary<byte, float, ByteHash> value)

Parameters​

value NativeDictionary<byte, float, ByteHash>

SetAttribute(in byte, in float)​

[Changes("EffectsAttributes.Field.Attribute")]
public void SetAttribute(in byte key, in float value)

Parameters​

key byte

value float

TryGetAttributeValue(in byte, out float)​

public bool TryGetAttributeValue(in byte key, out float value)

Parameters​

key byte

value float

Returns​

bool

  • Properties
    • AttributeCount
  • Methods
    • AddAttribute(in byte, in float)
    • ClearAttribute()
    • ContainsAttribute(in byte, in float)
    • ContainsAttributeKey(in byte)
    • GetAttribute()
    • GetAttribute(in byte)
    • Keep()
    • RemoveAttribute(in byte)
    • SetAttribute(in NativeDictionary<byte, float, ByteHash>)
    • SetAttribute(in byte, in float)
    • TryGetAttributeValue(in byte, out float)