//拖动结束,需要判断是否可以转移牌 public void OnDragEnd(Card card) { for (int i = 0; i < allDeckArray.Length; i++) { Deck targetDeck = allDeckArray [i]; if (targetDeck.deckType == Public.DECK_TYPE_BOTTOM || targetDeck.deckType == Public.DECK_TYPE_ACE) { if (targetDeck.OverlapWithCard(card)) //优先判断ace牌桌 { Deck srcDeck = card.deck; Debug.Log("Overlap with deck"); if (targetDeck.AcceptCard(card)) //可以接收牌 { Card[] popCards = srcDeck.PopFromCard(card); targetDeck.PushCardArray(popCards); //targetDeck.PushCard(srcDeck.Pop()); targetDeck.UpdateCardsPosition(false); srcDeck.UpdateCardsPosition(false); ActionAfterEachStep(); if (targetDeck.deckType == Public.DECK_TYPE_ACE) { gameMgr.AddScoreValue(Public.SCORE_MOVE_TO_ACE); gameMgr.PlayGameAudio(Public.AUDIO_TYPE_CYCLE); } return; } } } } //gameMgr.PlayGameAudio(Public.AUDIO_TYPE_WIN); gameMgr.PlayGameAudio(Public.AUDIO_TYPE_CANCEL); }