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