i’m making a gallery site.i want to use this code in many frames(the same gallery code for : gallery1 , gallery2 , gallery3)
when i copy frames, i get error : 1151 a conflict with definitions…
i tired to uncheck automatically declare stage instances.but that doesnt work.
i also get error : 1021 duplicate function definition.
//-----------------------CODE FOR XML THUMBS--------------------------//
var container:Sprite = new Sprite();
var continerIn:Sprite = new Sprite();
var xmlLoader:URLLoader;
var xml:XML;
var xmlList:XMLList;
var totalEntries:int;
var arThumbsPath:Array = new Array();
var arBigImagesPath:Array = new Array();
var arForThumbs:Array = new Array();
var currentId:int = 0;
function initXML(path:String):void {
xmlLoader = new URLLoader();
xmlLoader.load(new URLRequest(path));
xmlLoader.addEventListener(Event.COMPLETE,onComplete);
function onComplete(e:Event):void {
xml = new XML(e.target.data);
xmlList = xml.image;
totalEntries = xml.image.length();
addChild(container);
container.addChild(masc);
container.addChild(continerIn);
continerIn.mask = masc;
container.alpha = 0;
addHolders();
loadImage(arBigImagesPath[0],back);
checkThumbs(0);
}
}
//-------------------------ADD THUMBS---------------------------------//
function addHolders():void {
for (var i:int = 0; i<totalEntries; i++) {
arThumbsPath* = xml.image*.thumb;
arBigImagesPath* = xml.image*.big_image;
var hold:MovieClip = new thumb_mc();
hold.name = "holder" + i;
hold.id = i;
hold.x = i *(hold.width + 2);
hold.holder.buttonMode = true;
loadSmallImage(arThumbsPath*,hold.holder);
hold.holder.addEventListener(MouseEvent.MOUSE_OVER, thumbMosueOver);
hold.holder.addEventListener(MouseEvent.MOUSE_OUT, thumbMouseOut);
hold.holder.addEventListener(MouseEvent.MOUSE_DOWN, thumbMouueDown);
continerIn.addChild(hold);
}
}
//---------------------------CODE FOR LOADING THUMBS-----------------------------//
function loadSmallImage(path:String,holder:MovieClip):void {
var loader:Loader;
arForThumbs.push(loader = new Loader());
loader.load(new URLRequest(path));
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,handleComplete);
function handleComplete(e:Event) {
bitmap = loader.content;
bitmap.width = 70;
bitmap.height = 70;
holder.addChild(bitmap);
loader.contentLoaderInfo.removeEventListener(Event.COMPLETE,handleComplete);
loader = null;
}
}
//----------------------------FILTERS AND FUNCTION FOR BUTTONS--------------------------------//
function thumbMosueOver(e:MouseEvent):void {
alphaUp(e.currentTarget);
}
function thumbMouseOut(e:MouseEvent):void {
alphaDown(e.currentTarget);
}
function thumbMouueDown(e:MouseEvent):void {
//deleteNavigate();
//deleteOnMV();
disableAll();
currentId = e.currentTarget.parent.id;
checkThumbs(e.currentTarget.parent.id);
loadNextPicture(back);
}
function alphaUp(mc:MovieClip):void {
Tweener.addTween(mc, {alpha:1,time:.6});
}
function alphaDown(mc:MovieClip) {
Tweener.addTween(mc, {alpha:.5,time:.6});
}
//-------------------------CODE FOR CHECKING THUMBS-----------------//
var prevThumb:MovieClip;
var firstTimeLoadedThumb:Boolean = true;
function checkThumbs(id:int):void {
for (var i:int = 0; i< totalEntries; i++) {
if (id == continerIn.getChildByName("holder"+i).id) {
try {
alphaDown(prevThumb);
} catch (e:Error) {
}
continerIn.getChildByName("holder" + i).holder.alpha = 1;
prevThumb = continerIn.getChildByName("holder" + i).holder;
continerIn.getChildByName("holder" + i).holder.removeEventListener(MouseEvent.MOUSE_OVER, thumbMosueOver);
continerIn.getChildByName("holder"+i).holder..removeEventListener(MouseEvent.MOUSE_OUT, thumbMouseOut);
continerIn.getChildByName("holder"+i).holder.mouseChildren = false;
continerIn.getChildByName("holder"+i).holder.mouseEnabled = false;
} else {
if (continerIn.getChildByName("holder"+i).holder.mouseChildren == false) {
//alphaDown(prevThumb);
} else {
continerIn.getChildByName("holder" + i).holder.alpha = .5;
}
continerIn.getChildByName("holder"+i).holder.mouseChildren = true;
continerIn.getChildByName("holder"+i).holder.mouseEnabled = true;
continerIn.getChildByName("holder" + i).holder.addEventListener(MouseEvent.MOUSE_OVER, thumbMosueOver);
continerIn.getChildByName("holder" + i).holder.addEventListener(MouseEvent.MOUSE_OUT, thumbMouseOut);
}
}
}
//--------------------------LOAD NEXT IMAGE--------------------------------//
function loadNextPicture(mc:*):void {
unSsmoothBigImage();
Tweener.addTween(mc, {alpha:0,time:1});
Tweener.addTween(mc, {_ColorMatrix_matrix:mixedMatrix,time:.5, onComplete:loadOn});
}
//------------------------EFFECT CODE-----------------------------------//
function loadOn():void {
try {
disposeImage()
back.removeChildAt(0);
back.removeChildAt(1);
} catch (e:*) {
}
back.alpha = 1;
back.filters = [];
loadImage(arBigImagesPath[currentId],back);
trace("done");
}
//--------------------------CODE FOR LOADING BIG IMAGE---------------------//
function loadImage(path:String,holder:MovieClip):void {
loader_mc.txt.text = "LOADING 0%";
if (firstTimeLoading) {
loader_mc.gotoAndStop(1);
loader_mc.visible = true;
} else {
loader_mc.visible = true;
loader_mc.gotoAndStop(2);
}
var loader:Loader = new Loader();
loader.load(new URLRequest(path));
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,handleComplete);
loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,onProgress);
loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR,error);
function onProgress(e:ProgressEvent):void {
var percent:Number = e.target.bytesLoaded/e.target.bytesTotal;
loader_mc.txt.text = "LOADING " + Math.round(percent * 100) + "%";
}
function error(e:IOErrorEvent):void {
}
function handleComplete(e:Event) {
isLoading = true;
var bitamp1:Bitmap = new Bitmap();
bitamp1 = loader.content;
bitamp1.x = bitamp1.width/2 * -1;
bitamp1.y = bitamp1.height/2 * -1;
holder.addChild(bitamp1);
loader.contentLoaderInfo.removeEventListener(Event.COMPLETE,handleComplete);
loader.contentLoaderInfo.removeEventListener(IOErrorEvent.IO_ERROR,error);
if (firstTimeLoading) {
reasizeBack(bitamp1.width, bitamp1.height);
initGraphics();
firstTimeLoading = false;
} else {
reasizeBack(bitamp1.width, bitamp1.height);
back.visible = false;
initGraphics();
}
enableAll();
loader_mc.visible = false;
bitamp1 = null;
loader = null;
}
}
//--------------------------------DISPOSE IMAGE----------------------------------//
function disposeImage():void{
back.getChildAt(0).bitmapData.dispose()
}
//--------------------------------DISABLE ENABLE ALL-----------------------------//
function disableAll():void {
stage.mouseChildren = false;
}
function enableAll():void {
stage.mouseChildren = true;
}
and the other code (init layer) :
import flash.filters.BlurFilter;
import caurina.transitions.*;
import caurina.transitions.properties.ColorShortcuts;
import caurina.transitions.properties.FilterShortcuts;
ColorShortcuts.init();
FilterShortcuts.init();
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
var firstTimeLoading:Boolean = true;
var Wy:Number;
var Hy:Number;
var blankSprite:MovieClip = new blankSpr();
var masc:Sprite = new Sprite();
var dumSprite:Sprite = new Sprite();
var defalultMatrix:Array = new Array(1, 0, 0, 0, 0,0, 1, 0, 0, 0,0, 0, 1, 0, 0,0, 0, 0, 1, 0);
var mixedMatrix:Array = [3.3946,6.7034,0.902,0,-1735,3.3946,6.7034,0.902,0,-1735,3.3946,6.7034,0.902,0,-1735,0,0,0,1,0];
var currentWidth:Number;
var currentHeight:Number;
var prevHeight:Number;
var prevWidth:Number;
var isLoading = false;
function rezieStuff(e:Event):void {
trace(isLoading);
redim(back,8,true);
}
function repositionLoader(e:Event):void {
loader_mc.x = stage.stageWidth/2;
loader_mc.y = stage.stageHeight/2;
}
init();
//----------------------------INIT GALLERY---------------------------------------//
function init():void {
initXML("load/load.xml");
stage.addEventListener(Event.RESIZE,repositionLoader);
loader_mc.x = stage.stageWidth/2 ;
loader_mc.y = stage.stageHeight/2;
}
//-----------------------------CREATE THE BLANK SPRITE AND OTHER STUFF---------------------------//
function initGraphics():void {
if (firstTimeLoading) {
stage.addEventListener(Event.RESIZE,rezieStuff);
disableAll();
masc.graphics.beginFill(0x00FF00,1);
masc.graphics.drawRect(0,0,10,10);
masc.graphics.endFill();
dumSprite.addChild(blankSprite);
dumSprite.alpha = 0;
addChild(dumSprite);
setChildIndex(dumSprite,0);
Tweener.addTween(dumSprite,{alpha:1,time:1});
container.alpha = 0;
Tweener.addTween(container,{alpha:1,time:1,delay:.6, onComplete:initMovmentThumbContainer});
reasizeBack( back.width, back.height);
back.filters = [new ColorMatrixFilter(mixedMatrix)];
normalImage(back);
redim(back,8,false);
} else {
disableAll();
back.alpha = 0;
reloadAndResize(back,8);
}
}
function initMovmentThumbContainer():void {
checkTween();
}
function reasizeBack(W:Number,H:Number):void {
currentHeight = dumSprite.height;
currentWidth = dumSprite.width;
Wy = blankSprite.width = W;
Hy = blankSprite.height = H;
}
//------------------------EFFECT CODE-----------------------------------//
function normalImage(mc:*) {
enableAll();
dumWidth = back.width;
dumHeight = back.height;
unSsmoothBigImage();
mc.alpha = 0;
Tweener.addTween(mc, {alpha:1,time:1});
Tweener.addTween(mc, {_ColorMatrix_matrix:defalultMatrix,time:.6, onComplete:normalImageComplete});
}
function normalImageComplete():void {
isLoading = false;
smoothBigImage();
back.filters = [];
}
function mixedImage(mc:*) {
enableAll();
isLoading = false;
unSsmoothBigImage();
mc.alpha = 0;
Tweener.addTween(mc, {alpha:1,time:1});
Tweener.addTween(mc, {_ColorMatrix_matrix:defalultMatrix,time:.6, onComplete:doneMixed});
}
function doneMixed():void {
checkTween();
smoothBigImage();
back.filters = [];
}
//--------------SMOOTH UNSMOOTH CODE-------------------//
function smoothBigImage():void {
for (var i:int = 0; i<totalEntries; i++) {
try {
back.getChildAt(i).smoothing = true;
} catch (e:Error) {
break;
}
}
}
function unSsmoothBigImage():void {
for (var i:int = 0; i<totalEntries; i++) {
try {
back.getChildAt(i).smoothing = false;
} catch (e:Error) {
trace("error");
break;
}
}
}
//-----------------------------RELOAD FUNCTION-----------------------------------//
function reloadAndResize(mc:*, limit:Number):void {
var W:Number = stage.stageWidth-limit;
var H:Number = stage.stageHeight-limit;
var mc:* = mc;
trace(Wy);
var ww1:Number = Wy;
var hh1:Number = Hy;
if (W<ww1 || H<hh1) {
var ttx:Number = W/ww1;
var tty:Number = H/hh1;
ttx<tty ? tt=ttx : tt=tty;
} else {
tt = 1;
}
var tt1w:Number = Math.round(ww1*tt);
var tt1h:Number = Math.round(hh1*tt);
mc.scaleX = tt;
mc.scaleY = tt;
mc.x = (W/2)+(limit/2);
mc.y = (H/2)+(limit/2);
masc.width = tt * Wy;
dumSprite.height = currentHeight;
dumSprite.width = currentWidth;
masc.width = currentWidth - limit;
Tweener.addTween(masc,{width:tt * Wy,time:.5});
Tweener.addTween(container,{x:((W-tt1w)/2+(limit/2) - limit/2)+5, y:((H-tt1h)/2+(limit/2)- limit/2)+ 5,time:.5});
Tweener.addTween(dumSprite,{x:(W/2)+(limit/2), y:(H/2)+(limit/2),width:tt * Wy+limit,height:tt * Hy+limit, time:.5, onComplete:showPicture});
}
function showPicture():void {
redim(back,8,false);
back.visible = true;
mixedImage(back);
}
//-----------------------------RESIZE FUNCTION-----------------------------------//
function redim(mc:*, limit:Number,tween:Boolean = false):void {
var W:Number = stage.stageWidth-limit;
var H:Number = stage.stageHeight-limit;
var mc:* = mc;
var ww1:Number = Wy;
var hh1:Number = Hy;
if (W<ww1 || H<hh1) {
var ttx:Number = W/ww1;
var tty:Number = H/hh1;
ttx<tty ? tt=ttx : tt=tty;
} else {
tt = 1;
}
var tt1w:Number = Math.round(ww1*tt);
var tt1h:Number = Math.round(hh1*tt);
mc.scaleX = tt;
mc.scaleY = tt;
mc.x = (W/2)+(limit/2);
mc.y = (H/2)+(limit/2);
dumSprite.width = tt * Wy+limit;
dumSprite.height = tt * Hy+limit;
dumSprite.x = (W/2)+(limit/2);
dumSprite.y = (H/2)+(limit/2);
container.x = ((W-tt1w)/2+(limit/2) - limit/2)+5;
container.y = ((H-tt1h)/2+(limit/2)- limit/2)+ 5;
masc.width = tt * Wy;
masc.height = 75;
}
function tweensComplete():void {
smoothBigImage();
}
//-----------------------------THUMB NAVIGATION------------------------------//
function checkTween():void {
if (continerIn.x < -((continerIn.width) - masc.width)) {
Tweener.addTween(continerIn,{x:-((continerIn.width) - masc.width),time:.5, onComplete:continueThumbNavigation});
} else {
startNavigate();
}
}
function continueThumbNavigation():void {
startNavigate();
}
function startNavigate():void {
stage.addEventListener(Event.ENTER_FRAME,moveThumbs);
}
var blur:BlurFilter = new BlurFilter(0,0,3);
continerIn.filters = [blur];
function moveThumbs(e:Event):void {
var target:Number = ((continerIn.width - masc.width) * (container.mouseX/masc.width)) *-1;
var speed:Number = (target - continerIn.x) * .09;
blur.blurX = Math.floor(Math.abs(speed*2));
continerIn.filters = [blur];
if (masc.hitTestPoint(stage.mouseX,stage.mouseY,false)) {
targetAlpha = 1;
vAlpha = (targetAlpha - continerIn.alpha) *.05;
continerIn.alpha += vAlpha;
continerIn.x += speed;
} else {
targetAlpha = 0;
vAlpha = (targetAlpha - continerIn.alpha) *.05;
continerIn.alpha += vAlpha;
if (continerIn.alpha == 0) {
//deleteNavigate();
//moveMs();
}
}
if (continerIn.width > masc.width) {
}
}
function deleteNavigate():void {
stage.removeEventListener(Event.ENTER_FRAME,moveThumbs);
}
function moveMs():void {
stage.addEventListener(MouseEvent.MOUSE_MOVE,checkThumbMovement);
}
function checkThumbMovement(e:MouseEvent):void {
if (container.hitTestPoint(stage.mouseX,stage.mouseY,false)) {
checkTween();
deleteOnMV();
}
}
function deleteOnMV():void {
stage.removeEventListener(MouseEvent.MOUSE_MOVE,checkThumbMovement);
}
//---------------------ALTERNATIVE FOR THE THUMB SCROLLER---------------------------------//
/*function moveThumbs(e:Event):void {
if (masc.hitTestPoint(stage.mouseX,stage.mouseY,false)) {
addToX = (mouseX - stage.stageWidth/2) / 40;
targetAlpha = 1;
vAlpha = (targetAlpha - continerIn.alpha) *.05;
continerIn.alpha += vAlpha;
} else {
addToX = 0;
targetAlpha = 0;
vAlpha = (targetAlpha - continerIn.alpha) *.05;
continerIn.alpha += vAlpha;
if (continerIn.alpha == 0) {
deleteNavigate();
moveMs();
}
}
if (continerIn.width > masc.width) {
//target = continerIn.x + addToX * -1;
//vx = (target - continerIn.x) *.5;
continerIn.x = continerIn.x + ( addToX * -1);
if (continerIn.x > 0) {
continerIn.x = 0;
} else if (continerIn.x < -((continerIn.width) - masc.width)) {
trace("here");
continerIn.x = -((continerIn.width) - masc.width);
}
} else {
continerIn.x = 0;
}
}*/