Example #1
0
 void InputController_FireNewInput(object Sender, Events.NewInputEventArgs e)
 {
     if (e.Input == Input.Enter)
     {
         ScreenController.LoadNewScreen(new ScreenWorld(ScreenController));
     }
 }
Example #2
0
        void InputController_FireNewInput(object sender, Events.NewInputEventArgs e)
        {
            var sprite = GetComponent <Sprite>(ComponentType.Sprite);

            if (sprite == null)
            {
                return;
            }

            var collision = GetComponent <Collision>(ComponentType.Collision);

            var x = 0f;
            var y = 0f;

            var camera = GetComponent <Camera>(ComponentType.Camera);

            if (camera == null)
            {
                return;
            }

            var animation = GetComponent <Animation>(ComponentType.Animation);

            if (!camera.CameraInTransition())
            {
                switch (e.Input)
                {
                case Input.Up:
                    y = -1.5f;
                    break;

                case Input.Down:
                    y = 1.5f;
                    break;

                case Input.Left:
                    x = -1.5f;
                    break;

                case Input.Right:
                    x = 1.5f;
                    break;
                }
            }

            if (collision == null || !collision.CheckCollision(new Rectangle((int)(sprite.Position.X + x), (int)(sprite.Position.Y + y), sprite.Width, sprite.Height)))
            {
                sprite.Move(x, y);
            }

            Vector2 position;

            if (!camera.GetPosition(sprite.Position, out position))
            {
                camera.MoveCamera(animation.CurrentDirection);
            }
        }