Esempio n. 1
0
        public void RoadManagerTestsCheckIfNeighbourIsRoadInDictionaryCheckIfFourWayFitsR0()
        {
            var result = RoadManager.CheckIf4WaysFits((int)Direction.Up | (int)Direction.Left | (int)Direction.Right | (int)Direction.Down, null, roadSO);

            Assert.AreEqual(road4Way, result.RoadPrefab);
            Assert.AreEqual(RotationValue.R0, result.RoadPrefabRotation);
        }
Esempio n. 2
0
    public static RoadStructureHelper GetCorrectRoadPrefab(Vector3 gridPosition, StructureBaseSO structureData, Dictionary <Vector3Int, GameObject> structuresToBeModified, GridStructure grid)
    {
        var neighboursStatus             = RoadManager.GetRoadNeighboursStatus(gridPosition, grid, structuresToBeModified);
        RoadStructureHelper roadToReturn = null;

        roadToReturn = RoadManager.CheckIfStraightRoadFits(neighboursStatus, roadToReturn, structureData);
        if (roadToReturn != null)
        {
            return(roadToReturn);
        }
        roadToReturn = RoadManager.CheckIfCornerFits(neighboursStatus, roadToReturn, structureData);
        if (roadToReturn != null)
        {
            return(roadToReturn);
        }
        roadToReturn = RoadManager.CheckIf3WayFits(neighboursStatus, roadToReturn, structureData);
        if (roadToReturn != null)
        {
            return(roadToReturn);
        }
        roadToReturn = RoadManager.CheckIf4WaysFits(neighboursStatus, roadToReturn, structureData);
        return(roadToReturn);
    }