// 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; }
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) { }