void OnTriggerEnter2D(Collider2D collision)
    {
        IDropBox dropBox = (IDropBox)collision.gameObject.GetComponent(typeof(IDropBox));

        if (dropBox != null)
        {
            onDropBox = dropBox;
        }
        else
        {
            onDropBox = null;
        }
    }
    // Update is called once per frame
    void Update()
    {
        if (canDrag)
        {
            if (beingDragged)
            {
                Ray     clickRay = Camera.main.ScreenPointToRay(Input.mousePosition);
                Vector3 pos      = clickRay.GetPoint(8.0f);
                transform.position = pos;

                if (Input.GetMouseButtonUp(0))
                {
                    beingDragged = false;

                    if (onDropBox != null && onDropBox.CanDrop)
                    {
                        onDropBox.DropCard(GetComponent <MoodCard>());

                        if (OnSpent != null)
                        {
                            OnSpent(this, new EventArgs());
                        }

                        cardPlayedSound.Play();

                        canDrag = false;
                    }
                    else
                    {
                        cardResetSound.Play();
                        transform.position = startingPosition;
                    }

                    transform.localScale = inverseScale * transform.localScale;
                }
            }
            else
            {
                if (Input.GetMouseButtonDown(0))
                {
                    onDropBox = null;


                    if (AttemptClickOrtho())
                    {
                        beingDragged     = true;
                        startingPosition = transform.position;

                        cardPickedUpSound.Play();

                        transform.localScale = scale * transform.localScale;

                        if (OnPickedUp != null)
                        {
                            OnPickedUp(this, new EventArgs());
                        }
                    }
                }
            }
        }
    }
 void OnTriggerExit2D(Collider2D collision)
 {
     onDropBox = null;
 }