private static void StartGame() { BoardSettings boardSettings = new BoardSettings() { Columns = 7, Rows = 6, WinningCount = 4 }; Connect4 c4 = new Connect4(boardSettings, new Message()); c4.Player1 = new Human(); c4.Player2 = new Computer(2, boardSettings); c4.PlayGame(); System.Console.Write("Would you like another game? (Y or N)"); char c = System.Console.ReadKey().KeyChar; if (c.ToString().ToUpper() == "Y") StartGame(); else Environment.Exit(0); }
/// <summary> /// Creates a new board with the given settings and initial collection of subscribers /// </summary> /// <param name="settings">The difficulty level settings of the board</param> /// <param name="subscribers">The initial list of subscribers of the board</param> public Board(BoardSettings settings, List<IBoardObserver> subscribers) { this.InitializeBoard(settings.Rows, settings.Cols, settings.NumberOfBombs); this.Subscribers = subscribers; }
public void Setup() { boardSettings = new BoardSettings() { Columns = 7, Rows = 6, WinningCount = 4}; c4 = new Connect4(boardSettings, new Message()); c4.Player1 = new Human(); c4.Player2 = new Computer(2, boardSettings); }
public Computer(int playerNumber, BoardSettings boardSettings) { _BoardSettings = boardSettings; number = playerNumber; }
/// <summary> /// Sends the digest to users. /// </summary> /// <param name="usersWithDigest">The users with digest.</param> /// <param name="boardSettings">The board settings.</param> private void SendDigestToUsers(IEnumerable <User> usersWithDigest, BoardSettings boardSettings) { var usersSendCount = 0; var currentContext = HttpContext.Current; usersWithDigest.AsParallel().ForAll( user => { HttpContext.Current = currentContext; try { var digestHtml = this.Get <IDigest>().GetDigestHtml(user.ID, boardSettings); if (digestHtml.IsNotSet()) { return; } if (user.ProviderUserKey == null) { return; } var membershipUser = UserMembershipHelper.GetUser(user.Name); if (membershipUser == null || membershipUser.Email.IsNotSet()) { return; } var subject = Regex.Match(digestHtml, "<title>(.*?)</title>", RegexOptions.Singleline) .Groups[1].Value.Trim(); // send the digest... this.Get <IDigest>().SendDigest( subject.Trim(), digestHtml, boardSettings.Name, boardSettings.ForumEmail, membershipUser.Email, user.DisplayName); usersSendCount++; } catch (Exception e) { this.Get <ILogger>().Error(e, $"Error In Creating Digest for User {user.ID}"); } finally { HttpContext.Current = null; } }); this.Get <ILogger>().Log( $"Digest send to {usersSendCount} user(s)", EventLogTypes.Information, null, "Digest Send Task"); }
/// <summary> /// Constructs a new instance. /// </summary> public Plugin() : base("Procedural Midi VST", new VstProductInfo("Procedural Midi", "http://proceduralmidi.codeplex.com", 1000), VstPluginCategory.Generator, VstPluginCapabilities.NoSoundInStop | VstPluginCapabilities.ReceiveTimeInfo, 0, 0x77073233) { BoardSettings = BoardSettings.GetDefaultBoard(); }
/// <summary> /// Initializes a new instance of the <see cref="Avatars"/> class. /// </summary> /// <param name="boardSettings"> /// The board settings. /// </param> public Avatars(BoardSettings boardSettings) { this._yafBoardSettings = boardSettings; }
public GridProcessor(BoardSettings boardSettings, IGridModel gridModel) { _boardSettings = boardSettings; GridModel = gridModel; GridModel.Grid = new Transform[_boardSettings.boardRightBoundary + 1, _boardSettings.boardTopBoundary + 1]; }