Hola, estoy tratando de hacer un scroll horizontal el cual ya tengo avanzado en un 90%. Lo único que me queda por hacer, es vincular las imágenes con un swf externo que se cargue en la misma película. Les paso a mostrar lo que he realizado.

AS

Código :

stop();

import mx.transitions.*;
import mx.transitions.easing.*;

Stage.align = "TL";
Stage.scaleMode = "noScale";

var smItems:Array = new Array();
var origSmItems:Array = new Array();
var lgItems:Array = new Array();
var linkItems:Array = new Array();
var smItems_mc:MovieClip = this.createEmptyMovieClip("si", this.getNextHighestDepth());
smItems_mc.swapDepths(block_mc);
var lgItems_mc:MovieClip = this.createEmptyMovieClip("li", this.getNextHighestDepth());

smItems_mc._x = 65;
smItems_mc._y = 170;
lgItems_mc._x = 65;
lgItems_mc._y = 170;
lgItems_mc.setMask(mask_mc);

var curNews:MovieClip;
var oldNews:MovieClip;

var numItems:Number = 0;  
var curScrolled:Number = 0;
var scrollAmt_big:Number = 220;
var scrollAmt_sm:Number = 220;
var nowScrolling:Number = 0;

var newsXml:XML = new XML();
newsXml.ignoreWhite = true;
newsXml.onLoad = function(good) {
   if (good) {
      var myNews:Array = this.firstChild.childNodes;
      var len:Number = myNews.length;
      for (var i = 0; i < len; i++) {
         var ni_l:MovieClip = lgItems_mc.attachMovie("newsItem_lg", "ni_l" + i, lgItems_mc.getNextHighestDepth(), {_x:i * scrollAmt_big});
         var ni_s:MovieClip = smItems_mc.attachMovie("newsItem_sm", "ni_s" + i, smItems_mc.getNextHighestDepth());
         ni_s._x = i * scrollAmt_sm;
         if (i > 0) {
            ni_s._x += 0;
         }
         ni_s.id = i;
         
         lgItems.push(ni_l);
         smItems.push(ni_s);
         origSmItems.push(ni_s);
         linkItems.push(myNews[i].lastChild.firstChild.nodeValue);
         
         ni_s.hl_txt.htmlText = ni_l.hl_txt.htmlText = myNews[i].firstChild.firstChild;
         ni_s.info_txt.htmlText = ni_l.info_txt.htmlText = myNews[i].firstChild.nextSibling.firstChild;
         ni_l.imagen.loadMovie(myNews[i].childNodes[2].firstChild.nodeValue);
         ni_s.imagen.loadMovie(myNews[i].childNodes[2].firstChild.nodeValue);
      }
      initMenu();
   } else {
      trace("no se es posible mostrar el contenido...");
   }
};

function setBtns(whichWay:Boolean):Void {
   up_btn.enabled = whichWay;
   down_btn.enabled = whichWay;
   for (menItem in smItems){
      smItems[menItem].enabled = whichWay;
   }
}

function initMenu():Void {
   numItems = smItems.length;
   curNews = smItems[0];
   curNews.enabled = false;
   for (var i = 0; i < numItems; i++) {
      var menItem_sm:MovieClip = smItems[i];
      var menItem_bg:MovieClip = lgItems[i];
      menItem_sm.onRelease = function() {         
         setBtns(false);
         var m:Number = this.id - curNews.id;
         if (m > 0) {
            smItems = smItems.sort();
            lgItems = lgItems.sort();
         } else {
            smItems = smItems.sort(2);
            lgItems = lgItems.sort(2);
         }
         
         curNews.enabled = true;
         oldNews = curNews;
         curNews = this;
         curNews.enabled = false;
         curScrolled = 0;
         
         nowScrolling = setInterval(moveMenuItems, 100, m);
      };
   }

   go_btn.onRelease = function() {
      loadMovieNum(linkItems[curNews.id], 2);
   };

   up_btn.onRelease = function() {
      if (curNews.id != 0) {
         origSmItems[curNews.id - 1].onRelease();
      }
   };
   down_btn.onRelease = function() {
      if (curNews.id != numItems - 1) {
         origSmItems[curNews.id + 1].onRelease();
      }
   };
   
}

function easeMenuItem(smc:MovieClip, bmc:MovieClip, sendy:Number, bendy:Number):Void {
   var time:Number = 15;
   var easeType:Function = Strong.easeOut;
   var tweenListener:Object = new Object();
   tweenListener.onMotionFinished = function() {
      //  i.e if the last item to animate is done moving - make the scroll buttons functional again
      if (bmc == lgItems[lgItems.length - 1]) {
         setBtns(true);
      }
   };
   var yTween_lg:Tween = new Tween(bmc, "_x", easeType, bmc._x, bendy, time);
   var yTween_sm:Tween = new Tween(smc, "_x", easeType, smc._x, sendy, time);
   yTween_lg.addListener(tweenListener);
}

function moveMenuItems(mult:Number):Void {
   var bty:Number = lgItems[curScrolled]._x - (mult * scrollAmt_big);
   var sty:Number = smItems[curScrolled]._x - (mult * scrollAmt_sm);
   
   if (mult > 0) {
      if (smItems[curScrolled].id > oldNews.id && smItems[curScrolled].id <= curNews.id) {
         sty -= 0;
      }
   } else if (mult < 0) {
      if (smItems[curScrolled].id > curNews.id && smItems[curScrolled].id <= oldNews.id) {
         sty += 0;
      }
   }
   easeMenuItem(smItems[curScrolled], lgItems[curScrolled], sty, bty);
   if (curScrolled++ >= numItems) {
      clearInterval(nowScrolling);
   }
}

newsXml.load("xml/bitacora.xml");


XML

Código :

<?xml version="1.0" encoding="UTF-8"?>
<news>
   <item>
      <titulo>Museo Gabriela Mistral de Vicuña</titulo>
      <descripcion><![CDATA[El lunes 10 de diciembre de 2007, la entonces ministra de educación Yasna Provoste y la Directora de la Dirección de Bibliotecas, Archivos y Museos, Nivia Palma, recibieron oficialmente 168 cajas provenientes de Estados Unidos, con el legado de Gabriela Mistral, que fuera donado al Estado de Chile por Doris Atkinson, sobrina de su secretaria, albacea y heredera Doris Dana.]]></descripcion>
      <imagen>imagenes/bitacora/museo_gabriela_mistral.jpg</imagen>
      <link>bitacora/conservacion/test.swf</link>
   </item>

</news>


Pueden ver el desarrollo de lo que he echo aqui

Espero me puedan ayudar....