private void HandleCharacterCards(MoveCardBehaviour cardBehavior) { if (m_PlayerCard == null) { //"you" card is being shown: this.GetComponent <AudioSource>().PlayOneShot(m_EvilLaugh); } if (m_CardsInDeck.Contains(cardBehavior.gameObject)) { m_Kills++; m_CardsInDeck.Remove(cardBehavior.gameObject); //move remaining card off screen; if (m_CardsInDeck.Count == 0 && m_PlayerCard != null) { m_CardsInDeck.Add(m_PlayerCard); m_PlayerCard = null; } if (m_CardsInDeck.Count == 0 && m_PlayerCard == null && m_CreditsCard != null) { m_CardsInDeck.Add(m_CreditsCard); m_CreditsCard = null; } var winningCard = m_CardsInDeck[0]; //winningCard.GetComponent<MoveCardBehaviour>().RemoveAndLive(); //m_CardsInDeck.Remove(winningCard); //insert the winning card in the end of the list: //m_CardsInDeck.Add(winningCard); StartCoroutine(ExecuteAfterTime(1f, () => { SelectNextCards(); })); } }
private void HandleTutorialCards(MoveCardBehaviour cardBehavior) { if (m_TutorialCards.Contains(cardBehavior.gameObject)) { m_TutorialCards.Remove(cardBehavior.gameObject); if (m_TutorialCards.Count > 0) { m_TutorialCards[0].gameObject.SetActive(true); } else { //Start Game StartCoroutine(ExecuteAfterTime(.5f, () => { SelectNextCards(); })); } } }
internal void CardWasKilled(MoveCardBehaviour cardBehavior) { HandleTutorialCards(cardBehavior); HandleCharacterCards(cardBehavior); }