Files
godot-host-test/Interfaces/ITarget.cs
T
2026-07-29 11:05:27 +02:00

24 lines
849 B
C#

using R3;
namespace GodotHostTest.Interfaces;
/// <summary>
/// A target for our projectiles. Targets can be reused multiple times.
/// </summary>
public interface ITarget
{
/// <summary>
/// An observable that emits a <see cref="Unit"/> value when the target hasn't been hit in the allotted time and has timed out. Every time this observable emits, the target becomes disabled.
/// </summary>
Observable<Unit> TimedOut { get; }
/// <summary>
/// An observable that emits a <see cref="Unit"/> value when the target has been hit in the allotted time. Every time this observable emits, the target becomes disabled.
/// </summary>
Observable<Unit> Hit { get; }
/// <summary>
/// Enable the target. Targets start disabled and gets disabled when they're hit or time out.
/// </summary>
void Enable();
}