public static HashSet <Vector2Int> CreateMap(LevelCreationData levelData, List <Vector2Int> forbbidenVectors)
    {
        List <DrunkWalker>   drunkWalkers     = new List <DrunkWalker>();   //list with all drunkenWalker objects
        HashSet <Vector2Int> positionsVisited = new HashSet <Vector2Int>(); //list with all positions the drunkenwalker walked

        for (int i = 0; i < levelData.numberOfWalkers; i++)                 //create the drunken walkers
        {
            drunkWalkers.Add(new DrunkWalker(Vector2Int.zero));
        }

        for (int i = 0; i < levelData.numberOfIterations; i++)  //let the walkers walk
        {
            foreach (DrunkWalker dr in drunkWalkers)
            {
                Vector2Int newPosition = dr.Move(directionMovemntMapping, forbbidenVectors); //create
                positionsVisited.Add(newPosition);                                           //add position to the position list
            }
        }
        return(positionsVisited);
    }
    public static HashSet<Vector2Int> CreateMap(LevelCreationData levelData)
    {
        List<DrunkWalker> drunkWalkers = new List<DrunkWalker>();
        HashSet<Vector2Int> positionsVisited = new HashSet<Vector2Int>();

        for (int i = 0; i < levelData._numberOfWalkers; i++)
        {
            drunkWalkers.Add(new DrunkWalker(Vector2Int.zero));
        }

        for (int i = 0; i < levelData._numberOfIterations; i++)
        {
            foreach (DrunkWalker drunkWalker in drunkWalkers)
            {
                Vector2Int newPosition = drunkWalker.Move(_directionMovementMapping);
                positionsVisited.Add(newPosition);
            }
        }

        return positionsVisited;
    }
Esempio n. 3
0
    private List <Vector2Int> treePositions = new List <Vector2Int>();      //allTopTiles



    public void Awake()
    {
        player            = GameObject.FindGameObjectWithTag("Player");
        levelCreationData = LevelDataCreater.CreateLevelData();
    }