// Update is called once per frame
    void Update()
    {
        // TODO: diagonal
        bool bStationary = monsterFeet.IsStationary();

        if (bStationary && eMoving != eMonsterDir.stationary)
        {
            // standing still
            eMoving = eMonsterDir.stationary;
            animateTexture.rowNumber = 0;
            return;
        }
        else if (!bStationary)
        {
            // not standing still

            if (monsterFeet.IsHorizontal())
            {
                if (monsterFeet.ReverseX() && eMoving != eMonsterDir.left)
                {
                    eMoving = eMonsterDir.left;
                    animateTexture.rowNumber = 1;
                }
                else if (!monsterFeet.ReverseX() && eMoving != eMonsterDir.right)
                {
                    eMoving = eMonsterDir.right;
                    animateTexture.rowNumber = 2;
                }
            }

            if (monsterFeet.IsVertical())
            {
                if (monsterFeet.ReverseY() && eMoving != eMonsterDir.up)
                {
                    eMoving = eMonsterDir.up;
                    animateTexture.rowNumber = 3;
                }
                else if (!monsterFeet.ReverseY() && eMoving != eMonsterDir.down)
                {
                    eMoving = eMonsterDir.down;
                    animateTexture.rowNumber = 0;
                }
            }
        }
    }
示例#2
0
    // Update is called once per frame
    void Update()
    {
        // TODO: diagonal
        bool bStationary = monsterFeet.IsStationary();

        if (bStationary && eMoving != eMonsterDir.stationary)
        {
            // standing still
            eMoving = eMonsterDir.stationary;
            animateTexture.rowNumber = 0;
            return;
        }
        else if (!bStationary)
        {
            // not standing still

            if (monsterFeet.IsHorizontal())
            {
                if (monsterFeet.ReverseX() && eMoving != eMonsterDir.left)
                {
                    eMoving = eMonsterDir.left;
                    animateTexture.rowNumber = 2;
                }
                else if (!monsterFeet.ReverseX() && eMoving != eMonsterDir.right)
                {
                    eMoving = eMonsterDir.right;
                    animateTexture.rowNumber = 1;
                }
            }

            if (monsterFeet.IsVertical())
            {
                if (monsterFeet.ReverseY() && eMoving != eMonsterDir.up)
                {
                    eMoving = eMonsterDir.up;
                    animateTexture.rowNumber = 3;
                }
                else if (!monsterFeet.ReverseY() && eMoving != eMonsterDir.down)
                {
                    eMoving = eMonsterDir.down;
                    animateTexture.rowNumber = 0;
                }
            }
        }
    }