Exemplo n.º 1
0
 public Cell(
     bool _walkable,
     GridPosition _gridPosition,
     int _localCellIndexX,
     int _localCellIndexY,
     int _localCellIndexZ,
     MapMetaPattern _mapMeta = MapMetaPattern.Normal)
 {
     walkable        = _walkable;
     gridPosition    = _gridPosition;
     localCellIndexX = _localCellIndexX;
     localCellIndexY = _localCellIndexY;
     localCellIndexZ = _localCellIndexZ;
     mapMeta         = _mapMeta;
 }
Exemplo n.º 2
0
            /// <summary>
            /// 特定セルを対象にパス検索を行う
            /// </summary>
            public void DoRequestPathFinding(MapMetaPattern pattern)
            {
                var map = MapManager.Instance.GetMapGeneratorByGrid(m_characterMovement.currentGridPosition);

                if (map == null)
                {
                    return;
                }

                if (map.metaCells.Count > 0)
                {
                    for (int i = 0; i < map.metaCells.Count; i++)
                    {
                        // TODO 複数同じGridなど存在する可能性があるので、Nearとか条件が別途必要
                        if (pattern == map.metaCells[i].mapMeta)
                        {
                            DoRequestPathFinding(map.metaCells[i].gridPosition);
                            return;
                        }
                    }
                }
            }