using System.Threading.Tasks; using ColdMint.scripts.levelGraphEditor; using ColdMint.scripts.map.dateBean; namespace ColdMint.scripts.map.interfaces; /// /// Room placement strategy /// 房间放置策略 /// public interface IRoomPlacementStrategy { /// /// Place the room in the designated location /// 在指定的位置放置房间 /// /// ///Room placement information ///房间放置信息 /// /// ///Placement success or not ///是否放置成功 /// public Task PlaceRoom(RoomPlacementData roomPlacementData); /// /// Calculate new room placement information /// 计算新的房间放置信息 /// /// ///Parent room node ///父房间节点 /// /// ///New room data to be placed ///欲放置的新房间数据 /// /// public Task CalculateNewRoomPlacementData(IRoom? parentRoomNode, RoomNodeData newRoomNodeData); }