public DialogViewer(DialogEnumerator dialog, Anchor anchor, float width, float height) : base(anchor, width, height) { _enumerator = dialog; _text = new CustomText(Anchor.TopLeft, .5f, ""); AddChild(_text); _image = new Image(Anchor.CenterRight, new Vector2(200, 200), _enumerator.Renderer.Region.ToMlem(), true); AddChild(_image); _answers = new MenuIB(Anchor.BottomLeft, .5f, .5f); AddChild(_answers); UpdateState(); _enumerator.OnChanded += UpdateState; _enumerator.OnEnd += this.Close; Log.Debug("DialogViewer init"); InputListeners.Input.KeyboardListener.Push(new NumericKeyboardListener()); InputListeners.Input.MouseListener.Push(new MouseListener()); InputListeners.Keyboard.NumericKeyReleased += OnNumericKeyReleased; }
private void OnDialogOpened(DialogEnumerator obj) { Game.ElementSlot.SwitchTo(() => new DialogViewer(obj, Anchor.Center, .9f, .5f)); }