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); } }
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; }