24 lines
849 B
C#
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();
|
|
} |