*   >> Чтение Образование Статьи >> science >> programming

Создание клона Space Invaders с КНОПКА - Главная Menu

<р> Играть демо

<р> Загрузить исходный код ИСТОЧНИК

<р> вернуться на главную учебник

<р> Несмотря на то, что не может быть сразу видно , государственное управление, как переход от экрана меню к уровню игры, и снова, не предоставляются с помощью классов загрузки уровня PushButton XML. В то время как вы можете загрузить уровень, это будет на самом деле загрузить все объекты в дополнение к тем, которые в настоящее время загружены.

Очистка загруженные объекты, не зависит от уровня загрузки, и так до того, как новый уровень загружается необходимо вручную уничтожить существующие объекты для себя.

<Р> Самый простой способ сделать это, чтобы создать компонент, который прослушивает глобальное событие, чтобы быть триггер и уничтожить объект, к которому он принадлежит, в ответ. DestroyOnLevelClearComponent делает именно это. Это слушает ясного случае уровня, отправленного объектом главной сцене (удобный и центральный объект, что все компоненты могут слушать).

<Р> DestroyOnLevelClearComponent.

as

 Открытый класс DestroyOnLevelClearComponent распространяется EntityComponent {общественности статической строительства LEVEL_CLEAR: String = "LevelClear"; Функция DestroyOnLevelClearComponent общественности () {супер (); } Функция коррекции защищены onAdd (): пустота {super.onAdd (); Global.mainStage.addEventListener (LEVEL_CLEAR, levelClear); } Защищены переопределение функции OnRemove (): пустота {super.onRemove (); Global.mainStage.removeEventListener (LEVEL_CLEAR, levelClear); } Защищенная функция levelClear (событие: Event): пустота {owner.

destroy (); }} <Р> Теперь все лица, созданные в ходе уровне, либо загружены непосредственно из декларации XML или созданные во время выполнения, получить новый компонент DestroyOnLevelClearComponent.

код

SwitchLevelComponent является используется для того чтобы послать четкий событие уровне, а затем потребовать, чтобы новый уровень будет загружен LevelManager. Мы использовали события клавиатуры, в отличие от проверки, чтобы увидеть, если ключ был нажатии каждый кадр, чтобы убедиться, что процесс очистки уровень и погрузка осуществляется один раз

. <Р> SwitchLevelComponent.

as

 общественного класса SwitchLevelComponent распространяется EntityComponent {публичный уровень вар: INT = -1; Функция SwitchLevelComponent общественности () {супер (); } Функция коррекции защищены onAdd (): пустота {super.onAdd (); Global.mainStage.addEventListener (KeyboardEvent.KEY_UP, KeyUp); }

Page   <<       [1] [2] >>
Copyright © 2008 - 2016 Чтение Образование Статьи,https://ru.nmjjxx.com All rights reserved.