/// <summary> /// Команды выполняемые при удержании альт и е (т.е. добавление элементов в коллекцию вручную) /// </summary> /// <param name="A"> Ссылка на интерфейс объекта.ы</param> public static void PressAltAndE(PlayInterface A) { ItemsCollections = LoadData(); Console.Clear(); Console.SetCursorPosition(0, 0); Console.WriteLine("Создание нового элемента инвентаря"); Console.WriteLine("Введите имя:"); Console.CursorVisible = true; string name = Console.ReadLine(); Console.WriteLine("Введите цену:"); double price = double.Parse(Console.ReadLine()); Console.WriteLine("Введите описание:"); string Describe = Console.ReadLine(); int ID = ItemsCollections.Count + 1; ItemsCollections.Add(new Item(name, price, Describe, ID)); if (UserController.ReturnCurentUser(UserController.CurentUserName).Count == null) { UserController.ReturnCurentUser(UserController.CurentUserName).Count = new int[1]; } else { int[] a = new int[UserController.ReturnCurentUser(UserController.CurentUserName).Count.Length + 1]; int i = 0; foreach (var s in UserController.ReturnCurentUser(UserController.CurentUserName).Count) { a[i++] = s; } UserController.ReturnCurentUser(UserController.CurentUserName).Count = a; } SaveData(); UserController.SaveData(); Console.CursorVisible = false; Console.WriteLine("Элемент успешно создан. Для продолжения нажмите любую клавишу."); Console.ReadKey(); A.CreateBorder(); A.Draw(); }
/// <summary> /// Вызов инвентаря (по умолчанию кл E). /// </summary> /// <param name="A"> Объект вызова. </param> private static void CallInventory(PlayInterface A) { Console.Clear(); ItemsCollections = LoadData(); Element[,] ListElement = new Element[0, 0]; foreach (var s in ItemsCollections) { ListElement = TheLastElement(ListElement, s); } Element[,] AddListElement = new Element[ListElement.GetLength(0) + 2, ListElement.GetLength(1)]; for (int i = 0; i < ListElement.GetLength(0); i++) { for (int j = 0; j < ListElement.GetLength(1); j++) { AddListElement[i, j] = ListElement[i, j]; } } for (int i = 0; i < ListElement.GetLength(1) - 1; i++) { AddListElement[ListElement.GetLength(0), i] = new Element(" "); } AddListElement[ListElement.GetLength(0), ListElement.GetLength(1) - 1] = new Element("Выход"); AddListElement[ListElement.GetLength(0) + 1, 0] = new Element("Balance"); AddListElement[ListElement.GetLength(0) + 1, 1] = new Element(UserController.ReturnCurentUser(UserController.CurentUserName).Balance.ToString()); for (int i = 2; i < ListElement.GetLength(1); i++) { AddListElement[ListElement.GetLength(0) + 1, i] = new Element(" "); } ListElement = AddListElement; ChoseMenu ListOfItems = new ChoseMenu(ListElement) { IndexX = Item.Number - 1 }; ListOfItems.Elements[0, 0].IsSelected = false; ListOfItems.Elements[0, Item.Number - 1].IsSelected = true; ListOfItems.MenuButtonSet(); while (ListOfItems.IndexY < ItemsCollections.Count) { if (ListOfItems.IndexX == Item.Number - 1) { if (UserController.ReturnCurentUser(UserController.CurentUserName).Count[ListOfItems.IndexY] > 0) { UserController.ReturnCurentUser(UserController.CurentUserName).Count[ListOfItems.IndexY]--; ListOfItems.Elements[ListOfItems.IndexY, 0].Text = (int.Parse(ListOfItems.Elements[ListOfItems.IndexY, 0].Text) - 1).ToString(); UserController.ReturnCurentUser(UserController.CurentUserName).Balance += int.Parse(ListOfItems.Elements[ListOfItems.IndexY, 3].Text); } } else { if (UserController.ReturnCurentUser(UserController.CurentUserName).Balance >= int.Parse(ListOfItems.Elements[ListOfItems.IndexY, 3].Text)) { UserController.ReturnCurentUser(UserController.CurentUserName).Count[ListOfItems.IndexY]++; ListOfItems.Elements[ListOfItems.IndexY, 0].Text = (int.Parse(ListOfItems.Elements[ListOfItems.IndexY, 0].Text) + 1).ToString(); UserController.ReturnCurentUser(UserController.CurentUserName).Balance -= int.Parse(ListOfItems.Elements[ListOfItems.IndexY, 3].Text); } } UserController.SaveData(); ListOfItems.Elements[ListElement.GetLength(0) - 1, 1] = new Element(UserController.ReturnCurentUser(UserController.CurentUserName).Balance.ToString()); ListOfItems.MenuButtonSet(); } A.CreateBorder(); A.Draw(); }