.FLA
FRAME 1
Código ActionScript :
stop(); // import needed Classes import mx.transitions.Tween; import mx.transitions.easing.*; import flash.filters.BlurFilter; import flash.filters.GlowFilter; import flash.filters.DropShadowFilter; import flash.geom.*; ///////////////////Initialize Vars var siteXML:XML = new XML(); siteXML.ignoreWhite = true; // The main site XML file var siteXMLFile:String = "main.xml"; // Configs stored in XML var navPadding:Number; var myLogo:String; var backgroundMusic:Boolean = true; var myMusic:String; var navActiveColor:String; var navRollOverColor:String; var navOutlineCol; var navBGgradTop:String; var navBGgradBottom:String; var subnavActiveColor:String; var subnavRollOverColor:String; var subnavOutlineCol; var subnavBGgradTop:String; var subnavBGgradBottom:String; var navFontSize:Number; var subnavFontSize:Number; var footerInfo:String; var footerColor:String; var logoX:Number; var logoY:Number; // Navigation stored in XML var linkTotal:Number; var linkName:Array = new Array(); var linkModule:Array = new Array(); var linkData:Array = new Array(); var linkBG:Array = new Array(); var linkSubs:Array = new Array(); var menuStartPosition:Number = 0; var submenuStartPosition:Number = 0; var moduleData:String; var my_sound:Sound = new Sound(); var txtCSS = new TextField.StyleSheet(); var formatLink:TextFormat = new TextFormat(); var formatSubLink:TextFormat = new TextFormat(); subnavheader_mc._alpha = 0; sublinks_mc._alpha = 0; var currentVol:Number; // Global stylesheet - All text in every module is styled by this txtCSS.load("styles.css"); // Load site configurations and build navigation siteXML.onLoad = function(success) { if (success) { // Fill up our arrays navPadding = parseInt(this.firstChild.childNodes[0].childNodes[0].attributes.navPadding); myLogo = this.firstChild.childNodes[0].childNodes[0].attributes.myLogo; backgroundMusic = this.firstChild.childNodes[0].childNodes[0].attributes.backgroundMusic; myMusic = this.firstChild.childNodes[0].childNodes[0].attributes.myMusic; navActiveColor = this.firstChild.childNodes[0].childNodes[0].attributes.navActiveColor; navRollOverColor = this.firstChild.childNodes[0].childNodes[0].attributes.navRollOverColor; navOutlineCol = this.firstChild.childNodes[0].childNodes[0].attributes.navBGOutlineColor; navBGgradTop = this.firstChild.childNodes[0].childNodes[0].attributes.navBGtopGradientColor; navBGgradBottom = this.firstChild.childNodes[0].childNodes[0].attributes.navBGbottomGradientColor; subnavOutlineCol = this.firstChild.childNodes[0].childNodes[0].attributes.subnavBGOutlineColor; subnavBGgradTop = this.firstChild.childNodes[0].childNodes[0].attributes.subnavBGtopGradientColor; subnavBGgradBottom = this.firstChild.childNodes[0].childNodes[0].attributes.subnavBGbottomGradientColor; subnavActiveColor = this.firstChild.childNodes[0].childNodes[0].attributes.subnavActiveColor; subnavRollOverColor = this.firstChild.childNodes[0].childNodes[0].attributes.subnavRollOverColor; footerColor = this.firstChild.childNodes[0].childNodes[0].attributes.footerColor; // Apply custom attributes to the template var footerBGColor = new Color(footer_mc.bg_mc); footerBGColor.setRGB(footerColor); navFontSize = parseInt(this.firstChild.childNodes[0].childNodes[0].attributes.navFontSize); subnavFontSize = parseInt(this.firstChild.childNodes[0].childNodes[0].attributes.subnavFontSize); formatLink.size = navFontSize; formatSubLink.size = subnavFontSize; // Position Logo logoX = parseInt(this.firstChild.childNodes[0].childNodes[0].attributes.logoX); logoY = parseInt(this.firstChild.childNodes[0].childNodes[0].attributes.logoY); logo_mc._x = logoX; logo_mc._y = logoY; footerInfo = this.firstChild.childNodes[0].childNodes[1].firstChild.nodeValue; footer_mc.footer_txt.html = true; footer_mc.footer_txt.autoSize = "left"; footer_mc.footer_txt.htmlText = footerInfo; footer_mc.footer_txt.styleSheet = txtCSS; linkTotal = this.firstChild.childNodes[1].childNodes.length; for (var i:Number = 0; i<linkTotal; i++) { linkName.push(this.firstChild.childNodes[1].childNodes[i].attributes.name); linkModule.push(this.firstChild.childNodes[1].childNodes[i].attributes.module); linkData.push(this.firstChild.childNodes[1].childNodes[i].attributes.data); if (this.firstChild.childNodes[1].childNodes[i].attributes.background) { linkBG.push(this.firstChild.childNodes[1].childNodes[i].attributes.background); } else { linkBG.push(""); } if (this.firstChild.childNodes[1].childNodes[i].childNodes) { linkSubs.push(this.firstChild.childNodes[1].childNodes[i]); } else { linkSubs.push(""); } } // Build main site navigation buildMenu(); if (linkBG[0] != "") { loadBackground(linkBG[0]); } if (linkSubs[0] != "") { loadSubMenu(linkSubs[0]); } // Load logo loadMovie(myLogo, logo_mc); loadModule(0); if (backgroundMusic == "yes") { toggleMusic(false); currentVol = 100; } else { footer_mc.musicControls_mc._visible = false; } position(); } else { trace("Cannot load XML File"); } }; siteXML.load(siteXMLFile); // Load custom background function loadBackground(arg) { var myvar:String = arg; var fileExtension:String = substring(arg, arg.length-2, 3); videobackground_mc.ns.close(); videobackground_mc._alpha = 0; background_mc.target_mc._alpha = 0; // Looks for file extensions (png, jpg, jpeg, flv, swf) var cleanFileType:String = fileExtension.toLowerCase(); switch (cleanFileType) { case "jpg" : case "png" : case "epg" : case "gif" : smoothImageLoad(arg, background_mc.target_mc); break; case "flv" : case "f4v" : case "mp4" : case "m4v" : case "mpa" : case "3gp" : case "mov" : videobackground_mc.myPlay(arg); var showVideoBG:Tween = new Tween(videobackground_mc, "_alpha", None.easeOut, 0, 100, 1, true); break; case "swf" : loadSWFBG(arg, background_mc.target_mc); break; default : trace("Incorrect file type set as a background"); break; } }
MC: videobackground_mc
Código ActionScript :
var nc:NetConnection = new NetConnection(); nc.connect(null); var ns:NetStream = new NetStream(nc); ns.setBufferTime(5); video_mc.smoothing = true; trans_btn.useHandCursor = false; video_mc.attachVideo(ns); ns.onMetaData = function(obj) { //trace("FLV width: "+obj.width+" px."); //_parent.position(); }; ns.onStatus = function(info) { if (info.code == "NetStream.Play.Stop") { ns.seek(0); ns.pause(true); } //trace(info.code); }; function myPlay(vid) { vidPlaying = true; playState(); ns.play(vid); }
XML
Código XML :
<?xml version="1.0" encoding="utf-8"?> <main> <config> ............... ............... </config> <navigation> <link name="HOME" background="images/prueba.flv" /> </navigation> </main>
Desde ya muchas gracias!!!