public bool IsClose(MAP.BLOCK b1, MAP.BLOCK b2) { MAP.Vector2D b1_RB = b1.rightBot + 2; MAP.Vector2D b2_LT = b2.leftTop - 2; //Left Right if (b1_RB.x - b2_LT.x == 2) { return(true); } //Up Down if (b1_RB.y - b2_LT.y == 2) { return(true); } return(false); }
void SetBlockInfo(MAP.BLOCK bLeft) { switch (bLeft.divideDir) { case MAP.DIVIDE.VERTICAL: for (int y = bLeft.leftTop.y; y <= bLeft.rightBot.y; ++y) { Map[y][bLeft.rightBot.x + 1] = MAP.SPACE.BLOCK; } break; case MAP.DIVIDE.HORIZONTAL: for (int x = bLeft.leftTop.x; x <= bLeft.rightBot.x; ++x) { Map[bLeft.rightBot.y + 1][x] = MAP.SPACE.BLOCK; } break; } }
public NODE(int _index, int _level, MAP.Vector2D bLeftTop, MAP.Vector2D bRightBot) { blockInfo = new MAP.BLOCK(bLeftTop, bRightBot); index = _index; level = _level; }
public NODE() { blockInfo = new MAP.BLOCK(); }