Запрос программы в действии скрипт

Я хочу написать программу, которая будет запускать анимацию, используя клавиши со стрелками на клавиатуре для навигации. Пожалуйста помоги. Этот ActionScript является языком программирования

1 ответ

Пример настройки в Flash Pro:

Настройка Flash Pro

Вы можете скачать этот проект с моего сайта:

Flash Pro CS5.5: http://www.jasonsturges.com/labs/stack-overflow/examples/hero/Hero-cs5.5.fla
Flash Pro CS5: http://www.jasonsturges.com/labs/stack-overflow/examples/hero/Hero-cs5.fla
SWF: http://www.jasonsturges.com/labs/stack-overflow/examples/hero/Hero.swf

import flash.ui.Keyboard;
import flash.events.Event;
import flash.events.KeyboardEvent;
import flash.display.DisplayObject;

// put walls in collection
var walls:Array = [ northWall, southWall, eastWall, westWall ];

// animtion listener
addEventListener(Event.ENTER_FRAME, frameHandler);

// key listeners
stage.addEventListener(KeyboardEvent.KEY_DOWN, keydownHandler);


// keyboard handling
function keydownHandler(event:KeyboardEvent):void
{
    switch (event.keyCode)
    {
        case Keyboard.RIGHT:
            moveWalls(-5, 0);
            break;
        case Keyboard.LEFT:
            moveWalls(5, 0);
            break;
        case Keyboard.UP:
            moveWalls(0, -5);
            break;
        case Keyboard.DOWN:
            moveWalls(0, 5);
            break;
    }
}

// utility to move all walls
function moveWalls(x:Number, y:Number):void
{
    for each (var wall:DisplayObject in walls)
    {
        wall.x += x;
        wall.y += y;
    }
}

// animation handler
function frameHandler(event:Event):void
{
    for each (var wall:DisplayObject in walls)
    {
        if (hero.hitTestObject(wall))
        {
            switch (wall)
            {
                case northWall:
                    moveWalls(0, -5);
                    break;
                case southWall:
                    moveWalls(0, 5);
                    break;
                case westWall:
                    moveWalls(-5, 0);
                    break;
                case eastWall:
                    moveWalls(5, 0);
                    break;
            }
        }
    }
}
Другие вопросы по тегам