public GameEngine(CancellableReceiver <GameProgress> channel, int randomSeed, Ability[] playerAbilities) { _random = new Random(randomSeed); var num = playerAbilities.Length; _area = new PlayArea(randomSeed, num); _players = new Player[num]; for (int i = 0; i < _players.Length; i++) { // とりあえずサンプルだし、ID = インデックスにしてしまう。 _players[i] = new Player(i, (byte)i, playerAbilities[i], _area.Players[i]); } Boss = new Boss(); channel.Execute(Execute); }