コード例 #1
0
        /// required overrides
        ///

        public override bool Equals(object obj)
        {
            if (obj == null || GetType() != obj.GetType())
            {
                return(false);
            }

            BasicGamePattern temp = ( BasicGamePattern )obj;

            return(this == temp);
        }
コード例 #2
0
        public BasicGamePattern GetPattern(BasicGamePattern basicGamePattern)
        {
            for (int i = 0; i < Patterns.Count; i++)
            {
                if (basicGamePattern == ( BasicGamePattern )Patterns[i])
                {
                    return(( BasicGamePattern )Patterns[i]);
                }
            }

            return(null);
        }
コード例 #3
0
        public bool IsIn(BasicGamePattern basicGamePattern)
        {
            for (int i = 0; i < arrayPatterns.Count; i++)
            {
                if ((( BasicGamePattern )arrayPatterns[i]) == basicGamePattern)
                {
                    return(true);
                }
            }

            return(false);
        }
コード例 #4
0
        public void UpdatePattern(BasicGamePattern pattern)
        {
            NumberOfTimesSeen++;

            if (pattern.IsLosingPattern == true)
            {
                NumberOfTimesSeenInLosingGame++;
            }
            if (pattern.IsWinningPattern == true)
            {
                NumberOfTimesSeenInWinningGame++;
            }
        }
コード例 #5
0
        public BasicGamePattern(BasicGamePattern pattern) : this()
        {
            NumberOfTimesSeen = pattern.NumberOfTimesSeen;
            NumberOfTimesSeenInWinningGame = pattern.NumberOfTimesSeenInWinningGame;
            NumberOfTimesSeenInLosingGame  = pattern.NumberOfTimesSeenInLosingGame;
            IsWinningPattern   = pattern.IsWinningPattern;
            IsLosingPattern    = pattern.IsLosingPattern;
            Weighting          = pattern.Weighting;
            SetResponsePresent = pattern.ResponsePresent;
            Response           = pattern.Response;
            PatternID          = pattern.PatternID;
            IsEndingPattern    = pattern.IsEndingPattern;

            for (int i = 0; i < pattern.GamePieces.Count; i++)
            {
                arrayGamePieces.Add(new BasicGamePiece(( BasicGamePiece )pattern.GamePieces[i]));
            }
        }
コード例 #6
0
        public virtual void Load(XmlReader xmlReader)
        {
            bool bBreak = false;

            for ( ;;)
            {
                xmlReader.Read();
                if (xmlReader.EOF == true)
                {
                    return;
                }
                switch (xmlReader.NodeType)
                {
                case XmlNodeType.Element:
                {
                    switch (xmlReader.Name)
                    {
                    case "BasicGamePatternSet":
                    {
                        BasicGamePattern temp = new BasicGamePattern();
                        temp.Load(xmlReader);
                        Patterns.Add(temp);
                        break;
                    }
                    }
                } break;

                case XmlNodeType.EndElement:
                {
                    switch (xmlReader.Name)
                    {
                    case "BasicGamePatternCollection": bBreak = true; break;
                    }
                } break;
                }

                if (bBreak == true)
                {
                    break;
                }
            }
        }
コード例 #7
0
        public void UpdatePattern(BasicGamePattern basicGamePattern)
        {
            /// nothing to update here
            ///
            BasicGamePatternCollection collection = GetAllPatternsWithIdentifer(basicGamePattern.GetStartsWith());

            if (collection.Count == 0)
            {
                System.Diagnostics.Debug.Assert(collection.Count != 0, "Error updating the pattern", "Error the pattern has been identified as " + basicGamePattern.GetStartsWith() + " but GetAllPatternsWithIdentifier returns a count of 0 ");
                return;
            }

            for (int i = 0; i < collection.Count; i++)
            {
                if ((( BasicGamePattern )collection.Patterns[i]) == basicGamePattern)
                {
                    (( BasicGamePattern )collection.Patterns[i]).UpdatePattern(basicGamePattern);
                    return;
                }
            }
        }
コード例 #8
0
        ///
        /// Manipulate the pattern sets
        ///

        public void AddPattern(BasicGamePattern basicGamePattern)
        {
            /// add a copy of the pattern using the copy constructor
            arrayPatterns.Add(new BasicGamePattern(basicGamePattern));
        }