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

Создание клона Space Invaders с КНОПКА - The player

движется по горизонтали

 общественный уаг screenWidth:. Int = 480; общественного скорость вар: Number = 200; общественного вар sideBuffer: INT = 32; <р> Как правило конструктор компонента не должна включать в себя любой код. Когда новый компонент создается и конструктор вызывается, он не привязан к объекту. Хотя они не используются здесь, то onAdd и OnRemove функции, по сути, эквивалентно конструктора и деструктора (для тех C ++ программистов там) 

 функция PlayerControllerComponent общественности () {супер (). } <р> Функция OnTick где мы обновляем игрока.

Во-первых, мы получаем ссылку на скорости и положения субъектов. Эти значения проводятся по пространственной составляющей и связаны в определении шаблона XML, но это не делает никакой разницы в PlayerControllerComponent, где эти значения родом. Этот вид слабой связью является одним из аспектов системы проектирования PushButton компонента. PlayerControllerComponent знает, как изменить положение и скорость объекта, но это не волнует, как будут использоваться положение и скорость

 функция общественного переопределение OnTick (тикрейтом: Number):. {Недействительными super.

onTick (тикрейтом ); вар скорость: Точка = owner.getProperty (velocityReference); вар положение: Точка = owner.getProperty (positionReference); <р> Существует всегда вероятность того, что ссылки на недвижимость не были установлены, и в этом случае положение и скорость переменные будет нулевым. Даже если освобождение Flash Player не удается молча этих видов ошибок, мы могли бы также иметь дело с этой возможностью изящно здесь не идет дальше.


, если (скорость == NULL || положение == NULL) возвращение <р> Во-первых, мы хотим, чтобы связали позицию игрока, так он не будет двигаться от края экрана 

, если (position.x> screenWidth - sideBuffer) position.x = screenWidth - sideBuffer. иначе, если (position.x <р> Затем мы должны обновить скорость в зависимости от стрелка нажатия клавиши, если таковые 

, если (InputManager.isKeyDown (InputKey.LEFT)) {velocity.x =. - Скорость;} еще, если (InputManager.isKeyDown (InputKey.RIGHT)) {velocity.x = скорость;} еще {velocity.x = 0;.

} <р> Мы затем синхронизировать эти изменения обратно в материнской компании

< PRE> owner.setProperty (positionReference, должность); owner.setProperty (velocityReference, скорость);}} <р> References.as

<р> В то время как кнопка будет обрабатывать создание компонентов из строк имя класса в XML Файл, компилятор сам A

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