Example #1
0
        public void UpdateMoveAngle()
        {
            float angle = unit.GetMoveAngle();

            /*	//isometric	4-axis
             * if(angle>0 && angle<=90)         spriteDir=_2DDir.NE;
             * else if(angle>90 && angle<=180)  spriteDir=_2DDir.SW;
             * else if(angle>180 && angle<=270) spriteDir=_2DDir.SW;
             * else                                 spriteDir=_2DDir.NE;
             */

            /*	//top down	4-axis
             * if(angle>45 && angle<=135)		spriteDir=_2DDir.E;
             * else if(angle>135 && angle<=225)spriteDir=_2DDir.S;
             * else if(angle>270 && angle<=360)spriteDir=_2DDir.W;
             * else                                 spriteDir=_2DDir.N;
             */

            //top down	8-axis
            if (angle > 22.5f && angle <= 67.5f)
            {
                spriteDir = _2DDir.NE;
            }
            else if (angle > 67.5f && angle <= 112.5f)
            {
                spriteDir = _2DDir.E;
            }
            else if (angle > 112.5f && angle <= 157.5f)
            {
                spriteDir = _2DDir.SE;
            }
            else if (angle > 157.5f && angle <= 202.5f)
            {
                spriteDir = _2DDir.S;
            }
            else if (angle > 202.5f && angle <= 247.5f)
            {
                spriteDir = _2DDir.SW;
            }
            else if (angle > 247.5f && angle <= 292.5f)
            {
                spriteDir = _2DDir.W;
            }
            else if (angle > 292.5f && angle <= 337.5f)
            {
                spriteDir = _2DDir.NE;
            }
            else
            {
                spriteDir = _2DDir.N;
            }
        }