You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

33 lines
1006 B

2 years ago
using System;
using static flecs_hub.flecs;
2 years ago
namespace gaemstone.ECS;
public enum ObserverEvent
2 years ago
{
OnAdd = ECS_HI_COMPONENT_ID + 33,
OnRemove = ECS_HI_COMPONENT_ID + 34,
OnSet = ECS_HI_COMPONENT_ID + 35,
UnSet = ECS_HI_COMPONENT_ID + 36,
OnDelete = ECS_HI_COMPONENT_ID + 37,
OnCreateTable = ECS_HI_COMPONENT_ID + 38,
OnDeleteTable = ECS_HI_COMPONENT_ID + 39,
OnTableEmpty = ECS_HI_COMPONENT_ID + 40,
OnTableFill = ECS_HI_COMPONENT_ID + 41,
OnCreateTrigger = ECS_HI_COMPONENT_ID + 42,
OnDeleteTrigger = ECS_HI_COMPONENT_ID + 43,
OnDeleteObservable = ECS_HI_COMPONENT_ID + 44,
OnComponentHooks = ECS_HI_COMPONENT_ID + 45,
OnDeleteTarget = ECS_HI_COMPONENT_ID + 46,
2 years ago
}
[AttributeUsage(AttributeTargets.Method)]
public class ObserverAttribute : Attribute
2 years ago
{
public ObserverEvent Event { get; }
public string? Expression { get; }
public ObserverAttribute(ObserverEvent @event)
=> Event = @event;
2 years ago
}