public CharacterWindow()
        {
            DataContext = new CharacterWindowViewModel();
            VM          = DataContext as CharacterWindowViewModel;

            InitializeComponent();
            ButtonsRef  = Buttons;
            MainContent = WindowContent;
            Init(Settings.SettingsHolder.CharacterWindowSettings, ignoreSize: true, undimOnFlyingGuardian: false);

            InitAnimations();

            VM.Player.PropertyChanged += OnPropertyChanged;
        }
        public CharacterWindow(CharacterWindowViewModel vm)
        {
            DataContext = vm;
            _vm         = vm;

            InitializeComponent();
            ButtonsRef  = Buttons;
            BoundaryRef = Boundary;
            MainContent = WindowContent;
            Init(App.Settings.CharacterWindowSettings); //TODO: us vm.Settings

            _hpAnim = AnimationFactory.CreateDoubleAnimation(200, 0, easing: true, framerate: 30);
            _mpAnim = AnimationFactory.CreateDoubleAnimation(200, 0, easing: true, framerate: 30);
            _stAnim = AnimationFactory.CreateDoubleAnimation(200, 0, easing: true, framerate: 30);
            _shAnim = AnimationFactory.CreateDoubleAnimation(200, 0, easing: true, framerate: 30);

            _vm.Player.PropertyChanged += OnPropertyChanged;
        }
 public CharacterWindowCommand(CharacterWindowViewModel characterWindowViewModel)
 {
     _characterWindowViewModel = characterWindowViewModel;
 }