24 lines
683 B
C#
24 lines
683 B
C#
// Assets/Scripts/Services/Interfaces/IBombService.cs
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using Cysharp.Threading.Tasks;
|
|
using Models.Interfaces;
|
|
using Structs;
|
|
using UnityEngine;
|
|
|
|
namespace Services.Interfaces
|
|
{
|
|
public interface IBombService {
|
|
public BombSpawnRequest? PendingBombSpawn { get; }
|
|
|
|
void SetLastSwap(Vector2Int from, Vector2Int to);
|
|
void ClearPendingBombs();
|
|
|
|
void DetectBombSpawnFromLastSwap(List<Gem> currentMatches);
|
|
|
|
UniTask DetonateChainAsync(
|
|
IReadOnlyList<Vector2Int> initialBombs,
|
|
Func<Vector2Int, UniTask> destroyAtAsync,
|
|
IGameBoard gameBoard);
|
|
}
|
|
} |