Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 07.03.2016
Сообщений: 32

Инвентарь в PictureBox

11.03.2016, 16:20. Показов 1719. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть у меня в игре инвентарь(Игру делаю для себя ибо так обучаться интереснее и проще) он основан на PicturecBox
Т.е если нету объектов которые можно положить, то висит картинка "Пусто" или "Свободный слот".
Я тут долго думал.. Например при обыске чего либо можно найти один или два или более предметов, которые можно положить в инвентарь... Вот проблема в том, что смотря какой предмет и в каком PicturecBox лежит, такое и меню вызываться должно.. В принципе это оформить довольно просто через IF и ELSE, но получается довольно огромный код анализирующий что лежит и какое меню вызывать... Можно ли сделать как то проще? Или именно через IF и ELSE только?

Добавлено через 50 секунд
Прошу прощение за ошибку в Заголовке темы.... Тыкнул пальцем не туда
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.03.2016, 16:20
Ответы с готовыми решениями:

Инвентарь
Суть: Решил сделать простенькую текстовую рпг, решением данного вопроса занят уже не один день. Инвентарь нужно по простой схеме: предмет...

Инвентарь в игре
Здравствуйте, возникли вопросы по ходу создания инвентаря в игре. Есть класс корабля, в нем имеются поля различных типов для оборудования,...

Инвентарь и экипировка в 2D
Не могу сообразить, как сделать инвентарь и экипировку. К примеру должна быть такая менюшка как на картинке, слева инвентарь, справа...

6
82 / 82 / 51
Регистрация: 25.02.2016
Сообщений: 243
11.03.2016, 16:35
Если я правильно понял вопрос, то через if и else далеко не самый лучший вариант. Я так понял вы даже не пытались разделить модели, представления и контроллеры. Лучше например чтобы у вас PictureBox соотносился с классом модели предмета, который в нем лежит и уже в зависимости от этого класса вызывалось его меню. Возможно это тоже не самый лучший вариант, но первое, что пришло в голову.
0
0 / 0 / 0
Регистрация: 07.03.2016
Сообщений: 32
11.03.2016, 17:55  [ТС]
Цитата Сообщение от orlov87 Посмотреть сообщение
Если я правильно понял вопрос, то через if и else далеко не самый лучший вариант. Я так понял вы даже не пытались разделить модели, представления и контроллеры. Лучше например чтобы у вас PictureBox соотносился с классом модели предмета, который в нем лежит и уже в зависимости от этого класса вызывалось его меню. Возможно это тоже не самый лучший вариант, но первое, что пришло в голову.
Там минус в том, что если первый PictureBox занят предметом, то второй предмет должен занять место на втором PictureBox... И опять же должна присутствовать проверка на нахождение предмета ,тип предмета ... IF и ELSE самый думаю нормальный вариант... Но код там выходит будь здоров, если например в инвентаре 50 свободных мест и находишь за один раз от 1 до 10 предметов..
А теперь представьте что в игре около 500 предметов должно реализоваться... Это же код будет просто огромен и запутаться в нем будет просто как пальцами щёлкнуть..

Разбить на классы те же самые предметы например (Оружие, еда, вещи) особо не спасет...
0
310 / 318 / 119
Регистрация: 29.10.2011
Сообщений: 1,006
11.03.2016, 18:18
Цитата Сообщение от CaTBaT Посмотреть сообщение
Там минус в том, что если первый PictureBox занят предметом, то второй предмет должен занять место на втором PictureBox... И опять же должна присутствовать проверка на нахождение предмета ,тип предмета ... IF и ELSE самый думаю нормальный вариант...
Сделайте массив пикчурбоксов и проходите по нему, если встретили пустую ячейку, то поместили предмет. Но создание модели данных значительно упростит вам жизнь Почитайте чуток об архитектуре. Здесь на форуме вроде даже тема faq была

Добавлено через 54 секунды
Цитата Сообщение от CaTBaT Посмотреть сообщение
Разбить на классы те же самые предметы например (Оружие, еда, вещи) особо не спасет...
Полиморфизм как раз был бы кстати
0
0 / 0 / 0
Регистрация: 07.03.2016
Сообщений: 32
11.03.2016, 18:22  [ТС]
Цитата Сообщение от sldp Посмотреть сообщение
Сделайте массив пикчурбоксов и проходите по нему, если встретили пустую ячейку, то поместили предмет. Но создание модели данных значительно упростит вам жизнь Почитайте чуток об архитектуре. Здесь на форуме вроде даже тема faq была
Да, faq про архитектуру я уже читал, надо будет еще раз посмотреть)))

Я что то и забыл про массив... АХахах я всё еще не могу отвыкнуть от движка QGen где всё решает IF и ELSE... Это Текстовый движок))
0
82 / 82 / 51
Регистрация: 25.02.2016
Сообщений: 243
11.03.2016, 18:40
Цитата Сообщение от CaTBaT Посмотреть сообщение
Там минус в том, что если первый PictureBox занят предметом, то второй предмет должен занять место на втором PictureBox... И опять же должна присутствовать проверка на нахождение предмета ,тип предмета ... IF и ELSE самый думаю нормальный вариант... Но код там выходит будь здоров, если например в инвентаре 50 свободных мест и находишь за один раз от 1 до 10 предметов..
А теперь представьте что в игре около 500 предметов должно реализоваться... Это же код будет просто огромен и запутаться в нем будет просто как пальцами щёлкнуть..
Вы пишете на C#, но при этом абсолютно игнорируете стандартные патерны и даже обыкновенное ООП. Это не есть правильно... Мне кажется вам нужно сначала немного познакомится с теорией, а потом переходить к серьезной практике.
0
0 / 0 / 0
Регистрация: 07.03.2016
Сообщений: 32
11.03.2016, 18:46  [ТС]
Цитата Сообщение от orlov87 Посмотреть сообщение
Вы пишете на C#, но при этом абсолютно игнорируете стандартные патерны и даже обыкновенное ООП. Это не есть правильно... Мне кажется вам нужно сначала немного познакомится с теорией, а потом переходить к серьезной практике.
Вы правы)
Надо именно так и сделать)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.03.2016, 18:46
Помогаю со студенческими работами здесь

Программа Инвентарь
Программа для учета радиодеталей, книг, инструментов, материалов, различных предметов. Программа для компьютера с операционной системой...

Система заявок на инвентарь
Всем доброго времени суток, мне дали задание на .net, в котором я не разбираюсь от слова вообще (как и в C#), но его нужно выполнить. Суть...

Инвентарь и экипировка в игре!
Здравствуйте! Подскажите пожалуйста, вот у меня есть таблица экипировки в игре! А как потом организовать одевание и инвентарь?

Ошибка! Инвентарь в игре
Всем привет, написал скрипт для инвенторя. Подскажите как исправить. Ошибка: "Item" Не содержит определение для...

Инвентарь. Логика и код.
Сделал инвентарь. есть 2 таблице и 2 дива. В 1 таблице хранятся все предметы у пользователя. Во второй надетые предметы. Дело в том...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru