using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace CommonAI.RTS.Manhattan
{
///
/// 曼哈顿寻路基础数据结构
///
public interface IManhattanMap : IDisposable
{
float TotalWidth { get; }
float TotalHeight { get; }
///
/// 获取地图X格子数
///
///
int XCount { get; }
///
/// 获取地图Y格子数
///
///
int YCount { get; }
///
/// 获取地图每格宽
///
///
float CellW { get; }
///
/// 获取地图每格高
///
///
float CellH { get; }
///
/// 测试是否有阻挡,true=不能通过
///
///
///
/// true=不能通过 ;false=可以通过
bool TestBlock(int bx, int by);
///
/// 测试值是否有阻挡,true=不能通过
///
/// 碰撞值
/// true=不能通过 ;false=可以通过
bool TestBlockValue(int value);
///
/// 获取地块值
///
///
///
///
int GetValue(int bx, int by);
///
/// 设置地块值
///
///
///
///
/// 是否发生变化
bool SetValue(int bx, int by, int value);
///
/// 创建地图节点
///
///
AstarManhattan.MMapNode CreateMapNode();
}
}