|
0 / 0 / 0
Регистрация: 20.02.2019
Сообщений: 3
|
|
Проблема с классами (возможно с классами)20.02.2019, 18:45. Показов 1493. Ответов 6
В общем такое дело. На днях надумал соорудить игру, эдакую экономическую стратегию. И попутно разрабатывая механику наткнулся на ряд проблем. Сразу скажу опыт в С# небольшой и возникают вопросы на самом ровном месте.
Суть в том, что при нажатии синей кнопки (смотрим на прикрепленную картинку) создается корабль на карте. У корабля есть следующие параметры: скорость, имя корабля (редактируется игроком или задается рандомно, как в Anno 1404), размер трюма. Посмотреть всю информацию о созданных кораблях можно из панели 2 вызванной красной кнопкой. В ней есть Бокс ScrollView в который добавляется или удаляется количество кораблей. Каждый блок несет информацию о корабле, где 4 изображение, 5 имя корабля, 6, 7 и 8 это скорость, размер трюма и еще какая-нибудь переменная соответственно. Есть возможность создания (строительства) кораблей, корабли можно строить разных типов (будь то фрегат, шлюпка или яхта), у каждого класса своя максимальная скорость, максимальный объем трюма и тд. Т.е. смысл в том, что могут создаваться несколько кораблей одного класса. Суть вопроса такова: писать примеры кода как это оформить не нужно (хотя это будет очень большая и приятная помощь для меня), я не знаю как это в конечном счете сделать. Где-то выглядел, что можно все оформить через классы, а потом через объекты классов и запихнуть все это в массивы. Но, возможно мой программный мозг (если можно его ак назвать )) не позволяет мне додуматься до этого, как после этого можно обратиться к каждому отдельно взятому кораблю, который будет соответственно префабом создающимся на карте. Как можно реализовать систему погрузки товара на этот корабль, на отдельный корабль. Будо очень благодарен за любую проявленную помощь, которая поможет встать мне на путь истинный (так скажем) в создании!
0
|
|
| 20.02.2019, 18:45 | |
|
Ответы с готовыми решениями:
6
Проблемы с классами Проблема с классами Проблема с Классами |
|
|
|||||||
| 20.02.2019, 20:50 | |||||||
1
|
|||||||
|
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
|
|
| 20.02.2019, 21:11 | |
|
Storm23, для чего такие свойства? Чтобы в инспекторе не было видно и не работала сериализация?
0
|
|
|
|
||
| 20.02.2019, 21:34 | ||
|
И сериализация для этих классов вполне себе работает. А свойства - потому что это хороший стиль программирования. Если нужно будет сделать события или проверки - в свойствах это можно реализовать, а в полях - нет.
0
|
||
|
753 / 600 / 204
Регистрация: 06.08.2015
Сообщений: 2,432
|
|
| 20.02.2019, 21:54 | |
|
Storm23, ну уж точно не сериализуется встроенными средствами и необходим модуль для загрузки/сохранения содержимого такого класса (не для новичков точно).
0
|
|
|
0 / 0 / 0
Регистрация: 20.02.2019
Сообщений: 3
|
|
| 20.02.2019, 22:22 [ТС] | |
|
Storm23, Спасибо за ответ. Дельный ответ. Но как после можно обращаться к ним? Через лист мне кажется проблематично будет. Мне кажется. Еще у меня были мысли сделать несколько префабов с различными показателями ( скорость, размер и т.д.). Так в дальнейшем и будет сделано, потому что корабли отличаются внешне. Но проблема в том, как можно после разместить информацию в Scrollview на панели. Но имея несколько одинаковых префабов клонированных с помощью функции Instantiate, можно ли их потом в дальнейшем редактировать (по принципу апгрейда)? И как их можно запихнуть в Scrollview?
0
|
|
|
|
||||||||||||||||||||||||||||||||
| 21.02.2019, 03:55 | ||||||||||||||||||||||||||||||||
Сообщение было отмечено SchwarzWiking как решение
РешениеНиже приводится пример в котором используется модель, которую я описал выше. Если вы поймете как это все работает - я могу чуть более усложнить пример и приблизить его к реальным условиям. А если же он для вас слишком сложен - ну тогда пусть вам посоветуют что-нить попроще. Классы модели: Ship
User
SaverLoader
Контроллеры: UserController
ShipsListController
ShipInfoController
Проект целиком:
2
|
||||||||||||||||||||||||||||||||
| 21.02.2019, 03:55 | |
|
Помогаю со студенческими работами здесь
7
Проблема с классами конструктора Небольшая проблема с классами Проблема с абстрактными классами и перегрузкой операторов Проблема с классами: код, написаный по книге, выделяется как неправильный Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Первый деплой
lagorue 16.01.2026
Не спеша развернул своё 1ое приложение в kubernetes.
А дальше мне интересно создать 1фронтэнд приложения и 2 бэкэнд приложения
развернуть 2 деплоя в кубере получится 2 сервиса и что-бы они. . .
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам
Кирхгофа, решает её и находит токи на L и напряжения на C в установ. режимах до и. . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
|
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
|