Class SerenityGameplayModuleAttribute
Marks an Install*() method on the composition-root installer that installs a gameplay module
owning no settings asset of its own — Character, Wave, Stage and the other modules a game assembles its
play from. Such a module is optional: the game boots and reaches its menu without it, so the boot task
that installs it degrades the boot when it fails instead of halting it.
This is the settings-less counterpart of SerenityInstallableSystemAttribute, which only describes a system a "create a new game" flow configures through a settings asset and a Hub tool. A module declared here has nothing to configure, so that flow offers it in a section of its own and wires only its boot task; the boot-task criticality rule reads both declarations, and a method carries one or the other, never both.
Implements
Inherited Members
Namespace: Serenity.Shared.Attributes
Assembly: Serenity.Shared.dll
Syntax
[AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = false)]
public sealed class SerenityGameplayModuleAttribute : Attribute, _Attribute
Constructors
SerenityGameplayModuleAttribute(string)
Declaration
public SerenityGameplayModuleAttribute(string moduleLabel)
Parameters
| Type | Name | Description |
|---|---|---|
| string | moduleLabel |
Properties
ModuleLabel
Declaration
public string ModuleLabel { get; }
Property Value
| Type | Description |
|---|---|
| string | The |