void InputController_FireNewInput(object Sender, Events.NewInputEventArgs e) { if (e.Input == Input.Enter) { ScreenController.LoadNewScreen(new ScreenWorld(ScreenController)); } }
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); } }