namespace ReactorMaintenance.Simulation;

public sealed record RuleEffect
{
    public ERuleEffectKind Kind { get; init; }
    public GridPosition Position { get; init; } = new(0, 0);
    public GridPosition? AccessPosition { get; init; }
    public ECarrierType Carrier { get; init; }
    public ERemedyType Remedy { get; init; }
    public float Amount { get; init; }
    public EPropSwitchState PropSwitchState { get; init; }
    public string Message { get; init; } = string.Empty;
}