/// <summary> /// Khởi tạo một thể hiện mới của class BanCo /// </summary> public BanCo() { BoardSize = Settings.Default.BOARD_SIZE; ActivePlayer = OCo.CellValues.Player1; Won = OCo.CellValues.None; CurrentSocket = new SocketModel(); CurrentSocket.OnStart += CurrentSocket_OnStart; CurrentSocket.OnPlayAt += CurrentSocket_OnPlayAt; AI = new AI(); bw = new BackgroundWorkerModel(this, AI, CurrentSocket); }
/// <summary> /// Khởi tạo một thể hiện mới cho class BackgroundWorker /// </summary> public BackgroundWorkerModel(BanCo banCo, AI aI, SocketModel socket) { BanCo = banCo; AI = aI; Socket = socket; if (backgroundWorker == null) { backgroundWorker = new BackgroundWorker(); backgroundWorker.WorkerSupportsCancellation = true; backgroundWorker.DoWork += new DoWorkEventHandler(backgroundWorker_DoWork); backgroundWorker.RunWorkerCompleted += new RunWorkerCompletedEventHandler(backgroundWorker_RunWorkerCompleted); } }