Exemple #1
0
        private void AnimateTiles(object obj)
        {
            if (MultiSelectedTiles.Count() > 1)
            {
                var first = MultiSelectedTiles.First();
                foreach (var frame in first.Sprite)
                {
                    if (frame.Duration == 0)
                    {
                        frame.Duration = 6;
                    }
                }

                foreach (var tile in MultiSelectedTiles.Skip(1))
                {
                    foreach (var frame in tile.Sprite)
                    {
                        first.Sprite.Add(frame);
                        if (frame.Duration == 0)
                        {
                            frame.Duration = 6;
                        }
                    }

                    _tileset.RemoveTile(tile);
                }

                first.Sprite.Play();
                ChangeTile(first);
            }
        }
Exemple #2
0
        public TilesetEditorViewModel()
        {
            ChangeSheetCommand          = new RelayCommand(o => ChangeSheet());
            AddTileCommand              = new RelayCommand(o => AddTile());
            DeleteTileCommand           = new RelayCommand(o => DeleteTile(), x => MultiSelectedTiles.Any());
            AddTilePropertiesCommand    = new RelayCommand(o => AddProperties());
            EditTilePropertiesCommand   = new RelayCommand(EditProperties);
            DeleteTilePropertiesCommand = new RelayCommand(DeleteProperties);
            HidePropertiesEditorCommand = new RelayCommand(o => HidePropertiesEditor());
            ChangeTilesetCommand        = new RelayCommand(ChangeTileset);
            AnimateTilesCommand         = new RelayCommand(AnimateTiles, x => MultiSelectedTiles.Any());

            ViewModelMediator.Current.GetEvent <StageChangedEventArgs>().Subscribe(StageChanged);
            ViewModelMediator.Current.GetEvent <ProjectOpenedEventArgs>().Subscribe(ProjectOpened);

            ShowSpriteEditor = System.Windows.Visibility.Visible;
            ShowPropEditor   = System.Windows.Visibility.Collapsed;
        }