示例#1
0
    public void GenerateConnections()
    {
        //Kingdom 1
        GridMap.Instance.GameBoard [21, 30].hexTile.GetCityTileTest().cityAttributes.connectedCities = new List <CityTileTest> ()
        {
            GridMap.Instance.GameBoard[18, 33].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[14, 32].hexTile.GetCityTileTest(),
            GridMap.Instance.GameBoard[29, 30].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[21, 23].hexTile.GetCityTileTest()
        };

        GridMap.Instance.GameBoard [18, 33].hexTile.GetCityTileTest().cityAttributes.connectedCities = new List <CityTileTest> ()
        {
            GridMap.Instance.GameBoard[21, 30].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[14, 37].hexTile.GetCityTileTest()
        };

        GridMap.Instance.GameBoard [14, 32].hexTile.GetCityTileTest().cityAttributes.connectedCities = new List <CityTileTest> ()
        {
            GridMap.Instance.GameBoard[21, 30].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[14, 37].hexTile.GetCityTileTest(),
            GridMap.Instance.GameBoard[16, 18].hexTile.GetCityTileTest()
        };

        GridMap.Instance.GameBoard [14, 37].hexTile.GetCityTileTest().cityAttributes.connectedCities = new List <CityTileTest> ()
        {
            GridMap.Instance.GameBoard[18, 33].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[14, 32].hexTile.GetCityTileTest()
            , GridMap.Instance.GameBoard[36, 37].hexTile.GetCityTileTest()
        };

        //Kingdom 2
        GridMap.Instance.GameBoard [29, 30].hexTile.GetCityTileTest().cityAttributes.connectedCities = new List <CityTileTest> ()
        {
            GridMap.Instance.GameBoard[32, 33].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[35, 31].hexTile.GetCityTileTest(),
            GridMap.Instance.GameBoard[21, 30].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[29, 23].hexTile.GetCityTileTest()
        };

        GridMap.Instance.GameBoard [32, 33].hexTile.GetCityTileTest().cityAttributes.connectedCities = new List <CityTileTest> ()
        {
            GridMap.Instance.GameBoard[29, 30].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[36, 37].hexTile.GetCityTileTest()
        };

        GridMap.Instance.GameBoard [35, 31].hexTile.GetCityTileTest().cityAttributes.connectedCities = new List <CityTileTest> ()
        {
            GridMap.Instance.GameBoard[29, 30].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[36, 37].hexTile.GetCityTileTest()
            , GridMap.Instance.GameBoard[37, 14].hexTile.GetCityTileTest()
        };

        GridMap.Instance.GameBoard [36, 37].hexTile.GetCityTileTest().cityAttributes.connectedCities = new List <CityTileTest> ()
        {
            GridMap.Instance.GameBoard[32, 33].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[35, 31].hexTile.GetCityTileTest()
            , GridMap.Instance.GameBoard[14, 37].hexTile.GetCityTileTest()
        };

        //Kingdom 3
        GridMap.Instance.GameBoard [29, 23].hexTile.GetCityTileTest().cityAttributes.connectedCities = new List <CityTileTest> ()
        {
            GridMap.Instance.GameBoard[29, 16].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[29, 30].hexTile.GetCityTileTest()
            , GridMap.Instance.GameBoard[21, 23].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[37, 14].hexTile.GetCityTileTest()
        };

        GridMap.Instance.GameBoard [29, 16].hexTile.GetCityTileTest().cityAttributes.connectedCities = new List <CityTileTest> ()
        {
            GridMap.Instance.GameBoard[29, 23].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[33, 14].hexTile.GetCityTileTest()
        };

        GridMap.Instance.GameBoard [33, 14].hexTile.GetCityTileTest().cityAttributes.connectedCities = new List <CityTileTest> ()
        {
            GridMap.Instance.GameBoard[29, 16].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[37, 14].hexTile.GetCityTileTest()
            , GridMap.Instance.GameBoard[15, 15].hexTile.GetCityTileTest()
        };

        GridMap.Instance.GameBoard [37, 14].hexTile.GetCityTileTest().cityAttributes.connectedCities = new List <CityTileTest> ()
        {
            GridMap.Instance.GameBoard[33, 14].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[29, 23].hexTile.GetCityTileTest()
            , GridMap.Instance.GameBoard[35, 31].hexTile.GetCityTileTest()
        };

        //Kingdom 4
        GridMap.Instance.GameBoard [21, 23].hexTile.GetCityTileTest().cityAttributes.connectedCities = new List <CityTileTest> ()
        {
            GridMap.Instance.GameBoard[16, 18].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[20, 18].hexTile.GetCityTileTest(),
            GridMap.Instance.GameBoard[21, 30].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[29, 23].hexTile.GetCityTileTest()
        };

        GridMap.Instance.GameBoard [16, 18].hexTile.GetCityTileTest().cityAttributes.connectedCities = new List <CityTileTest> ()
        {
            GridMap.Instance.GameBoard[21, 23].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[15, 15].hexTile.GetCityTileTest()
            , GridMap.Instance.GameBoard[14, 32].hexTile.GetCityTileTest()
        };

        GridMap.Instance.GameBoard [20, 18].hexTile.GetCityTileTest().cityAttributes.connectedCities = new List <CityTileTest> ()
        {
            GridMap.Instance.GameBoard[21, 23].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[15, 15].hexTile.GetCityTileTest()
        };

        GridMap.Instance.GameBoard [15, 15].hexTile.GetCityTileTest().cityAttributes.connectedCities = new List <CityTileTest> ()
        {
            GridMap.Instance.GameBoard[20, 18].hexTile.GetCityTileTest(), GridMap.Instance.GameBoard[16, 18].hexTile.GetCityTileTest()
        };

        for (int i = 0; i < CityGenerator.Instance.cities.Count; i++)
        {
            HexTile currentTile = CityGenerator.Instance.cities [i];
            for (int j = 0; j < currentTile.GetCityTileTest().cityAttributes.connectedCities.Count; j++)
            {
                Tile connectedCity = currentTile.GetCityTileTest().cityAttributes.connectedCities[j].hexTile.tile;
                currentTile.tile.canPass = true;
                connectedCity.canPass    = true;
                List <Tile> roads = GetPath(currentTile.tile, connectedCity, PATHFINDING_MODE.ROAD_CREATION).ToList();
                for (int k = 0; k < roads.Count; k++)
                {
                    roads [k].hexTile.isRoad = true;
                    if (!roads [k].hexTile.isCity && !roads [k].hexTile.isOccupied)
                    {
                        roads [k].hexTile.SetTileColor(Color.gray);
                    }
                }
                currentTile.tile.canPass = false;
                connectedCity.canPass    = false;
            }
        }
    }