/** * This method performs the animation of the cards that will be send to Bind Zone. And also performs * the remove from deck, add to bind and networking communication. This method must be call in a * Update function after a BindFromDeck method was called. When all Cards passed in the BindFromDeck * argument were sent to BindZone, func delegate will be executed. */ public void BindFromDeckUpdate(Void0ParamsDelegate func) { if(BindFromDeck_Active) { if(BindFromDeck_Card == null || !BindFromDeck_Card.AnimationOngoing()) { if(BindFromDeck_Card != null) { //Remove from deck and add to BindZone. Game.playerDeck.RemoveFromDeck(BindFromDeck_Card); Game.field.AddToBindZone(BindFromDeck_Card); BindFromDeck_Card = null; } //Send the next card in the list, if any. If not, func delegate is called. if(BindFromDeck_CardList.Count > 0) { BindFromDeck_Card = BindFromDeck_CardList[0]; BindFromDeck_CardList.RemoveAt(0); BindFromDeck_Card.TurnUp(); BindFromDeck_Card.BindAnim(); Game.SendPacket (GameAction.BIND_FROM_DECK, BindFromDeck_Card.cardID); } else { BindFromDeck_Active = false; func(); } } } }
public bool BindEnemyUnit(Card c) { Game.SendPacket(GameAction.SEND_TO_BINDZONE_ALLY, c.pos); Game.enemyField.RemoveFrom(Util.TransformToEquivalentEnemyPosition(c.pos)); Game.enemyField.AddToBindZone(c); c.BindAnim(); return true; }
public void EnemyBindHand(Card c) { EnemyBindCard = c; EnemyBindCard.BindAnim(); }
public void FromHandToBind(Card c, int handPosition, bool bFacedown = false) { c.BindAnim(); //int iFacedown = 0; //if(bFacedown) iFacedown = 1; SendPacket (GameAction.FROM_HAND_TO_BIND, c.cardID, handPosition); }
public void BindHand(Card c) { BindCard = c; BindCard.BindAnim(); }