Files
h-school/src/HSchool.Content/EventDefs.cs
T
Leonid Pershin 9e429d0cd7 Show director summons as info toasts and presence queue labels.
Corridor waiters need a summon-phase byte on presence (v11); EventDef DirectorSummoned is info-only so clocks keep running.
2026-08-21 13:07:47 +03:00

40 lines
1.1 KiB
C#

namespace HSchool.Content;
public static class EventSeverities
{
public const string Info = "info";
public const string Warning = "warning";
public const string Error = "error";
}
public static class EventTriggers
{
public const string DayStart = "dayStart";
public const string LessonStart = "lessonStart";
public const string GenerationFailed = "generationFailed";
public const string DirectorSummon = "directorSummon";
}
public static class EventActions
{
public const string None = "none";
public const string GenerateImage = "generateImage";
}
/// <summary>
/// A fact the world can raise. Systems emit a trigger; the worker matches this def and builds a notice.
/// </summary>
public sealed class EventDef : Def
{
public string Severity { get; init; } = EventSeverities.Info;
public bool Pause { get; init; }
/// <summary>Client toast lifetime in milliseconds. Zero means it stays until dismiss.</summary>
public int TtlMs { get; init; }
public string Trigger { get; init; } = "";
public string Action { get; init; } = EventActions.None;
}