|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Jun 2012
Адрес: Татарстан
Сообщений: 118
|
концепция взаимодействий экземпляров
Здравствуйте товарищи, заболел информационным голодом и поэтому хотел поинтересоваться у огромной публики.
Вот смотрите задумка такая что в своем приложении я хочу строить домики. 1) У меня создается экземпляр класса в котором я могу выбрать интересующую меня постройку, предположим это простой домик. 2) Далее у меня определяется ID этого домика. то есть есть массив в котором хоронятся все постройки их экземпляры. в нашем случае это домик, определяется длинна массива и последним элементом добавляется сама постройка, индекс массива есть id домика. После все что будет создаваться в этой постройке (забор, ворота, сад) все будет привязано к этому id для того что бы было понятно чей забор сломали или чье дерево срубили. 3) Процесс создания постройки. 4) Создаем забор. Забор это тоже экземпляр класса который тоже надо сохранить и во время игры оперативно обратиться к нему. Например удалить его из карты. Дабы показать разрушение. 5) Строим домик внутри забора. И он в свою очередь как то тоже должен хранить свое Я, для дальнейших манипуляций над ним. 6) Огородик вокруг домика но внутри забора. каждое деревце или кустик есть экземпляр класса. его тоже надо сохранить и связать со всеми выше созданными экземплярами. То есть я не знаю логику как связать это все единое так что бы к этому ко всему можно было оперативно обращаться и менять какие либо параметры внутри каждого экземпляра, менять значения переменных. Я в конечном это все это дело должно сохраниться, и при следующем запуске приложения загрузить и отобразить сохранены параметры. Подскажите как вы последовательно обращаетесь к своим экземплярам, как сохраняете их, хотябы вовремя игры как это все происходит? |
|
|||||
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Создаете класс Участок, в нем заводите свойства для всех возможных элементов, всего что может быть на участке — дом, сарай, туалет, баня, забор, колодец, беседка, бассейн, клумба, грядка(массив грядок), сад(массив деревьев), водопровод и т.д. Изначально значения свойств null, затем пользователь в редакторе будет добавлять/перемещать/удалять элементы, и свойства соответственно заполняются. Для каждого элемента естественно тоже создается свой класс — базовый, определяющий общий тип (Дом, например) и его визуальные подклассы (коттедж, избушка и т.п.). Свойства Участка имеют базовый тип (public var house:House), а заполняются конкретными подклассами (plan1.house = new Cottage(); ). Сами элементы конечно хранят необходимые свойства — координаты на участке и размеры занимаемой площади, какие-то собственные варианты (цвет покраски, текстура и т.п.), положение калиток в заборе, может быть ID в массиве всех вариантов домов.
Для сохранения делаете сериализацию — считываете все необходимые свойства всех элементов и сохраняете в подходящем формате. Потом из него же считываете данные и воспроизводите все элементы. Добавлено через 7 минут Если хочется бОльшей свободы и расширяемости, то Участок может хранить не отдельные свойства для каждого элемента (что не позволит сделать три дома, например), а один массив всех элементов. Но тогда возникнут всякие сложности именно с доступом к этим отдельным элементам (решаемые, конечно)).
__________________
Reality.getBounds(this); |
|
|||||
Регистрация: Jun 2012
Адрес: Татарстан
Сообщений: 118
|
то есть получается через главный класс объекта Участок, который помещен в массив (таких же экземпляров), я смогу обращаться ко всем его свойствам (сад, забор , калитка и т.д.)?
Добавлено через 2 часа 9 минут Понял как это реализовать) |
Часовой пояс GMT +4, время: 18:54. |
|
« Предыдущая тема | Следующая тема » |
|
|