private void NewMaze() { LoadInventory(); Maze = MazeGrid.CreateMaze(Options); Maze.Player = Instantiate(PlayerPrefab, transform); Maze.Player.Maze = Maze; Maze.Player.Name = "Player"; Maze.Player.Location.Column = Maze.GetStartColumn(); Maze.Player.SetPosition(); int interceptorCount = Options.InterceptorCount + ((ScoreManager.ScoreMultiplier - 1) / 10); for (int i = 0; i < interceptorCount; i++) { NPCMazeExplorer interceptor = Instantiate(EnemyPrefab, transform); interceptor.Maze = Maze; interceptor.Name = $"Interceptor{i + 1}"; interceptor.SetRandomLocation(); interceptor.SetPosition(); Maze.AddInterceptor(interceptor); } for (int i = 0; i < UnityEngine.Random.Range(0, 4); i++) { var itemLocation = Maze.GetRandomLocation(); CombinableItem item = Instantiate(ItemPrefab, new Vector3(itemLocation.Column, -itemLocation.Row), Quaternion.identity, transform); item.ItemDef = Inventory.GetRandomItemDef(); } RenderWalls(); Maze.StartMovement(); }
public void AddInterceptor(NPCMazeExplorer interceptor) { interceptor.Moved += Interceptor_Moved; Interceptors.Add(interceptor); }