public void OnDungeonSelected(object sender, GestureEventArgs e) { var selectedGrid = sender as Grid; var dungeonId = (int)selectedGrid.Tag; _selectedDungeon = GetDungeon(dungeonId); var heroRepository = new HeroRepository(); _heroesOwnedByPlayer = heroRepository.GetHeroesOwnedByPlayer().Count; var playerRepository = new PlayerRepository(); _player = playerRepository.GetPlayer(); if (PlayerCanEnterDungeon()) { _player.Stam.Current = _player.Stam.Current - _selectedDungeon.StaminaCost; playerRepository.SavePlayer(_player); MessageBus.Default.Notify("EnterDungeon", new Object(), new NotificationEventArgs(dungeonId.ToString())); } else { var errorModalControl = GetErrorMessage(); var errorModal = new ModalContainer(errorModalControl); errorModal.Show(); } }
public void LaunchDeleteHeroModal(object sender, GestureEventArgs e) { var heroToDelete = GetHeroToDelete(sender); var deleteHeroConfirmationModal = new Modals.DeleteHeroConfirmation(heroToDelete); deleteHeroConfirmationModal.CloseModal += RemoveDeletedHeroFromScreen; var deleteHeroModal = new ModalContainer(deleteHeroConfirmationModal); deleteHeroModal.Show(); }