Exemple #1
0
    //--------------------------------------------------------------------------------------------------------
    private void Arrive()
    {
        if (swipeDestHex != null)
        {
            name         = "Block on " + swipeDestHex.name + ", Level " + Level + " (" + Kind + ")";
            swipeDestHex = null;
        }

        if (swipeDestNeko != null)
        {
            swipeDestNeko.Feed(this);
            return;
        }

        transform.position = (Vector3)swipeDestPos;
        swipeDestPos       = null;
        BlocksToEat.Clear();
        UpdateDisplayImage();

        // do we die now?
        if (SuicideAfterEating || SuicideOnArrival)
        {
            Destroy(gameObject);
            return;
        }

        // play arrival anim
        switch (swipeDirection)
        {
        case BoardDirection.UpLeft:
            BlockAnimator.Play("Block_NW");
            break;

        case BoardDirection.Up:
            BlockAnimator.Play("Block_N");
            break;

        case BoardDirection.UpRight:
            BlockAnimator.Play("Block_NE");
            break;

        case BoardDirection.DownRight:
            BlockAnimator.Play("Block_SE");
            break;

        case BoardDirection.Down:
            BlockAnimator.Play("Block_S");
            break;

        case BoardDirection.DownLeft:
            BlockAnimator.Play("Block_SW");
            break;
        }
    }