private void MenuKeyDown(object sender, KeyEventArgs e) { if (gridInteract.Visibility == Visibility.Visible) { gridInteract.Visibility = Visibility.Hidden; } if (moveAction.StoryboardAnimation.AnimationComplete) { moveAction.StoryboardAnimation.MainStoryboard.Completed += new EventHandler(AnimationCompleted); var max = MapGrid.RowDefinitions.Count - 1; var selected = moveAction.GetDirection(e.Key, max); if (selected > 0) { if (!conflictChecker.WallConflict(moveAction, MapData.ListMap)) { if (conflictChecker.PortalConflict(moveAction, MapData.ListMap)) { moveAction.SpriteAnimation.CreateSprite(e.Key, PlayerImage); moveAction.Pos = moveAction.LastPos; } else { moveAction.StoryboardAnimation.CreateStoryboard(e.Key, MapCanvas); moveAction.StoryboardAnimation.CreateStoryboard(e.Key, PlayerCanvas, true); moveAction.SpriteAnimation.CreateSprite(e.Key, PlayerImage); moveAction.StoryboardAnimation.MainStoryboard.Begin(); moveAction.StoryboardAnimation.SetCanvasZIndex((int)moveAction.Pos.Y, PlayerCanvas); CheckConflict(moveAction); } } else { moveAction.Pos = moveAction.LastPos; } } else if (selected == -1) { Debug.WriteLine("E3001"); } else if (selected < -1) { if (selected == -2) { if (conflictChecker.PortalInteract(moveAction, MapData.ListMap)) { if (moveAction.PortalKey != null) { NavigateToPage(new BattlePage("Boss")); End = true; } else { txtBlkInteract.Text = "You don't have key!"; gridInteract.Visibility = Visibility.Visible; } } } else if (selected == -3) { NavigateToPage(new PartyMenuPage(1)); } } } //test.Text = "Room " + MapData.RoomID + "; Count: " + App.levelList.LevelsList.Count; }