public void PrepareNewGame(List <UnityPlayer> players, int seed) { var mapGenerator = new GameMapGenerator <UnityPlayer>(players); _gameMap = mapGenerator.GenerateGameMap(seed); _players = players; }
public void PrepareNewGame(List <UnityPlayer> players, int seed) { _players = players.Cast <Player>().ToList(); var mapGenerator = new GameMapGenerator(_players); _gameMap = mapGenerator.GenerateGameMap(seed); }
public void FixedUpdate() { if (PhotonNetwork.IsMasterClient != true) { return; } if (foundPlayer == false) { var plr = FindObjectOfType <PlayerCube>(); if (plr != null) { map = FindObjectOfType <GameMapGenerator>(); player = FindObjectOfType <PlayerCube>(); playerT = player.transform; photonView.RPC("NextWave", RpcTarget.AllBuffered, "STARTING ENEMY WAVES!"); foundPlayer = true; } } if (remainingEnemiesToSpawn > 0 && Time.time > nextSpawnTime) { remainingEnemiesToSpawn--; nextSpawnTime = Time.time + currentWave.timeBetweenSpawns; if (enemyObjects.Count > 0) { GameObject enemyToSpawn = enemyObjects.First(); int enemyObjectIndex = enemyObjects.IndexOf(enemyToSpawn); StartCoroutine(SpawnEnemy(enemyToSpawn)); enemyObjects.RemoveAt(enemyObjectIndex); } } }
public void Start() { if (PhotonNetwork.IsMasterClient != true) { return; } if (FindObjectOfType <PlayerCube>() != null) { map = FindObjectOfType <GameMapGenerator>(); player = FindObjectOfType <PlayerCube>(); playerT = player.transform; //enemyp = enemy.gameObject; //greenEnemyp = greenEnemy.gameObject; //yellowEnemyp = yellowEnemy.gameObject; //orangeEnemyp = orangeEnemy.gameObject; //blackEnemyp = blackEnemy.gameObject; //if (gameStarted == false) //{ photonView.RPC("NextWave", RpcTarget.AllBuffered, "STARTING ENEMY WAVES!"); // gameStarted = true; //} } }
/// <summary> /// Prepares a new game. This will generate a new game map with the provided seed, and register all of the players on the game map /// </summary> /// <param name="players">The players to register</param> /// <param name="seed">The seed for this map</param> /// <exception cref="MapUnsuitableException">Will throw an exception if the seed produces an unsuitable map</exception> public void PrepareGame(List <Player> players, int seed) { var seedGenerator = new Random(seed); var randomSeed = seedGenerator.Next(); var generationOk = false; while (!generationOk) { Logger.LogInfo("Trying seed " + randomSeed + "..."); try { var mapGenerator = new GameMapGenerator <Player>(players); _gameMap = mapGenerator.GenerateGameMap(randomSeed); generationOk = true; } catch (MapUnsuitableException ex) { Logger.LogException("Map not suitable with seed, trying a new one.", ex); randomSeed = seedGenerator.Next(); } } _players = players; _currentRound = 0; foreach (var player in _players) { player.CommandListener += player_CommandListener; } Logger.LogInfo("\tOK!"); using (var enumerator = _gameMap.GetEnumerator()) { while (enumerator.MoveNext()) { if (enumerator.Current == null) { continue; } var block = enumerator.Current.Entity as DestructibleWallEntity; if (block != null) { _playerKillPoints += Settings.Default.PointsWall; } } } //Players should only get slightly more points vs points obtained from destroying walls _playerKillPoints /= players.Count; }
public void Start() { map = GameMapGenerator.instance; eSpawner = EnemySpawner.instance; }
void Awake() { instance = this; }
private void Start() { grid = GameObject.Find("MapGenerator").GetComponent <GameMapGenerator>(); }