Class WaveAsset
- Namespace
- SurvivorsMaker.Data
- Assembly
- SurvivorsMaker.Data.dll
Inspector-authored wave data converted to a cached runtime definition.
[CreateAssetMenu(menuName = "Survivor Roguelite Maker/Content/Wave", fileName = "Wave")]
public sealed class WaveAsset : ContentDefinitionAsset<WaveDef>
- Inheritance
-
ObjectScriptableObjectWaveAsset
- Inherited Members
-
ScriptableObject.SetDirty()ScriptableObject.CreateInstance<T>()Object.GetEntityId()Object.GetInstanceID()Object.GetHashCode()Object.InstantiateAsync<T>(T)Object.InstantiateAsync<T>(T, Transform)Object.InstantiateAsync<T>(T, Vector3, Quaternion)Object.InstantiateAsync<T>(T, Transform, Vector3, Quaternion)Object.Instantiate(Object, Vector3, Quaternion)Object.Instantiate(Object, Vector3, Quaternion, Transform)Object.Instantiate(Object)Object.Instantiate(Object, Scene)Object.Instantiate<T>(T, InstantiateParameters)Object.Instantiate<T>(T, Vector3, Quaternion, InstantiateParameters)Object.Instantiate(Object, Transform)Object.Instantiate<T>(T)Object.Instantiate<T>(T, Vector3, Quaternion)Object.Instantiate<T>(T, Vector3, Quaternion, Transform)Object.Instantiate<T>(T, Transform)Object.Destroy(Object)Object.DestroyImmediate(Object)Object.DontDestroyOnLoad(Object)Object.DestroyObject(Object)Object.FindObjectsOfType<T>()Object.FindObjectsByType<T>(FindObjectsSortMode)Object.FindObjectsByType<T>(FindObjectsInactive, FindObjectsSortMode)Object.FindObjectOfType<T>()Object.FindFirstObjectByType<T>()Object.FindAnyObjectByType<T>()Object.FindFirstObjectByType<T>(FindObjectsInactive)Object.FindAnyObjectByType<T>(FindObjectsInactive)Object.ToString()Object.nameObject.hideFlags
Constructors
WaveAsset()
public WaveAsset()
Fields
CompletionReward
Nonnegative currency granted on successful wave completion.
[Tooltip("Nonnegative currency granted on successful wave completion.")]
public int CompletionReward
Field Value
DurationSeconds
Positive wave duration in seconds, converted to simulation ticks.
[Tooltip("Positive wave duration in seconds, converted to simulation ticks.")]
public float DurationSeconds
Field Value
EndOnBossDeath
Finish after all expected bosses are spawned and defeated; duration remains a fallback.
[Tooltip("Finish after all expected bosses are spawned and defeated; duration remains a fallback.")]
public bool EndOnBossDeath
Field Value
Groups
Wave-specific spawn groups, evaluated before arena common groups.
[Tooltip("Wave-specific spawn groups, evaluated before arena common groups.")]
public List<SpawnGroupEntry> Groups
Field Value
Hordes
One-shot horde events. Equal-time events keep authored order.
[Tooltip("One-shot horde events. Equal-time events keep authored order.")]
public List<HordeEventEntry> Hordes
Field Value
MaxAlive
Positive cap on hostile enemies, including pending hostile telegraphs.
[Tooltip("Positive cap on hostile enemies, including pending hostile telegraphs.")]
public int MaxAlive
Field Value
Methods
Populate(WaveDef)
Fills the already-cached definition shell; resolve asset references through their conversion caches.
protected override void Populate(WaveDef def)
Parameters
defWaveDef
ToWaveDef()
Returns the cached runtime definition for this asset revision; repeated references preserve object identity.
public WaveDef ToWaveDef()
Returns
Validate()
Returns authoring problems without repairing or changing serialized fields; an empty list means valid.
public override List<string> Validate()