Esempio n. 1
0
        private GhostAnalysisTree()
        {
            _validWords = Resources.gosthGameDict.Split(new char[] { ' ', '\r', '\n' }, StringSplitOptions.RemoveEmptyEntries);
            _validWords = RemoveDerivedWords(_validWords);

            var initialStateAnalysis = new GhostGameStateAnalysis(new GameState(0, "", ""));

            _tree = new TreeNode <GhostGameStateAnalysis>(initialStateAnalysis);

            foreach (var word in _validWords)
            {
                AddWordToTree(word, _tree);
            }

            AnalyseTree(_tree);
        }
Esempio n. 2
0
        public GhostGameStateAnalysis Copy()
        {
            var newList = new List <string>(RecommendedWordList);

            var result = new GhostGameStateAnalysis(State)
            {
                State                = this.State,
                Winner               = Winner,
                ExpectedWinner       = ExpectedWinner,
                ExpectedMaxTurns     = ExpectedMaxTurns,
                Explanation          = Explanation,
                Help                 = Help,
                LongestPossibleWord  = LongestPossibleWord,
                ShortestPossibleWord = ShortestPossibleWord,
                RecommendedWordList  = newList
            };

            return(result);
        }
Esempio n. 3
0
 public void Reset()
 {
     State   = CreateState("");
     _result = new GhostGameStateAnalysis(State);
 }