Как можно максимально упростить этот код, чтобы его можно было бы написать в кадре. Код рисует на сцене кнопки и подгружает к ним изображения, а упростить нужно так как кнопки уже на сцене есть. Это флэш меню при нажатии на кнопку загружается определенный контент.Пишите так же в Скайп AndreyLP

Код AS3:
package
{
import flash.display.*;
import flash.events.*;
import flash.external.ExternalInterface;
import flash.net.URLRequest;
/**
* ...
* @author ProjectSoft
*/
[Frame(factoryClass="Preloader")]
public class Main extends Sprite
{
private var container:Sprite;
public function Main():void
{
// проверяем доступность сцены. Если сцена не доступна вешаем слушатель добавления на сцену. Если доступна выполняем функцию.
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event = null):void
{
// Удаляем прослушиватель
removeEventListener(Event.ADDED_TO_STAGE, init);
// entry point
// Проверяем является ли флаш ролик контейнером, обеспечивающим работу внешнего интерфейса.
if (ExternalInterface.available) {
// Далее как хотите так и реализовывайте своё добавление объектов на сцену. В моих планах этого не было. Я просто добавил три кнопки в контейнер и выровнил его по центру.
container = new Sprite;
for (var i:int = 0; i < 3; ++i) {
var spr:Sprite = new Sprite();
spr.name = "sprite" + String(i);
spriteDraw(spr, "images/pic"+String(i+3)+".jpg");
container.addChild(spr).x = i * 260;
spr.buttonMode = true;
// Вешаем на кнопку прослушиватель клика.
spr.addEventListener(MouseEvent.CLICK, spriteHandler);
}
addChild(container);
stage.addEventListener(Event.RESIZE, resizeHandler);
resizeHandler();
}
}
private function spriteDraw(value:Sprite, pic:String):void {
if (value) {
with (value) {
graphics.beginFill(0, 1);
graphics.drawRect(0, 0, 190, 91);
graphics.endFill();
}
var loader:Loader = new Loader;
loader.load(new URLRequest(pic));
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loaderHandler);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loaderHandler);
value.addChild(loader);
value.mouseChildren = false;
}
}
private function loaderHandler(event:Event):void {
switch(event.type) {
case Event.COMPLETE: {
break;
}
case IOErrorEvent.IO_ERROR: {
break;
}
}
}
private function spriteHandler(event:MouseEvent):void {
// Обрабатываем клик по кнопкам по имени кликнутой кнопки
if(ExternalInterface.available)
switch(event.target.name) {
case "sprite0":
// Передаём в объекте данные для функции JavaScript loadHtmlContenet если кликнули по первой кнопке
ExternalInterface.call("loadHtmlContenet", {catid:1, id:162, Itemid:3});
break;
case "sprite1":
// Передаём в объекте данные для функции JavaScript loadHtmlContenet если кликнули по второй кнопке
ExternalInterface.call("loadHtmlContenet", {catid:1, id:181, Itemid:3});
break;
case "sprite2":
// Передаём в объекте данные для функции JavaScript loadHtmlContenet если кликнули по третьей кнопке
ExternalInterface.call("loadHtmlContenet", {catid:1, id:227, Itemid:3});
break;
}
}
private function resizeHandler(event:Event = null):void {
container.x = (stage.stageWidth - container.width) * .5;
container.y = (stage.stageHeight - container.height) * .5;
}
}
}