.
This commit is contained in:
@@ -1,7 +1,9 @@
|
||||
using R3;
|
||||
|
||||
namespace GodotHostTest.Interfaces;
|
||||
|
||||
public interface ICurrentLevel
|
||||
{
|
||||
public int LevelNumber { get; }
|
||||
public ReadOnlyReactiveProperty<int> LevelNumber { get; }
|
||||
public void NextLevel();
|
||||
}
|
||||
@@ -1,3 +1,5 @@
|
||||
using R3;
|
||||
|
||||
namespace GodotHostTest.Interfaces;
|
||||
|
||||
/// <summary>
|
||||
@@ -8,5 +10,5 @@ public interface IScore
|
||||
/// <summary>
|
||||
/// The current score.
|
||||
/// </summary>
|
||||
public int Score { get; }
|
||||
public Observable<int> Score { get; }
|
||||
}
|
||||
@@ -8,12 +8,13 @@ namespace GodotHostTest.Interfaces;
|
||||
public interface ITarget
|
||||
{
|
||||
/// <summary>
|
||||
/// The target hasn't been hit in the allotted time and has timed out.
|
||||
/// The target hasn't been hit in the allotted time and has timed out; once this observable emits an event, both
|
||||
/// it and <see cref="Hit"/> complete.
|
||||
/// </summary>
|
||||
Observable<Unit> TimedOut { get; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// The target has been hit.
|
||||
/// The target has been hit; once this observable emits an event, both it and <see cref="TimedOut"/> complete.
|
||||
/// </summary>
|
||||
Observable<Unit> Hit { get; }
|
||||
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
using R3;
|
||||
|
||||
namespace GodotHostTest.Interfaces;
|
||||
|
||||
public interface ITargetEventBus
|
||||
{
|
||||
/// <summary>
|
||||
/// A target has timed out and disappeared.
|
||||
/// </summary>
|
||||
Observable<Unit> TimedOut { get; }
|
||||
|
||||
/// <summary>
|
||||
/// A target has been hit.
|
||||
/// </summary>
|
||||
Observable<Unit> Hit { get; }
|
||||
|
||||
/// <summary>
|
||||
/// A new target spawner has been added.
|
||||
/// </summary>
|
||||
/// <param name="targetSpawner"></param>
|
||||
void NewTargetSpawner(ITargetSpawner targetSpawner);
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
uid://bgexc7hcs5r4n
|
||||
Reference in New Issue
Block a user