Как создать разные «уровни» во flash, без поддержки mc?

#flash #actionscript-2 #levels

#flash #actionscript-2 #уровни

Вопрос:

Неделю назад мы с другом начали работать над очень простой игрой, но сейчас, похоже, я не могу решить одну проблему:

К каждому уровню я «прикрепляю видео» и «Дублирую видео» «героя», блоки, землю и свиней. Но когда вы либо проигрываете, либо выигрываете уровень, эти mc продолжают существовать во всех других фреймах…

просто чтобы показать вам, как я создаю экземпляры этих видеороликов:

 _root.attachMovie("ground", "ground", _root.getNextHighestDepth());
  

и, например, переход в главное меню при потере похож на:

 gotoAndStop("main");
  

У меня на временной шкале есть четыре кадра: главное меню -> выбор уровня -> уровень 1 -> уровень 2

кто-нибудь может помочь мне настроить мою игру?

заранее спасибо, Dalionzo

Ответ №1:

Прежде всего, я не большой поклонник AS2. Мне следовало использовать AS3 и массив / вектор для управления удалением видеоклипов.

Но вот два альтернативных решения.

Когда вы добавляете новый видеоролик в root, он не будет удален при смене кадра, потому что root является глобальным. Это означает, что он охватывает всю временную шкалу, независимо от того, какой кадр активен. Простое решение — добавить видеоролики-держатели к каждому кадру, а затем добавить свои видеоролики к держателям. Это заставит flash удалять содержимое держателя при смене фрейма. Другое решение — добавить все созданные mcs в массив, а затем выполнить цикл по нему, чтобы удалить их при смене фрейма.

Комментарии:

1. Спасибо, Маттиас, ваше объяснение помогло мне …. и я только начал искать хорошие книги по AS3 за день до того, как опубликовал свой вопрос. У вас есть какие-нибудь идеи для хороших сайтов или книг?

2. Essential ActionScript 3.0, Университет игрового программирования ActionScript 3.0, Foundation Анимация ActionScript 3.0: заставляет вещи двигаться!