 | Needs Regular Fix | | Join Date: Feb 2009 Location: UK
Posts: 356
| |
i have this code below that i made....it loads vars from txt file splits it then puts it into an array....once in an array it the brings the pics in from the array to create thumbnails and a larger image. my problem is i have captions to go with it and when i try to load the captions nothing happens or can be seen to be happening.
i dont know where i am going wrong as i have no output or compiled errors -
-
-
var locVar = new Array();
-
locVar = imgLoc.split(",");
-
trace ( locVar );
-
-
var tmbVar = new Array();
-
tmbVar = tmbLoc.split(",");
-
trace ( tmbVar );
-
-
var capVar = new Array();
-
capVar = imgCap.split(",");
-
trace ( capVar );
-
-
var NPICS:Number = locVar.length; // number of pictures to load
-
var PICX:Number = 32.8; // x loc of big picture
-
var PICY:Number = 24.9; // y loc
-
var THUMBHOLDERX:Number = 50; // x location of thumbnail holder movieclip
-
var THUMBHOLDERY:Number = 457; // y location
-
var THUMBW:Number = 100; // width of each thumbnail
-
var THUMBH:Number = 75; // height
-
var MARGIN:Number = 10; // margin between thumbnails
-
var TOTALBYTES:Number = 212000; // approx sum of bytes in all jpgs (x 2)
-
var MAXPIXELS:Number = 12; // max number of pixels to move slider per frame
-
-
// mask definition; mask is assumed to cover some part of the thumbnail slider (here the numbers
-
// were chosen so that there are margins between the mask and the right and left edges of the movie
-
// (which is 420 x 290), and enough space above and below the thumbs to show them when they 'grow'
-
// on mouseover
-
var MASKX:Number = 0; // start x location of mask
-
var MASKW:Number = 600; // mask width
-
var MASKY:Number = 447.9; // start y location of mask
-
var MASKH:Number = 92; // mask height
-
-
var totalloaded:Number = 0; // running tally of bytes loaded from all pics
-
-
// index into pictures array, used for loading
-
var ipic:Number;
-
-
// set up loader, an instance of MovieClipLoader
-
var loader:MovieClipLoader = new MovieClipLoader();
-
-
// use the main timeline to listen to and respond to loader's broadcast events
-
loader.addListener(this);
-
-
// function to move thumbnail slider ("this" = thumbs_mc)
-
-
function sliderControl() {
-
var w:Number = this._width/2;
-
var hw:Number = mask_mc._width/2;
-
var npixels:Number;
-
// only do when mouse over slider mask
-
if (_ymouse > mask_mc._y && _ymouse < mask_mc._y + mask_mc._height) {
-
// mouse over left half of slider:
-
if (_xmouse > mask_mc._x && _xmouse < mask_mc._x + hw) {
-
npixels = (hw - _xmouse) / hw * MAXPIXELS;
-
this._x += npixels;
-
if (this._x >= 0) this._x = this._x - w;
-
// mouse over right half of slider:
-
} else if (_xmouse > mask_mc._x + hw && _xmouse < mask_mc._x + mask_mc._width) {
-
npixels = (_xmouse - hw) / hw * MAXPIXELS;
-
this._x -= npixels;
-
if (this._x <= -w) this._x = this._x + w;
-
}
-
}
-
}
-
-
// thumbnail click (onrelease) handler
-
-
function openPic() {
-
pic_mc.loadMovie(locVar[this.i]);
-
}
-
-
function brightON(){
-
this._alpha = 300;
-
}
-
function brightOFF(){
-
this._alpha = 30;
-
}
-
function captionTXT(){
-
_root.cap_txt = capVar;
-
}
-
-
// assign event handlers (called when all jpgs are loaded)
-
-
function setupHandlers() {
-
pct_txt.removeTextField(); // don't need loading indicator any more
-
thumbs_mc.onEnterFrame = sliderControl;
-
for (var i:Number = 0; i < NPICS*2; i++) {
-
thumbs_mc["mc"+i].onRollOver = brightON;
-
thumbs_mc["mc"+i].onRollOut = brightOFF;
-
thumbs_mc["mc"+i].onMouseDown = captionTXT;
-
thumbs_mc["mc"+i].onRelease = openPic;
-
}
-
}
-
-
// listener function for broadcast 'done' message (for each pic)
-
// onLoadInit gets executed when the movieclip has been loaded into _mc AND
-
// its width and height data are available.
-
// (_mc = the movieclip being loaded into)
-
// this routine sets the size and position of each thumbnail clip as its jpg
-
// is loaded and starts the next one loading. When all have been loaded,
-
// a random picture is loaded into pic_mc and setupHandlers is called to
-
// assign handlers to each thumbnail movieclip
-
-
function onLoadInit(_mc:MovieClip) {
-
// this gets done when the jpg is completely loaded:
-
_mc._width = THUMBW;
-
_mc._height = THUMBH;
-
_mc._alpha = 30; // for image clarity
-
// give the movieclip a property to remind it who it is
-
// (used by openPic to know which big picture to open)
-
_mc.i = (ipic >= NPICS ? ipic-NPICS : ipic);
-
-
// add picture size to totalloaded variable
-
totalloaded += loader.getProgress(_mc).bytesTotal;
-
-
// now load the next one (if there are more) or set up handlers if done
-
ipic++;
-
if (ipic == NPICS * 2) {
-
// start with a random photo displayed when all thumbs loaded
-
pic_mc.loadMovie(locVar[Math.floor(Math.random()*NPICS)]);
-
setupHandlers();
-
} else if (ipic >= NPICS) {
-
// load jpg into duplicate thumbnail (will already be cached)
-
loader.loadClip(tmbVar[ipic-NPICS], thumbs_mc["mc"+ipic]);
-
} else {
-
// load jpg into thumbnail
-
loader.loadClip(tmbVar[ipic], thumbs_mc["mc"+ipic]);
-
}
-
}
-
-
// listener function to handle broadcast progress messages
-
// make pct_txt show cumulative loading progress
-
-
function onLoadProgress(_mc:MovieClip, loaded:Number) {
-
var loadedsofar:Number = totalloaded + loaded;
-
pct_txt.text = Math.floor(loadedsofar / TOTALBYTES * 100) + "%";
-
}
-
-
function init() {
-
// create holder for pictures
-
createEmptyMovieClip("pic_mc", 1);
-
pic_mc._x = PICX;
-
pic_mc._y = PICY;
-
-
// create (and draw) holder for thumbnails
-
createEmptyMovieClip("thumbs_mc", 2);
-
thumbs_mc.beginFill(0, 100); // black
-
thumbs_mc.moveTo(0, 0);
-
thumbs_mc.lineTo(2 * (MARGIN + THUMBW) * NPICS, 0);
-
thumbs_mc.lineTo(2 * (MARGIN + THUMBW) * NPICS, THUMBH);
-
thumbs_mc.lineTo(0, THUMBH);
-
thumbs_mc.endFill();
-
// drawing the thumb holder at 0, 0 and then moving it makes its reg point = upper left
-
thumbs_mc._x = THUMBHOLDERX;
-
thumbs_mc._y = THUMBHOLDERY;
-
-
// create, draw and enable mask over thumbs (could use different variables to define mask
-
// if desired)
-
createEmptyMovieClip("mask_mc", 3);
-
mask_mc.beginFill(0x0000cc, 100);
-
mask_mc.moveTo(0, 0);
-
mask_mc.lineTo(MASKW, 0);
-
mask_mc.lineTo(MASKW, MASKH);
-
mask_mc.lineTo(0, MASKH);
-
mask_mc.endFill();
-
mask_mc._x = MASKX;
-
mask_mc._y = MASKY;
-
thumbs_mc.setMask(mask_mc);
-
-
// create loading textfield indicator
-
createTextField("pct_txt", 4, 200, 100, 40, 100);
-
var tf:TextFormat = new TextFormat();
-
tf.align = "center";
-
tf.size = 12;
-
tf.font = "Verdana";
-
tf.color = 0xFFFF00;
-
pct_txt.setNewTextFormat(tf);
-
-
// create loading textfield indicator
-
createTextField("cap_txt", 0, 400, 200, 40, 100);
-
var cf:TextFormat = new TextFormat();
-
cf.align = "center";
-
cf.size = 12;
-
cf.font = "Verdana";
-
cf.color = 0xFFFF00;
-
cap_txt.setNewTextFormat(cf);
-
-
// make empty movieclips in thumbs_mc for each pic to go into
-
// make double the number so the slider can move continuously and show content
-
for (var i:Number = 0; i < NPICS * 2; i++) {
-
var mc:MovieClip = thumbs_mc.createEmptyMovieClip("mc"+i, i+1);
-
mc._x = i*(MARGIN + THUMBW);
-
mc._y = 0;
-
}
-
-
// set the pointer to the first jpg in the array picnames
-
ipic = 0;
-
// start loading jpgs (ipic is initialized to 0)
-
loader.loadClip(locVar[ipic], thumbs_mc["mc"+ipic]);
-
}
-
-
init();
-
stop();
-
|