private void AutoMovePiece() { var ai = new AiTree(pieceBoard.Board, CurrentColor); var record = ai.GetBestRecord(2); lock (autoMoveLock) { autoMoveRecord = record; } }
public void RebuildTreeView(AiTree tree) { _tree = tree; if (_tree == null) { return; } if (_nodeDrawers != null) { foreach (NodeDrawer drawer in _nodeDrawers) { drawer.Node.OnDebugResult -= DebugResult; } } _nodeDrawers = new List <NodeDrawer>(); for (int i = 0; i < _tree.Nodes.Count; ++i) { _tree.Nodes[i].OnDebugResult += DebugResult; _nodeDrawers.Add(new NodeDrawer(_tree.Nodes[i], _tree.Root == _tree.Nodes[i])); } }
public TreeDrawer(AiTree tree) { NodeDrawer.OnLeftClicked += NodeLeftClicked; NodeDrawer.OnRightClicked += ShowContextMenu; RebuildTreeView(tree); }