/// <summary> /// Initialize the game. /// </summary> public void init() { this.turn = (random.Next() + (rev ? 1 : 0)) % PLAYER_NUM; this.lastTrashed = null; this.lastTrashedField = null; for (int i = 0; i < FIELD_NUM; i++) { this.fields[i].Init(this.talon.Trash); } this.players[rev ? 1 : 0].Init(this.talon.Trash); this.players[rev ? 0 : 1].Init(this.talon.Trash); talon.Init(); for (int i = 0; i < INIT_CARD; i++) { this.talon.Deck.Draw(this.players[rev ? 1 : 0].Hand); this.talon.Deck.Draw(this.players[rev ? 0 : 1].Hand); } this.talon.Deck.Draw(this.players[this.turn].Hand); this.talon.Deck.Draw(this.players[this.turn].Hand); this.status.Current = GameStatus.Status.First; }
/// <summary> /// Shuffle the card. /// </summary> public void Shuffle(GameRandom random) { this.list = this.list.OrderBy(i => random.Next()).ToList(); }
/// <summary> /// Get random color. /// </summary> /// <returns>Color instance.</returns> public static Color GetRandom(GameRandom random) { return(Color.List[random.Next() % Color.List.Length]); }