Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1095
  • Last Modified:

Flash ActionScript 2 HELP attachMovie refuses to work

This code works perfectly in on project - but not this one.

XML loads perfectly
Loops work
Declarations work
Array Works

But the attachMovie refuses to do anything.
As I said, this works in another project - just not this one.

I tried setting the library item to "export" but it's not set that way in the other project AND it didn't fix it this time.

The only real difference betweeen projects, that that this SWF is embedded one level deeper.

Old File: _level0.container_r.contentMain_mc
This File: _level0.shell_mc.loader_r.contentMain_mc

What am I missing? Or do I need to post more?
var floorplanArray:Array = new Array();
 
var myxml:XML = new XML();
myxml.ignoreWhite = true;
myxml.onLoad = function(success) {
	trace("success");
	var comm = "aaa"
	var itemY = this.firstChild.childNodes;
	if (success) {
		// Scroller XML
		var newY = 0;
		for (var j:Number = 0; j < itemY.length; j++) {
			var comm = myVariables.getNewComm();
			var srchComm = itemY[j].firstChild.firstChild.nodeValue;
			if (srchComm == comm) {
				trace(j+" - "+comm+" ok"); //returns 1 - aaa ok
				var temp_mc:MovieClip = shell_mc.loader_r.contentMain_mc.attachMovie("itemY","itemY"+j,j);
				temp_mc._y += newY;
				newY = newY+(temp_mc._height + space);
				contentMain_mc.back_mc._height = j * (temp_mc._height + space);
 
				trace(itemY[j].firstChild.firstChild.nodeValue);
				temp_mc.planComm = itemY[j].firstChild.firstChild.nodeValue;
				temp_mc.planID = itemY[j].childNodes[1].firstChild.nodeValue;
				temp_mc.planName = itemY[j].childNodes[2].firstChild.nodeValue;
 
				floorplanArray.push(temp_mc.planComm);
				floorplanArray.push(temp_mc.planID);
				floorplanArray.push(temp_mc.planName);
 
				//Scroller Display 
				url = srcPl + job + "pl_" + temp_mc.planComm + "-" + temp_mc.planID + ".swf";
				loader.loadClip(url,temp_mc.item_floorplan);
 
				temp_mc.onPress = function(planID) {
					changeMasterPlan(this.planID);
				};
				
				trace("temp_mc test:");
				trace("  temp_mc.planComm: "+temp_mc.planComm); // returns perfectly
				trace("  "+temp_mc.planID); //returns undefined
				trace("  "+temp_mc.planName); //returns undefined
				trace("  "+temp_mc._y); //returns undefined
			}
		}
		contentMain_mc.item0.onRelease();
		//startPreload(item[0].childNodes[1].firstChild.nodeValue);
	} else {
		trace("error");
	}
	
 
	
};
myxml.load(path);
contentMain_mc.createEmptyMovieClip("back_mc",this.getNextHighestDepth());
contentMain_mc.setMask(maskedView);
trace(contentMain_mc); //returns _level0.shell_mc.loader_r.contentMain_mc

Open in new window

0
LazarusBlack
Asked:
LazarusBlack
  • 5
  • 2
1 Solution
 
Aneesh ChopraCommented:
For your info,

AttachMovie cannot be used to attach a movieClip inside an externally loaded SWF.
This is not allowed and not possible in any way..

-------------------
Aneesh Chopra
-------------------
0
 
LazarusBlackAuthor Commented:
I'm sorry but you are not correct. As I said, it works here perfectly:

http://betalennar.zadv.com/_WebSites/Plasma/index.htm

The "shell.swf" uses containerPrime.loadMovie("xxx") to load fp-r.swf which in turn uses the script posted above. Works GREAT!

But I'm updating this same project to a slight different configuration. The new configuration uses:

"shell.swf" to load "timeline.swf" which then loads "fp-r.swf".

Now, it's not working. Need another solution.



0
 
LazarusBlackAuthor Commented:
Wait. Maybe you misunderstood - the attachMovie is inside the fp-r.swf,

You would be correct if I was using attachMovie from shell.swf or timeline.swf.

Still need a solution.
0
Easily Design & Build Your Next Website

Squarespace’s all-in-one platform gives you everything you need to express yourself creatively online, whether it is with a domain, website, or online store. Get started with your free trial today, and when ready, take 10% off your first purchase with offer code 'EXPERTS'.

 
Aneesh ChopraCommented:
I got it right,
trying to explain it again..

MovieClip.attachMovie method uses a linkageID of an library item..
I want to explain that, linkageID of the library of an SWF can't be attached in any child SWFs movieClip..

earlier, you were loading "timeline.swf" into "shell.swf" and attachMovie command may be inside "timeline.swf" and which might be using the linkageID of a library Item of "timeline.swf" which means attaching in same SWF which were working..

now you may be trying to attach the linkageID item of the library "timeline.swf" into the movieClip of "fp-r.swf"
as per my explaination that will not work.
0
 
LazarusBlackAuthor Commented:
Thank you.

>you may be trying to attach the linkageID item of the library "timeline.swf" into the movieClip of "fp-r.swf"

I am not trying to do this.

The linkage is inside "fp-r.swf" drawing in "1.swf, "2.swf" or whatever the XML wants.

Does that help?
0
 
LazarusBlackAuthor Commented:
I am now confident that there is nothing wrong with the code.

It's some other feature of Flash attaching movies that I don't know that is the problem.
0
 
LazarusBlackAuthor Commented:
found the culprit. there was a corrupt container_mc requiring the inclusion of 2 other empty mc!!!

once I copied the 2 missing mcs from the old working file into the new file, everything worked.

still can't figure out how the master container references them. one is listed as 'for export' but i can't find any object on the stage OR any declaration in the code.

Thanks anyway.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Get 10% Off Your First Squarespace Website

Ready to showcase your work, publish content or promote your business online? With Squarespace’s award-winning templates and 24/7 customer service, getting started is simple. Head to Squarespace.com and use offer code ‘EXPERTS’ to get 10% off your first purchase.

  • 5
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now