Beispiel #1
0
    // Update is called once per frame
    void Update()
    {
        currentValue = CardInteraction.currentSide;

        if (currentValue != previousValue)
        {
            string [] decisionsText = cardClass.GetDecisionsText();
            animation.clip = animation.GetClip("showDecision");
            if (currentValue == Card.Side.none)
            {
                animation.clip = animation.GetClip("hideDecision");
            }
            else if (currentValue == Card.Side.left)
            {
                decisionText.SetText((cardClass.GetDecisionsText())[0]);
            }
            else
            {
                decisionText.SetText((cardClass.GetDecisionsText())[1]);
            }

            animation.Play();
        }

        previousValue = currentValue;
    }
Beispiel #2
0
 public void SetCardSide(Card.Side side)
 {
     if (side == Card.Side.Back)
     {
         FrontObj.SetActive(false);
         BackObj.SetActive(true);
         TitleObj.SetActive(false);
         TitleBackObj.SetActive(false);
         LogoObj.SetActive(false);
         DescBackObj.SetActive(false);
         DescObj.SetActive(false);
     }
     else if (side == Card.Side.Front)
     {
         FrontObj.SetActive(true);
         BackObj.SetActive(false);
         TitleObj.SetActive(true);
         TitleBackObj.SetActive(true);
         LogoObj.SetActive(true);
         DescBackObj.SetActive(true);
         DescObj.SetActive(true);
     }
 }
    // Update is called once per frame
    void Update()
    {
        if (mouseOver && Input.GetMouseButtonDown(0))
        {
            movingCard           = true;
            initialMousePosition = Input.mousePosition;
        }
        else if (Input.GetMouseButtonUp(0))
        {
            movingCard = false;

            if (currentSide == Card.Side.left || currentSide == Card.Side.right)
            {
                if (currentSide == Card.Side.left)
                {
                    animation.clip = animation.GetClip("selectedLeft");
                }
                else
                {
                    animation.clip = animation.GetClip("selectedRight");
                }

                animation.Play();

                // Update player stats based on current side
                cardClass.UpdatePlayerStats(currentSide);

                cardBehind.FlipCard();
                currentSide = Card.Side.none;
            }
        }


        if (Input.GetMouseButton(0) && movingCard)
        {
            float deltaX = (Input.mousePosition - initialMousePosition).x;
            deltaX = Mathf.Clamp(deltaX, -maxXOffset, maxXOffset);
            Vector3 targetEulerAngles = new Vector3(0, 0, maxAngle * deltaX / maxXOffset * (-1));
            //Debug.Log (deltaX);
            Quaternion targetRotation = Quaternion.Euler(targetEulerAngles);
            transform.rotation = Quaternion.Slerp(transform.rotation, targetRotation, Time.deltaTime * rotationSpeed);


            if (deltaX <= -maxXOffset / 2f)
            {
                currentSide = Card.Side.left;
            }
            else if (deltaX >= maxXOffset / 2f)
            {
                currentSide = Card.Side.right;
            }
            else
            {
                currentSide = Card.Side.none;
            }
        }
        else if (!movingCard && currentSide == Card.Side.none)
        {
            transform.rotation = Quaternion.Slerp(transform.rotation, Quaternion.Euler(Vector3.zero), Time.deltaTime * rotationSpeed);
        }
    }
 public void UpdateStats(Card.Side side)
 {
 }