Class CharacterStatus
Type-safe enumeration for character lifecycle status.
Uses a class-based pattern instead of a C# enum to support inheritance,
allowing specialized character types (e.g., Character) to define additional
sub-states that refine the base lifecycle.
Inheritance
CharacterStatus
Assembly: Serenity.Character.Domain.dll
Syntax
public class CharacterStatus
Constructors
CharacterStatus(int, string, CharacterStatus)
Creates a new CharacterStatus instance.
Declaration
protected CharacterStatus(int value, string name, CharacterStatus parent)
Parameters
| Type |
Name |
Description |
| int |
value |
Unique integer identifier.
|
| string |
name |
Human-readable name.
|
| CharacterStatus |
parent |
Parent status this refines, or null for root statuses.
|
Fields
Active
Character is active and can interact with the world.
Declaration
public static readonly CharacterStatus Active
Field Value
Dead
Character is fully dead and ready for despawn/recycle.
Declaration
public static readonly CharacterStatus Dead
Field Value
Dying
Character is in its death transition (animation, effects, etc.).
Declaration
public static readonly CharacterStatus Dying
Field Value
Spawning
Character is spawned but not yet active (entering scene).
Declaration
public static readonly CharacterStatus Spawning
Field Value
Properties
Name
Human-readable name of this status.
Declaration
public string Name { get; }
Property Value
Parent
The parent status this status refines, or null if it is a root status.
For example, an character "Attacking" status would have Active as its parent.
Declaration
public CharacterStatus Parent { get; }
Property Value
Value
Integer identifier for equality comparisons and serialization.
Declaration
public int Value { get; }
Property Value
Methods
Equals(object)
Declaration
public override bool Equals(object obj)
Parameters
| Type |
Name |
Description |
| object |
obj |
|
Returns
Overrides
GetHashCode()
Declaration
public override int GetHashCode()
Returns
Overrides
Is(CharacterStatus)
Returns true if this status is equal to, or a sub-status of, the given status.
Walks the Parent chain to check ancestry.
Declaration
public bool Is(CharacterStatus status)
Parameters
| Type |
Name |
Description |
| CharacterStatus |
status |
The status to compare against.
|
Returns
| Type |
Description |
| bool |
True if this status matches or descends from status.
|
ToString()
Declaration
public override string ToString()
Returns
Overrides
Operators
operator ==(CharacterStatus, CharacterStatus)
Declaration
public static bool operator ==(CharacterStatus a, CharacterStatus b)
Parameters
Returns
operator !=(CharacterStatus, CharacterStatus)
Declaration
public static bool operator !=(CharacterStatus a, CharacterStatus b)
Parameters
Returns