Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 17.01.2013, 09:27
razerw вне форума Посмотреть профиль Отправить личное сообщение для razerw Найти все сообщения от razerw
  № 1  
Ответить с цитированием
razerw

Регистрация: Jun 2012
Адрес: Татарстан
Сообщений: 118
По умолчанию концепция взаимодействий экземпляров

Здравствуйте товарищи, заболел информационным голодом и поэтому хотел поинтересоваться у огромной публики.
Вот смотрите задумка такая что в своем приложении я хочу строить домики.
1) У меня создается экземпляр класса в котором я могу выбрать интересующую меня постройку, предположим это простой домик.
2) Далее у меня определяется ID этого домика. то есть есть массив в котором хоронятся все постройки их экземпляры. в нашем случае это домик, определяется длинна массива и последним элементом добавляется сама постройка, индекс массива есть id домика. После все что будет создаваться в этой постройке (забор, ворота, сад) все будет привязано к этому id для того что бы было понятно чей забор сломали или чье дерево срубили.
3) Процесс создания постройки.
4) Создаем забор. Забор это тоже экземпляр класса который тоже надо сохранить и во время игры оперативно обратиться к нему. Например удалить его из карты. Дабы показать разрушение.
5) Строим домик внутри забора. И он в свою очередь как то тоже должен хранить свое Я, для дальнейших манипуляций над ним.
6) Огородик вокруг домика но внутри забора. каждое деревце или кустик есть экземпляр класса. его тоже надо сохранить и связать со всеми выше созданными экземплярами.

То есть я не знаю логику как связать это все единое так что бы к этому ко всему можно было оперативно обращаться и менять какие либо параметры внутри каждого экземпляра, менять значения переменных. Я в конечном это все это дело должно сохраниться, и при следующем запуске приложения загрузить и отобразить сохранены параметры.
Подскажите как вы последовательно обращаетесь к своим экземплярам, как сохраняете их, хотябы вовремя игры как это все происходит?
Изображения
 

Старый 17.01.2013, 11:37
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 2  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Создаете класс Участок, в нем заводите свойства для всех возможных элементов, всего что может быть на участке — дом, сарай, туалет, баня, забор, колодец, беседка, бассейн, клумба, грядка(массив грядок), сад(массив деревьев), водопровод и т.д. Изначально значения свойств null, затем пользователь в редакторе будет добавлять/перемещать/удалять элементы, и свойства соответственно заполняются. Для каждого элемента естественно тоже создается свой класс — базовый, определяющий общий тип (Дом, например) и его визуальные подклассы (коттедж, избушка и т.п.). Свойства Участка имеют базовый тип (public var house:House), а заполняются конкретными подклассами (plan1.house = new Cottage(); ). Сами элементы конечно хранят необходимые свойства — координаты на участке и размеры занимаемой площади, какие-то собственные варианты (цвет покраски, текстура и т.п.), положение калиток в заборе, может быть ID в массиве всех вариантов домов.
Для сохранения делаете сериализацию — считываете все необходимые свойства всех элементов и сохраняете в подходящем формате. Потом из него же считываете данные и воспроизводите все элементы.

Добавлено через 7 минут
Если хочется бОльшей свободы и расширяемости, то Участок может хранить не отдельные свойства для каждого элемента (что не позволит сделать три дома, например), а один массив всех элементов. Но тогда возникнут всякие сложности именно с доступом к этим отдельным элементам (решаемые, конечно)).
__________________
Reality.getBounds(this);

Старый 17.01.2013, 14:39
razerw вне форума Посмотреть профиль Отправить личное сообщение для razerw Найти все сообщения от razerw
  № 3  
Ответить с цитированием
razerw

Регистрация: Jun 2012
Адрес: Татарстан
Сообщений: 118
то есть получается через главный класс объекта Участок, который помещен в массив (таких же экземпляров), я смогу обращаться ко всем его свойствам (сад, забор , калитка и т.д.)?

Добавлено через 2 часа 9 минут
Понял как это реализовать)

Создать новую тему Ответ Часовой пояс GMT +4, время: 18:54.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 18:54.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.