public void MoveCard(Vector3 newPosition, bool isEndFlipped, float playTime, bool isSloppy) { float _zRotEndValue = 0; if (isSloppy) { RandomTransform _addSlop = GetRandomTransform(40.0f, 0.4f); newPosition = newPosition + _addSlop.position; _zRotEndValue = _addSlop.rotation.z; } Animation _anim = GetComponent <Animation>(); AnimationCurve _xCurve = AnimationCurve.Linear(0, transform.localPosition.x, //start time, startValue, playTime, newPosition.x); //endTime, endValue AnimationCurve _yCurve = AnimationCurve.Linear(0, transform.localPosition.y, playTime, newPosition.y); AnimationCurve _zCurve = AnimationCurve.Linear(0, newPosition.z, playTime, newPosition.z); AnimationCurve _xRot = AnimationCurve.Linear(0, transform.localRotation.x, playTime, 0); AnimationCurve _yRot; if (IsFlipped == isEndFlipped) { _yRot = AnimationCurve.Linear(0, transform.localRotation.y, playTime, 0); } else { _yRot = AnimationCurve.Linear(0, 3.14f, playTime, 0.0f); Invoke("Flip", playTime / 2); } AnimationCurve _zRot = AnimationCurve.Linear(0, transform.localRotation.z, playTime, _zRotEndValue); AnimationCurve _wRot = AnimationCurve.Linear(0, transform.localRotation.w, playTime, transform.localRotation.w); AnimationClip _clip = new AnimationClip(); _clip.SetCurve("", typeof(Transform), "localPosition.x", _xCurve); _clip.SetCurve("", typeof(Transform), "localPosition.y", _yCurve); _clip.SetCurve("", typeof(Transform), "localPosition.z", _zCurve); _clip.SetCurve("", typeof(Transform), "localRotation.x", _xRot); _clip.SetCurve("", typeof(Transform), "localRotation.y", _yRot); _clip.SetCurve("", typeof(Transform), "localRotation.z", _zRot); _clip.SetCurve("", typeof(Transform), "localRotation.w", _wRot); _anim.AddClip(_clip, "moveCard" + Name.ToString()); _anim.Play("moveCard" + Name.ToString()); }
public void InitCard(Dealer parent, int value, Suits suit, CardNames name) { Parent = parent; Value = value; Suit = suit; Name = name; FrontImage = Resources.Load(Name.ToString(), typeof(Sprite)) as Sprite; MySpriteRenderer = gameObject.GetComponent <SpriteRenderer> (); MyGameLogic = GameObject.Find("GameLogic").GetComponent <GameLogic> (); }
public Card() { cardName = (CardNames)Random.Range(0, 6); cardDescription = (Description)Random.Range(0, 2); title = cardName.ToString(); description = cardDescription.ToString(); hp = GetValue(); attack = GetValue(); mana = GetValue(); }
public Card BuyCard(CardNames name) { var reserveDeck = this._reserveDecks.First(x => x.CardInfo.CardName == name); if (reserveDeck.CardsLeft <= 0) { throw new InvalidOperationException($"Not able to get card {name.ToString()} from deck. Deck is empty."); } reserveDeck.CardsLeft--; return(reserveDeck.CardInfo); }
private Card CreateNewCard(CardNames name) { string _stringName = name.ToString(); Suits _suit; int _value; switch (_stringName [0]) { case 'c': _suit = Suits.Clubs; break; case 'd': _suit = Suits.Diamonds; break; case 'h': _suit = Suits.Hearts; break; case 's': _suit = Suits.Spades; break; default: _suit = Suits.None; break; } _value = int.Parse(_stringName.Substring(1)); GameObject _cardGameObject = Instantiate(CardPrefab, transform.position, Quaternion.identity) as GameObject; _cardGameObject.transform.SetParent(transform); Card _card = _cardGameObject.GetComponent <Card>(); _card.InitCard(this, _value, _suit, name); return(_card); }
public Card(CardNames name) { Name = name.ToString(); Value = Math.Min((int)name, 10); }