This commit is contained in:
2025-05-30 16:05:49 +03:00
committed by Syntriax
parent 846aa75dd5
commit b5140a94de
57 changed files with 437 additions and 462 deletions

View File

@@ -10,17 +10,17 @@ public interface IUniverse : IEntity, IEnumerable<IUniverseObject>
/// <summary>
/// Event triggered when <see cref="Update(UniverseTime)"/> is about to be called called on the <see cref="IUniverse"/>.
/// </summary>
Event<IUniverse, UniverseTime> OnPreUpdate { get; }
Event<IUniverse, UpdateArguments> OnPreUpdate { get; }
/// <summary>
/// Event triggered when <see cref="Update(UniverseTime)"/> is called on the <see cref="IUniverse"/>.
/// </summary>
Event<IUniverse, UniverseTime> OnUpdate { get; }
Event<IUniverse, UpdateArguments> OnUpdate { get; }
/// <summary>
/// Event triggered after <see cref="Update(UniverseTime)"/> is called on the <see cref="IUniverse"/>.
/// </summary>
Event<IUniverse, UniverseTime> OnPostUpdate { get; }
Event<IUniverse, UpdateArguments> OnPostUpdate { get; }
/// <summary>
/// Event triggered when <see cref="Draw"/> is about to be called called on the <see cref="IUniverse"/>.
@@ -40,17 +40,17 @@ public interface IUniverse : IEntity, IEnumerable<IUniverseObject>
/// <summary>
/// Event triggered when a <see cref="IUniverseObject"/> is registered to the <see cref="IUniverse"/>.
/// </summary>
Event<IUniverse, IUniverseObject> OnUniverseObjectRegistered { get; }
Event<IUniverse, UniverseObjectRegisteredArguments> OnUniverseObjectRegistered { get; }
/// <summary>
/// Event triggered when a <see cref="IUniverseObject"/> is unregistered from the <see cref="IUniverse"/>.
/// </summary>
Event<IUniverse, IUniverseObject> OnUniverseObjectUnRegistered { get; }
Event<IUniverse, UniverseObjectUnRegisteredArguments> OnUniverseObjectUnRegistered { get; }
/// <summary>
/// Event triggered when <see cref="TimeScale"/> is changed on the <see cref="IUniverse"/>.
/// </summary>
Event<IUniverse, float> OnTimeScaleChanged { get; }
Event<IUniverse, TimeScaleChangedArguments> OnTimeScaleChanged { get; }
/// <summary>
/// Current time scale the <see cref="IUniverse"/> operates on.
@@ -103,11 +103,8 @@ public interface IUniverse : IEntity, IEnumerable<IUniverseObject>
/// </summary>
void Draw();
delegate void TimeScaleChangedEventHandler(IUniverse sender, float previousTimeScale);
delegate void UpdateEventHandler(IUniverse sender, UniverseTime engineTime);
delegate void DrawEventHandler(IUniverse sender);
delegate void UniverseObjectRegisteredEventHandler(IUniverse sender, IUniverseObject universeObjectRegistered);
delegate void UniverseObjectUnRegisteredEventHandler(IUniverse sender, IUniverseObject universeObjectUnregistered);
readonly record struct TimeScaleChangedArguments(float PreviousTimeScale);
readonly record struct UpdateArguments(UniverseTime EngineTime);
readonly record struct UniverseObjectRegisteredArguments(IUniverseObject UniverseObjectRegistered);
readonly record struct UniverseObjectUnRegisteredArguments(IUniverseObject UniverseObjectUnregistered);
}