Откройте файл position.fla в папке Chapter08. В этом файле есть три слоя: Assets, Actions, и Object Definitions. Слой Assets содержит все клипы и кнопки. В верхнем левом углу сцены вы видите три динамических текстовых поля. Они показывают вам текущие координаты шара в изометрической системе. В правой части сцены находятся два текстовых поля, которые показывают вам x- и y-координаты шара в системе Flash. В середине располагается клип, имя экземпляра которого floor. Floor содержит рисунок квадратного пола в изометрическом мире. Также в этом клипе содержаться экземпляры клипов с именами ball и shadow. Клип shadow будет двигаться вместе с шаром, чтобы помочь вам лучше представить, где находится шар. При изменении координаты шара y координата y для shadow не изменяется; это помогает игроку представить положения объекта.
(Визуальным откликом – или подсказкой – в 3D мире было бы изменение размеров шара в соответствии с его положением; соответствующим откликом в изометрическом мире является тень объекта, которая помогает вам понять поведение самого объекта.) В правом нижнем углу сцены есть две кнопки, которыми вы можете управлять положением шара по оси y в изометрическом мире.
Используйте ваши стрелки направления для перемещения шара. Вы можете изменить координату шара по y, используя кнопки в нижнем правом углу экрана. Обратите внимание, что ваш шар не будет двигаться через пол – наложили ограничение на октант.
Теперь давайте взглянем на код ActionScript, используемый для всего этого. Я написал объект под названием isometricAS, который содержится в слое Object Definitions. Этот объект содержит три очень полезных метода для работы с изометрией. Мы поговорим о двух из этих методов (mapToScreen () и mapToIsoWorld()) очень скоро, а третий (calculateDepth()) оставим для следующего раздела.
Код ActionScript в слое Actions использует то, что было определено в слое Object Definitions и обрабатывает такие вещи, как захват событий кнопок клавиатуры и размещение шара и тени на экране