Example #1
0
 private CardModel CopyCard(CardModel src)
 {
     var dst = new CardModel();
     src.CopyProperties(dst);
     dst.gameObject = null;  //don't need the original game object here
     return dst;
 }
Example #2
0
        internal CardView showCard(CardModel cardToShow, Vector3 positionOffset, int spellDamage)
        {
            var selfPos = transform.position;
            //copy over props from hovered to hover
            var hoverCardModel = new CardModel();
            cardToShow.CopyProperties(hoverCardModel);

            var hoverCardView = CreateHoverCard(hoverCardModel);

            var hoverGo = hoverCardView.card.gameObject;

            hoverCardView.card.gameObject = hoverGo;
            hoverCardView.staticSpellDamage = spellDamage;
            hoverGo.name = "Hover Card for " + hoverCardView.card.id;

            hoverCardView.UpdateText(spellDamage);
            hoverCardView.UpdateBuffsDisplay();

            //now for the fun positioning

            Vector2 viewportPos = Camera.main.WorldToViewportPoint(selfPos);
            Vector2 cardCanvasPos = cardCanvasHelper.ViewportToWorld(viewportPos);
            var hWidth = hoverCardView.rectTransform.sizeDelta;
            var displayPosition = new Vector3(cardCanvasPos.x + hWidth.x, cardCanvasPos.y + (hWidth.y * 0.75f), -5f);
            displayPosition = displayPosition + positionOffset;

            hoverCardView.rectTransform.SetAnchor(Vector2.zero);
            hoverCardView.rectTransform.anchoredPosition3D = displayPosition;

            return hoverCardView;
        }
Example #3
0
        internal void showCardFromHand(CardModel cardToShow, Vector3 position, int spellDamage)
        {
            //copy over props from hovered to hover
            cardToShow.CopyProperties(hoverCardView.card);
            //but reset some key things
            hoverCardView.name = hoverName;
            hoverCardView.card.gameObject = hoverCardView.gameObject;

            hoverCardView.rectTransform.SetAnchor(cardAnchor);
            var displayPosition = new Vector3(position.x, 125f, zPos - 11f);
            showCard(displayPosition, spellDamage);
        }