예제 #1
0
    public static Color GetCardColorBright(ECardColor color)
    {
        Color brightColor = Color.black;

        switch (color)
        {
        case ECardColor.Red:
        {
            brightColor = RedBright;
            break;
        }

        case ECardColor.Blue:
        {
            brightColor = BlueBright;
            break;
        }

        case ECardColor.Green:
        {
            brightColor = GreenBright;
            break;
        }

        default: break;
        }

        return(brightColor);
    }
예제 #2
0
    public static Color GetCardColorDark(ECardColor color)
    {
        Color darkColor = Color.black;

        switch (color)
        {
        case ECardColor.Red:
        {
            darkColor = RedDark;
            break;
        }

        case ECardColor.Blue:
        {
            darkColor = BlueDark;
            break;
        }

        case ECardColor.Green:
        {
            darkColor = GreenDark;
            break;
        }

        default: break;
        }

        return(darkColor);
    }
        private EGameActionFailure Is_Card_Discardable( ECardColor color, ECardValue value )
        {
            CPlayerHand local_hand = Match.GameState.Get_Player_Hand( CClientLogicalThread.Instance.ConnectedID );
            if ( !local_hand.Contains_Card( color, value ) )
            {
                return EGameActionFailure.Card_Is_Not_In_Your_Hand;
            }

            return EGameActionFailure.None;
        }
        private EGameActionFailure Are_Cards_Passable( ECardColor color1, ECardValue value1, ECardColor color2, ECardValue value2 )
        {
            CPlayerHand local_hand = Match.GameState.Get_Player_Hand( CClientLogicalThread.Instance.ConnectedID );
            if ( !local_hand.Contains_Card( color1, value1 ) || !local_hand.Contains_Card( color2, value2 ) )
            {
                return EGameActionFailure.Card_Is_Not_In_Your_Hand;
            }

            if ( local_hand.Count < 8 )
            {
                return EGameActionFailure.Not_Enough_Cards_In_Hand_To_Pass;
            }

            return EGameActionFailure.None;
        }
 public CPlayerHandDelta( EPersistenceID player_id, ECardDelta delta_type, ECardColor color, ECardValue card_value )
 {
     PlayerID = player_id;
     DeltaType = delta_type;
     Color = color;
     CardValue = card_value;
 }
        // Private Interface
        private void Remove_Card( ECardColor color, ECardValue card_value )
        {
            if ( color != ECardColor.Invalid && card_value != ECardValue.Invalid )
            {
                m_Cards.RemoveAt( m_Cards.FindIndex( n => n.Color == color && n.Value == card_value ) );
            }

            m_Count--;
        }
 public bool Contains_Card( ECardColor color, ECardValue value )
 {
     return Cards.FirstOrDefault( card => card.Color == color && card.Value == value ) != null;
 }
		public CCardCollection Get_Card_Collection( EGameSide side, ECardColor color )
		{
			return ( m_CardCollections[ side ] )[ color ];
		}
		public CDiscardPile Get_Discard_Pile( ECardColor color )
		{
			return m_DiscardPiles[ color ];
		}
 public CCardCollectionDelta( EGameSide side, ECardColor color, ECardValue value )
 {
     Side = side;
     Color = color;
     Value = value;
 }
 // Construction
 public CDrawFromDiscardGameAction( ECardColor color )
 {
     Color = color;
 }
        private EGameActionFailure Is_Card_Playable( ECardColor color, ECardValue value )
        {
            CPlayerHand local_hand = Match.GameState.Get_Player_Hand( CClientLogicalThread.Instance.ConnectedID );
            if ( !local_hand.Contains_Card( color, value ) )
            {
                return EGameActionFailure.Card_Is_Not_In_Your_Hand;
            }

            CCardCollection local_collection = Match.GameState.Get_Card_Collection( Get_Local_Side(), color );
            int local_collection_top_value = local_collection.Get_Top_Card_Score_Value();
            if ( CCardUtils.Get_Card_Score_Value( value ) <= local_collection_top_value && local_collection_top_value != 0 )
            {
                return EGameActionFailure.A_Higher_Card_Already_Exists;
            }

            return EGameActionFailure.None;
        }
        private EGameActionFailure Is_Discard_Pile_Drawable( ECardColor color )
        {
            CDiscardPile pile = Match.GameState.Get_Discard_Pile( color );
            if ( pile.Count == 0 )
            {
                return EGameActionFailure.Discard_Pile_Is_Empty;
            }

            return EGameActionFailure.None;
        }
예제 #14
0
        private void Add_Color_Set( ECardColor color, EDeckPopulateDirective populate_directive )
        {
            m_Cards.Add( new CCard( color, ECardValue.Multiplier1 ) );
            m_Cards.Add( new CCard( color, ECardValue.Multiplier2 ) );
            m_Cards.Add( new CCard( color, ECardValue.Multiplier3 ) );

            m_Cards.Add( new CCard( color, ECardValue.Two ) );
            m_Cards.Add( new CCard( color, ECardValue.Three ) );
            m_Cards.Add( new CCard( color, ECardValue.Four ) );
            m_Cards.Add( new CCard( color, ECardValue.Five ) );
            m_Cards.Add( new CCard( color, ECardValue.Six ) );
            m_Cards.Add( new CCard( color, ECardValue.Seven ) );
            m_Cards.Add( new CCard( color, ECardValue.Eight ) );
            m_Cards.Add( new CCard( color, ECardValue.Nine ) );
            m_Cards.Add( new CCard( color, ECardValue.Ten ) );

            if ( populate_directive == EDeckPopulateDirective.Four_Player )
            {
                m_Cards.Add( new CCard( color, ECardValue.Two_v2 ) );
                m_Cards.Add( new CCard( color, ECardValue.Three_v2 ) );
                m_Cards.Add( new CCard( color, ECardValue.Four_v2 ) );
            }
        }
 public CDiscardPileDelta( ECardDelta delta_type, ECardColor color, ECardValue value )
 {
     DeltaType = delta_type;
     Color = color;
     Value = value;
 }