// Public interface
        public IObservedClonable Clone( EGameStateClonePermission permission )
        {
            CCardCollection card_collection = new CCardCollection();

            m_Cards.SimpleClone( card_collection.m_Cards );

            return card_collection;
        }
        // Public interface
        public IObservedClonable Clone( EGameStateClonePermission permission )
        {
            CDiscardPile discard_pile = new CDiscardPile();

            Cards.SimpleClone( discard_pile.m_Cards );

            return discard_pile;
        }
        // Public interface
        public IObservedClonable Clone( EGameStateClonePermission permission )
        {
            CPlayerHand player_hand = new CPlayerHand();
            player_hand.m_Count = m_Count;

            if ( permission == EGameStateClonePermission.Full )
            {
                Cards.SimpleClone( player_hand.m_Cards );
            }

            return player_hand;
        }
Пример #4
0
        // Public interface
        public IObservedClonable Clone( EGameStateClonePermission permission )
        {
            CDeck clone = new CDeck( EDeckPopulateDirective.None );

            if ( permission == EGameStateClonePermission.Full )
            {
                m_Cards.SimpleClone( clone.m_Cards );
                clone.m_Count = (uint) clone.m_Cards.Count;
            }
            else
            {
                clone.m_Count = m_Count;
            }

            return clone;
        }