chore: cleanup

This commit is contained in:
redglow
2026-07-29 11:05:27 +02:00
parent 2c0a3f47a4
commit 5c4519ed26
20 changed files with 110 additions and 70 deletions
+10
View File
@@ -2,8 +2,18 @@ using R3;
namespace GodotHostTest.Interfaces;
/// <summary>
/// The object that handles the current level.
/// </summary>
public interface ICurrentLevel
{
/// <summary>
/// The current level.
/// </summary>
public ReadOnlyReactiveProperty<int> LevelNumber { get; }
/// <summary>
/// Move to the next level.
/// </summary>
public void NextLevel();
}
+3
View File
@@ -2,6 +2,9 @@ using System;
namespace GodotHostTest.Interfaces;
/// <summary>
/// Description of a single level.
/// </summary>
public interface ILevel
{
/// <summary>
+8
View File
@@ -1,6 +1,14 @@
namespace GodotHostTest.Interfaces;
/// <summary>
/// An object that provides the information about a certain level.
/// </summary>
public interface ILevelDataProvider
{
/// <summary>
/// Return the level data for a specific level.
/// </summary>
/// <param name="levelNumber">Level number.</param>
/// <returns>The information about a certain level.</returns>
public ILevel GetLevelData(int levelNumber);
}
+1 -1
View File
@@ -10,5 +10,5 @@ public interface IScore
/// <summary>
/// The current score.
/// </summary>
public Observable<int> Score { get; }
public ReadOnlyReactiveProperty<int> Score { get; }
}
+3 -4
View File
@@ -3,18 +3,17 @@ using R3;
namespace GodotHostTest.Interfaces;
/// <summary>
/// A target for our projectiles.
/// A target for our projectiles. Targets can be reused multiple times.
/// </summary>
public interface ITarget
{
/// <summary>
/// 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.
/// 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>
/// The target has been hit; once this observable emits an event, both it and <see cref="TimedOut"/> complete.
/// 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; }
+1 -1
View File
@@ -1,7 +1,7 @@
namespace GodotHostTest.Interfaces;
/// <summary>
/// An object which collects targets as soon as they are created.
/// An object which receives targets as soon as they are created.
/// </summary>
public interface ITargetCollector
{
+5 -2
View File
@@ -2,6 +2,9 @@ using R3;
namespace GodotHostTest.Interfaces;
/// <summary>
/// An event bus that summarizes information from all <see cref="ITargetSpawner" />'s targets.
/// </summary>
public interface ITargetEventBus
{
/// <summary>
@@ -15,8 +18,8 @@ public interface ITargetEventBus
Observable<Unit> Hit { get; }
/// <summary>
/// A new target spawner has been added.
/// Callback method to invoke when a new target spawner has been added.
/// </summary>
/// <param name="targetSpawner"></param>
/// <param name="targetSpawner">The new target spawner.</param>
void NewTargetSpawner(ITargetSpawner targetSpawner);
}
+1 -1
View File
@@ -3,7 +3,7 @@ using R3;
namespace GodotHostTest.Interfaces;
/// <summary>
/// An object that spawns targets.
/// An object that spawns targets. A target is considered spawned whenever it's enabled, even if it was already present in the scene.
/// </summary>
public interface ITargetSpawner
{