示例#1
0
        //get texture rect
        public IntRect GetTextureRect()
        {
            var currFrame = currAnim.GetFrame(speed);

            return(ss.GetTextureRect(currFrame.i, currFrame.j));
        }
示例#2
0
        public void UpdateView()
        {
            //есть все соседи
            if (UpTile != null && DownTile != null && LeftTile != null && RightTile != null)
            {
                int i = World.rand.Next(0, 3);
                rectShape.TextureRect = SpriteSheet.GetTextureRect(1 + i, 1);
            }

            //нет соседей
            else if (UpTile == null && DownTile == null && LeftTile == null && RightTile == null)
            {
                int i = World.rand.Next(0, 3);
                rectShape.TextureRect = SpriteSheet.GetTextureRect(9 + i, 3);
            }//----------------------------------------------------------------------
            //нет соседа сверху
            else if (UpTile == null && DownTile != null && LeftTile != null && RightTile != null)
            {
                int i = World.rand.Next(0, 3);
                rectShape.TextureRect = SpriteSheet.GetTextureRect(1 + i, 0);
            }
            //нет соседа снизу
            else if (UpTile != null && DownTile == null && LeftTile != null && RightTile != null)
            {
                int i = World.rand.Next(0, 3);
                rectShape.TextureRect = SpriteSheet.GetTextureRect(1 + i, 2);
            }
            //нет соседа слева
            else if (UpTile != null && DownTile != null && LeftTile == null && RightTile != null)
            {
                int i = World.rand.Next(0, 3);
                rectShape.TextureRect = SpriteSheet.GetTextureRect(0, i);
            }
            //нет соседа справа
            else if (UpTile != null && DownTile != null && LeftTile != null && RightTile == null)
            {
                int i = World.rand.Next(0, 3);
                rectShape.TextureRect = SpriteSheet.GetTextureRect(4, i);
            }//----------------------------------------------------------------------
            //нет соседа сверху слева
            else if (UpTile == null && DownTile != null && LeftTile == null && RightTile != null)
            {
                int i = World.rand.Next(0, 3);
                rectShape.TextureRect = SpriteSheet.GetTextureRect(0 + i * 2, 3);
            }
            //нет соседа сверху справа
            else if (UpTile == null && DownTile != null && LeftTile != null && RightTile == null)
            {
                int i = World.rand.Next(0, 3);
                rectShape.TextureRect = SpriteSheet.GetTextureRect(1 + i * 2, 3);
            }
            //нет соседа слева снизу
            else if (UpTile != null && DownTile == null && LeftTile == null && RightTile != null)
            {
                int i = World.rand.Next(0, 3);
                rectShape.TextureRect = SpriteSheet.GetTextureRect(0 + i * 2, 4);
            }
            //нет соседа справа снизу
            else if (UpTile != null && DownTile == null && LeftTile != null && RightTile == null)
            {
                int i = World.rand.Next(0, 3);
                rectShape.TextureRect = SpriteSheet.GetTextureRect(1 + i * 2, 4);
            }
        }