Files
back_cantanBuilding/Assets/Scripts/HexGrid/IHexGridMediator.cs
2026-05-26 16:15:54 +08:00

40 lines
1.0 KiB
C#

using System.Collections.Generic;
using System.Threading.Tasks;
namespace HexGrid
{
public interface IZoneManager
{
void UpdateZoneStatus();
}
public interface IZoneController
{
void UpdateZoneStatus();
void OnHexCellClicked(HexTile tiler);
}
public interface IHexGridMediatable
{
void SetMediator(IHexGridMediator mediator);
}
public interface IHexGridMediator
{
void RegisterZoneManager(HexZoneManager controller);
void RegisterBuildingManager(BuildingManager buildManager);
void OnHexCellClicked(HexTile tiler);
Task OnActiveNextTile(HexTile tiler);
// 读取数据 zone
void LoadZones(List<HexZone> zones);
//读取数据Buildings
void LoadBuildings(List<HexBuilding> buildings);
Task CheckBuildingAfterBuild(HexTile tile);
void CheckBuildingAfterBuildImme(HexTile tile);
void Build(int zoneId,BuildingData buildingData,bool isImme);
}
}