![]() |
Подскажите по дизайну классов
Я пишу флеш игру, в которой лейаут экрана поделен на две части: верхнюю и нижнюю. В верхней всегда расположен стол, а в нижней части в зависимости от контекста игры могут отображаться либо панель кнопок, либо чат, либо история ходов в партии.
Нижнюю часть я хочу оформить в виде символа-мувиклипа, и панель кнопок, чат и историю ходов хочу тоже сделать отдельными символами и поместить их в кадры мувиклипа нижней части. Чтобы вывести панель кнопок, чат или историю я собираюсь явно переключать кадры мувиклипа нижней части. Подскажите, это правильный подход , или такие вещи надо реализовывать по-другому? |
Я бы рекомендовал блоки делать отдельными дисплэй обжектами и
тогда вместо gotoAndStop("chat") будет addChild(chat) |
Да, так можно включать/выключать отображение .
Еще хочется, чтобы можно было внешний вид в разных режимах (действия, чат, история) целиком видеть в IDE, как это сделать кроме раскадровки? Можно еще скинуть в разные слои и включать/отключать их видимость. Как-то еще? |
Цитата:
А вообще, писать код игры в кадрах - далеко не лучший подход. Лучше писать все в классах. |
Цитата:
|
а социалку сверху потом куда прикручивать будем? :)
в пятый и седьмой кадры основной сцены? |
Я сам код пишу не в кадрах. У меня есть типа главный мувик, в нем есть несколько надров - по числу режимов игрового стола. В кадрах расположены только составные символы-вьюхи (доска, чат, история). Весь код, управляющий переключением кадров и выводом в чат, в истрию и на доску находится в отдельных чисссто AS3 классах-контроллерах. Контроллеры я создаю из корневого объекта контроллера игры. Эти контроллеры каждый принимает ссылку на соответствующую ему вьюху, лежащую на каком-то кадре главного мувика.
Можно было конечно все символы компоновать и выводить врукопашную в коде, но гораздо же удобнее их сложить в мозаику в IDE и затем только показывать/прятать. Можно, например, всегда открыть главный мувик в IDE, что-то поменять в составляющих его символах и сразу увидеть как поменяется внешний вид приложения в том или ином режиме. Не нужно копилировать, запускать приложение, не нужно явно оперировать x,y координатами, код становится проще/короче. Цитата:
Или я во что-то фудаментально не врубаюсь ? :confused: |
Тут приняты два крайних взгляда:
- работать вообще без мувиков, собранных во FlashIDE, абсолютно все делать кодом. - делать все мувиками во FlashIDE, а код использовать исключительно для связки этих мувиков и реализации функционала, повешенного на контролы мувиков Второй подход не позволит сделать действительно крупное приложение. Первый подход позволяет строить крупные приложения, но требует более высокой квалификации. Компромиссный подход - первичным является код, отдельные компоненты приложения выполняются мувиклипами. |
ок, я понял.
Пожалуй, первый подход слишко хардкорный для меня, и чреват потерей интереса к проекту. :) Мне больше по нутру компромиссный подход. И я вынес для себя, что кадры мувика для переключения режимов использовать не стоит. |
| Часовой пояс GMT +4, время: 11:40. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.