void Update() { if (isFlipping) { FlipCard(); timeFlipping += Time.deltaTime; } if (timeFlipping >= 0.5f) { isFlipping = false; timeFlipping = 0; numCall = 0; } else if (timeFlipping >= 0.2875f && timeFlipping < 0.35f && isFlipping && numCall == 0) { numCall++; if (GetCurrentCardState() == CardStates.Back) { GetComponent <Renderer>().material.mainTexture = flippedTexture; currentCardState = CardStates.Flipped; tag = "flipped card"; } else { GetComponent <Renderer>().material.mainTexture = backTexture; currentCardState = CardStates.Back; tag = "card"; } } }
// I wanted to cast these to an int Array (for consistency sake with the RPC) but.. // ..that does not seem to track well and just causes index errors) private void UpdateCard(int id, CardStates state, IEnumerable <int> attackTargetIds, IEnumerable <int> skillTargetIds) { // Don't ever queue actions like this up again.. // ..I was updating 40 cards at a time which made our command unnecessairly huge Cards[id].Update(state, skillTargetIds.Select(targetId => Cards[targetId]).ToList(), attackTargetIds.Select(targetId => Cards[targetId]).ToList()); }
private void Start() { image = GetComponent <Image>(); gameManager = FindObjectOfType <GameManager>(); cardBack = image.sprite; currentState = CardStates.Unchecked; }
public Card AddCard(string Type, int PlayerID, CardStates State, int? Position) { Card Card = new Card(NewCardUID, Type, PlayerID, State, Position); Cards.Add(Card); NewCardUID++; return Card; }
public void Reset() { if (currentState == CardStates.Found) { return; } image.sprite = cardBack; currentState = CardStates.Unchecked; glowFX.SetActive(false); }
public void Update() { CardStates = Controller.State switch { States.IdleTurnPlayer when CanBeDeployed() => CardStates.Deploy, States.IdleTurnPlayer when CanBeSetFaceDown() => CardStates.SetFaceDown, States.IdleTurnPlayer when CanAttackUnit() => CardStates.AttackUnit, States.IdleTurnPlayer when CanAttackPlayer() => CardStates.AttackPlayer, States.IdleTurnPlayer when CanBeActivated() => CardStates.Activate, States.Active when CanBeActivated() => CardStates.Activate, _ => CardStates.None }; }
public void UpdateCard(bool showFront, string Name, string ImagePath, string CardbackPath, string Mana, string Attack, bool showAttack, string Health, CardStates State, string classType) { Hand.gameObject.SetActive(State == CardStates.InDeck || State == CardStates.InHand); Hero.gameObject.SetActive(State == CardStates.Hero); Minion.gameObject.SetActive(State == CardStates.OnBoard); ClassModel model = Db.Classes.Find(c => c.Type.Equals(classType)); string cardBack = model.Cardback; string cardFront = model.Cardfront; //string cardBack = (string)SQL.Query("SELECT Cardback FROM Classes WHERE Type='" + classType + "'").Rows[0][0]; //string cardFront = (string)SQL.Query("SELECT Cardfront FROM Classes WHERE Type='" + classType + "'").Rows[0][0]; Hand.UpdateCard(showFront, Name, "", Mana.ToString(), Attack.ToString(), Health, ImagePath, cardBack, cardFront); Hero.UpdateCard(Attack.ToString(), showAttack, Health, true, ImagePath); Minion.UpdateCard(Attack.ToString(), Health, ImagePath); }
public void OnClick() { if (gameManager.waitingForReset) { return; } if (currentState == CardStates.Checked || currentState == CardStates.Found) { return; } image.sprite = cardSprite; currentState = CardStates.Checked; gameManager.AddToGuess(this); glowFX.SetActive(true); }
public void UpdateCardTexture(bool alwaysShow, BoardState board, Card card, CardStates State, string classType) { StringBuilder ImagePath = new StringBuilder(@"Textures/Cards/"); ImagePath.Append(card.GetCardGFX()); StringBuilder CardbackPath = new StringBuilder(@"Textures/"); if (card.PlayerID == 0) CardbackPath.Append("Lannister cardback"); else CardbackPath.Append("Stark cardback"); int attack = board.GetCardAttack(card); string manaString = "<b>" + board.GetCardManaCost(card).ToString() + "</b>"; string attackString = "<b>" + attack.ToString() + "</b>"; string healthString = "<b>" + board.GetCardHealth(card).ToString() + "</b>"; if (board.GetCardMaxHealth(card) > board.GetCardHealth(card)) healthString = "<color=MAROON>" + healthString + "</color>"; UpdateCard(alwaysShow || State == CardStates.InHand && card.PlayerID == 0,@"<b>" + card.GetName() + @"</b>", ImagePath.ToString(), CardbackPath.ToString(), manaString, attackString, attack > 0, healthString, State, classType); }
public Card(int ID, string Type, int PlayerID, CardStates State, int? Position) { this.ID = ID; this.Type = Type; this.PlayerID = PlayerID; this.State = State; this.Position = Position; StringBuilder QueryText = new StringBuilder(@"SELECT * FROM Cards WHERE TYPE='"); QueryText.Append(Type); QueryText.Append(@"'"); CardData = Db.FindCard(this.Type); if (CardData == null) throw new Exception(String.Format("Card {0} not found", this.Type)); this.Health = GetBaseMaxHealth(); }
public void FlipCard() { if (!isActive()) { return; } if (_animator == null) { return; } if (state == CardStates.FACE_UP) { state = CardStates.FACE_DOWN; } else { state = CardStates.FACE_UP; } UpdateAnimation(); }
/// <summary> /// Utility function used to load the state of the card. /// <br>Indexes: 0 = Unchecked; 1 = Checked; 2 = Found.</br> /// </summary> /// <param name="state"></param> public void SetState(int state) { switch (state) { case 0: currentState = CardStates.Unchecked; break; case 1: currentState = CardStates.Checked; image.sprite = cardSprite; gameManager.AddToGuess(this); glowFX.SetActive(true); break; case 2: currentState = CardStates.Found; image.sprite = cardSprite; gameManager.AddToCorrectCardZone(cardSprite); break; } }
public Card DealCard(Deck deck, CardStates state) { return(deck.Cards.Pop()); }
void Start() { currentCardState = CardStates.Back; gameObject.GetComponent <Renderer>().material.mainTexture = backTexture; }
public void SetCardState(CardStates cardState) { currentCardState = cardState; }
private CardStates SetState(CardStates newState) { BaseState = newState; return(newState); }
public void Find() { currentState = CardStates.Found; glowFX.SetActive(false); }
/// private void Restart() { state = CardStates.CREATE; UpdateAnimation(); }
public void UpdateCard(string Name, string ImagePath, string CardbackPath, int Mana, int Attack, int Health, CardStates State) { if (State == CardStates.InDeck || State == CardStates.Dead) { //MinionObject.SetActive(false); HeroObject.SetActive(false); HandObject.SetActive(true); } if (State == CardStates.InDeck || State == CardStates.InHand) { //MinionObject.SetActive(false); HeroObject.SetActive(false); if (oldImagePath != ImagePath && HandImage != null) { HandImage.material.SetTexture(0, Global.LoadTexture(ImagePath)); //HandImage.texture = Global.LoadTexture(ImagePath); ImagePath = oldImagePath; } if (oldCardbackPath != CardbackPath) { HandCardback.material.SetTexture(0, Global.LoadTexture(CardbackPath)); CardbackPath = oldCardbackPath; } /*HandName.text = Name; HandMana.text = Mana.ToString(); HandAttack.text = Attack.ToString(); HandHealth.text = Health.ToString();*/ HandObject.SetActive(true); } if (State == CardStates.OnBoard) { HandObject.SetActive(false); HeroObject.SetActive(false); /*if (oldImagePath != ImagePath) MinionImage.material.SetTexture(0, Global.LoadTexture(ImagePath)); MinionAttack.text = Attack.ToString(); MinionHealth.text = Health.ToString(); MinionObject.SetActive(true); */} if (State == CardStates.Hero) { HandObject.SetActive(false); //MinionObject.SetActive(false); if (oldImagePath != ImagePath && HeroImage != null) HeroImage.material.SetTexture(0, Global.LoadTexture(ImagePath)); //HeroImage.texture = Global.LoadTexture(ImagePath); //HeroAttack.text = Attack.ToString(); //HeroHealth.text = Health.ToString(); HeroObject.SetActive(true); } }
public Card(Suites suite, Ranks rank, CardStates state) { this.suite = suite; this.rank = rank; this.state = state; }
public void Update(CardStates state, IList <Card> targets, IList <Card> attackTargets) { CardState.State = state; ValidTargets.Update(targets); ValidAttackTargets.Update(attackTargets); }
public void DestroyCard() { state = CardStates.DESTOYED; UpdateAnimation(); }