コード例 #1
0
ファイル: Sprite.cs プロジェクト: jerbtrundles/procedural_map
        private void SetNextState()
        {
            if (_stateQueue.Count > 0)
            {
                SPRITE_ANIMATION nextState = _stateQueue.Dequeue();
                if (nextState != _currentAnimationState)
                {
                    SetAnimation(nextState);
                }
            }
            else
            {
                switch (_currentAnimationState)
                {
                case SPRITE_ANIMATION.WALK_DOWN:
                    SetAnimation(SPRITE_ANIMATION.IDLE_DOWN);
                    break;

                case SPRITE_ANIMATION.WALK_UP:
                    SetAnimation(SPRITE_ANIMATION.IDLE_UP);
                    break;

                case SPRITE_ANIMATION.WALK_LEFT:
                    SetAnimation(SPRITE_ANIMATION.IDLE_LEFT);
                    break;

                case SPRITE_ANIMATION.WALK_RIGHT:
                    SetAnimation(SPRITE_ANIMATION.IDLE_RIGHT);
                    break;
                }
            }
        }
コード例 #2
0
 internal void SetAnimation(SPRITE_ANIMATION newAnimationState)
 {
     if (newAnimationState != CurrentAnimationState)
     {
         CurrentAnimationState = newAnimationState;
         CurrentAnimation.Reset();
     }
 }
コード例 #3
0
ファイル: Sprite.cs プロジェクト: jerbtrundles/procedural_map
        public Sprite(CanvasBitmap image, int imageResolution, PointInt absolutePosition)
        {
            AbsolutePosition = absolutePosition;
            _spriteSheet     = new SpriteSheet(image, imageResolution);

            _currentAnimationState = SPRITE_ANIMATION.IDLE_DOWN;
            _currentAnimation      = SpriteAnimationDefinitions.Copy(_currentAnimationState);
        }
コード例 #4
0
 public static SpriteAnimation Copy(SPRITE_ANIMATION animation)
 {
     return(SpriteAnimation.Copy(_animations[animation]));
 }
コード例 #5
0
 public static SpriteAnimation Get(SPRITE_ANIMATION animation)
 {
     return(_animations[animation]);
 }
コード例 #6
0
ファイル: Sprite.cs プロジェクト: jerbtrundles/procedural_map
 public void SetAnimation(SPRITE_ANIMATION animation)
 {
     _currentAnimationState = animation;
     _currentAnimation      = SpriteAnimationDefinitions.Copy(_currentAnimationState);
 }