예제 #1
0
 public void RepositionDisplayingCards(CardAnimator cardAnimator)
 {
     NumberOfReleasedCards = 0;
     foreach (Card card in ReleasedCards)
     {
         NumberOfReleasedCards++;
         cardAnimator.AddCardAnimation(card, position);
     }
 }
예제 #2
0
 public void RepositionDisplayingCards(CardAnimator cardAnimator)
 {
     Debug.Log("uu");
     NumberOfDisplayingCards = 0;
     foreach (Card card in DisplayingCards)
     {
         NumberOfDisplayingCards++;
         cardAnimator.AddCardAnimation(card, NextCardPosition());
     }
 }
예제 #3
0
        public void SendDisplayingCardToPlayer(Player receivingPlayer, CardAnimator cardAnimator, List <byte> cardValues, bool isLocalPlayer)
        {
            /*int playerDisplayingCardsCount = DisplayingCards.Count;
             *
             * if (playerDisplayingCardsCount < cardValues.Count)
             * {
             *  Debug.LogError("Not enough displaying cards");
             *  return;
             * }
             *
             * for (int index = 0; index < cardValues.Count; index++)
             * {
             *
             *  Card card = null;
             *  byte cardValue = cardValues[index];
             *
             *  if (isLocalPlayer)
             *  {
             *      foreach (Card c in DisplayingCards)
             *      {
             *          Ranks r = Card.GetRank(cardValue);
             *          Debug.Log(r);
             *          if (c.Rank == Card.GetRank(cardValue) && c.Suit == Card.GetSuit(cardValue))
             *          {
             *              card = c;
             *              break;
             *          }
             *      }
             *  }
             *  else
             *  {
             *      card = DisplayingCards[playerDisplayingCardsCount - 1 - index];
             *      card.SetCardValue(cardValue);
             *      card.SetFaceUp(true);
             *  }
             *
             *  if(card != null)
             *  {
             *      DisplayingCards.Remove(card);
             *      receivingPlayer.ReceiveDisplayingCard(card);
             *      cardAnimator.AddCardAnimation(card, receivingPlayer.NextCardPosition());
             *      NumberOfDisplayingCards--;
             *  }
             *  else
             *  {
             *      Debug.LogError("Unable to find displaying card.");
             *  }
             * }
             */

            RepositionDisplayingCards(cardAnimator);
        }
예제 #4
0
파일: Game.cs 프로젝트: athulya16/rummy
        private void Awake()
        {
            localPlayer              = new Player();
            localPlayer.PlayerId     = "offline-player";
            localPlayer.PlayerName   = "Player";
            localPlayer.Position     = PlayerPositions[0].position;
            localPlayer.BookPosition = BookPositions[0].position;

            remotePlayer              = new Player();
            remotePlayer.PlayerId     = "offline-bot";
            remotePlayer.PlayerName   = "Bot";
            remotePlayer.Position     = PlayerPositions[1].position;
            remotePlayer.BookPosition = BookPositions[1].position;
            remotePlayer.IsAI         = true;

            releasedDeck          = new ReleasedDeck();
            releasedDeck.position = releasedDeckPos.position;

            cardAnimator = FindObjectOfType <CardAnimator>();
        }
예제 #5
0
        public void ReceiveBook(Ranks rank, CardAnimator cardAnimator)
        {
            Vector2     targetPosition          = NextBookPosition();
            List <Card> displayingCardsToRemove = new List <Card>();

            foreach (Card card in DisplayingCards)
            {
                if (card.Rank == rank)
                {
                    card.SetFaceUp(true);
                    float randomRotation = UnityEngine.Random.Range(-1 * Constants.BOOK_MAX_RANDOM_ROTATION, Constants.BOOK_MAX_RANDOM_ROTATION);
                    cardAnimator.AddCardAnimation(card, targetPosition, Quaternion.Euler(Vector3.forward * randomRotation));
                    displayingCardsToRemove.Add(card);
                }
            }

            DisplayingCards.RemoveAll(card => displayingCardsToRemove.Contains(card));
            RepositionDisplayingCards(cardAnimator);
            NumberOfBooks++;
        }