Ejemplo n.º 1
0
        public NavigationService(TilemapNavData navData)
        {
            NavRegionGenerationFunctions.InitialiseNavRegionsFromData(navData);

            _navigationTable = navData.NavigationTable;
            _navigationTable.Initialise();
        }
Ejemplo n.º 2
0
        public void InitialiseNavRegionsFromData_LoadsExpectedNeighbourRefsForRawData()
        {
            var nodes = new List <NavNode> {
                new NavNode {
                    Neighbours = new[] { 1, 2 }
                }, new NavNode {
                    Neighbours = new[] { 0, 2 }
                }, new NavNode {
                    Neighbours = new[] { 0, 1 }
                }
            };

            var nodeListingNeighbours = new List <NavNode> {
                new NavNode {
                    Neighbours = new[] { 0, 2 }
                }
            };

            var regions = new List <NavRegion> {
                new NavRegion(nodeListingNeighbours.ToArray())
            };

            var data = ScriptableObject.CreateInstance <TilemapNavData>();

            data.NodeData        = nodes;
            data.NavigationTable = new NavTable(regions);

            NavRegionGenerationFunctions.InitialiseNavRegionsFromData(data);

            foreach (var node in nodes)
            {
                Assert.AreEqual(2, node.NeighbourRefs.Length);
            }
        }