public void OnCardDrop(DragSource source) { CardUI sourceCardUI = source.GetComponent <CardUI>(); InstantiateUnit(sourceCardUI.cardData as UnitCard); playAction = CreatePlayCardAction(sourceCardUI.cardData as UnitCard); handManager.AddPlayAction(playAction); Destroy(source.gameObject); UIManager.instance.ValidateDropCost(); foreach (DropTarget target in GetComponents <DropTarget>()) { target.enabled = false; } }