actionscript Code:
import flash.display.*;
import mx.transitions.Tween;
import mx.transitions.easing.*;
import flash.filters.GlowFilter;
Stage.scaleMode = "noScale";
var projectArray:Array = new Array();
//map code
map.createEmptyMovieClip("placeholder",map.getNextHighestDepth());
var mapListener:Object = new Object();
var mapLoader:MovieClipLoader = new MovieClipLoader();
mapListener.stopOnStart = false;
mapListener.loadStarted = false;
mapListener.mc = map.placeholder;
mapListener.mcl = mapLoader;
mapListener.stopLoad = function() {
if (this.loadStarted) {
this.mcl.unloadClip(this.mc);
} else {
this.stopOnStart = true;
}
};
mapListener.onLoadStart = function(target_mc:MovieClip) {
if (this.stopOnStart) {
this.mcl.unloadClip(target_mc);
} else {
this.loadStarted = true;
}
preloader._visible = true;
};
mapListener.onLoadComplete = function(target_mc:MovieClip) {
preloader._visible = false;
};
mapListener.onLoadInit = function() {
this.mc.forceSmoothing = true;
};
//add map listener
mapLoader.addListener(mapListener);
//load xml
var myXML = new XML();
myXML.ignoreWhite = true;
myXML.onLoad = function(success) {
if (success) {
//load map image
map_image = myXML.firstChild.childNodes[0].childNodes[2].firstChild.nodeValue;
mapLoader.loadClip(map_image,map.placeholder);
showProjects();
} else {
trace("XML not loaded");
}
};
myXML.load("content/content.xml");
/* --------------------------------------------------------------------------------
PROJECT
---------------------------------------------------------------------------------*/
function showProjects() {
// Get buildings node
nodepath = myXML.firstChild.childNodes[1].childNodes[4].childNodes[0].childNodes[1];
//total buildings
ptotal = nodepath.childNodes.length;
var pLoader:MovieClipLoader = new MovieClipLoader();
var pPreloader = new Object();
pPreloader.onLoadStart = function(target) {
trace("load started......");
};
pPreloader.onLoadInit = function(target) {
trace("load complete.......");
var addHit = target._parent.attachMovie(target._parent._name, "hit", target._parent.getNextHighestDepth());
addHit.onRollOver = function() {
trace("ID CHECK: " + this._parent.id);
showTooltip(this._parent.id);
};
addHit.onRollOut = function() {
hideTooltip();
};
addHit.onRelease = function() {
//showDetails(this._parent..id);
};
};
//add listener
pLoader.addListener(pPreloader);
for (i = 0; i < ptotal; i++) {
//declare vars
var pimage = nodepath.childNodes[i].childNodes[0].firstChild.nodeValue;
var ptitle = nodepath.childNodes[i].attributes.label;
var phit = nodepath.childNodes[i].childNodes[1].firstChild.nodeValue;
var ptooltip = nodepath.childNodes[i].childNodes[2].firstChild.nodeValue;
var pmenu = nodepath.childNodes[i].attributes.label;
var pstatus = nodepath.childNodes[i].attributes.status;
var prent = nodepath.childNodes[i].attributes.rent;
var pmc = projects.createEmptyMovieClip(phit, projects.getNextHighestDepth());
var imageHolder = pmc.createEmptyMovieClip("imageHolder", pmc.getNextHighestDepth());
projectArray.push({pimage:pimage, ptitle:ptitle, phit:phit, ptooltip:ptooltip, pmenu:pmenu, pstatus:pstatus, prent:prent, pmc:pmc, imageHolder:imageHolder});
var targetClip = eval(projectArray[i].pmc);
targetClip.id = i;
pLoader.loadClip(projectArray[i].pimage,projectArray[i].imageHolder);
//trace("TARGET CLIP ID: " + targetClip.id);
//trace("ID CHECK OG: " + projectArray[i].pmc.id + newline);
}
}
/* --------------------------------------------------------------------------------
TOOLTIP
---------------------------------------------------------------------------------*/
function showTooltip(id:Number) {
// Attach Tooltip
if (_root._xmouse < 490) {
tooltip_holder.attachMovie("tooltip_right","tooltip",tooltip_holder.getNextHighestDepth());
} else {
tooltip_holder.attachMovie("tooltip_left","tooltip",tooltip_holder.getNextHighestDepth());
}
//update initplacement
tooltip_holder.tooltip._x = _root._xmouse;
tooltip_holder.tooltip._y = (_root._ymouse) - 25;
// Follow Mouse
mylistener = new Object();
mylistener.onMouseMove = function() {
tooltip_holder.tooltip._x = _root._xmouse;
tooltip_holder.tooltip._y = (_root._ymouse) - 25;
updateAfterEvent;
};
Mouse.addListener(mylistener);
tooltip_holder.tooltip.info.kop.htmlText = projectArray[id].ptitle.toUpperCase();
var tooltipLoader:MovieClipLoader = new MovieClipLoader();
var tooltipListener = new Object();
tooltipLoader.addListener(tooltipListener);
tooltipListener.onLoadInit = function(target) {
scaleThumbs(target,100,70);
};
tooltipLoader.loadClip(projectArray[id].ptooltip,tooltip_holder.tooltip.info.picholder);
}
// Hide tooltip
function hideTooltip() {
Mouse.removeListener(mylistener);
tooltip_holder.tooltip.removeMovieClip();
}