Separate bomb logic
This commit is contained in:
21
Assets/Scripts/Services/Interfaces/IBombService.cs
Normal file
21
Assets/Scripts/Services/Interfaces/IBombService.cs
Normal file
@@ -0,0 +1,21 @@
|
||||
// Assets/Scripts/Services/Interfaces/IBombService.cs
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Cysharp.Threading.Tasks;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Services.Interfaces
|
||||
{
|
||||
public interface IBombService
|
||||
{
|
||||
IReadOnlyList<Vector2Int> CollectTriggeredBombs(IReadOnlyList<Vector2Int> matchPositions);
|
||||
UniTask DetonateChainAsync(
|
||||
IReadOnlyList<Vector2Int> initialBombs,
|
||||
Func<Vector2Int, bool> inBounds,
|
||||
Func<Vector2Int, Gem> getGemAt,
|
||||
Func<Vector2Int, UniTask> destroyAtAsync,
|
||||
int radius,
|
||||
float bombDelaySeconds,
|
||||
float bombSelfDelaySeconds);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user