variable bei attachMovie

mhh jo verstehe wie es dort gehen soll aber es geht wieder net :(

Code:
	for (var i = 0; i<entries.length; i++) {
		var c = 0;
		for (var c = 0; c<entries[i].length; c++) {
			var playername = entries[i][0];
			_root["button_mc"+i+"_"+c].playername = playername;
					
			//Button
			if (c == 0) {
				_root.attachMovie("button_mc", "button_mc"+i+"_"+c, _root.getNextHighestDepth());
				_root["button_mc"+i+"_"+c]._x = kordx-5;
				_root["button_mc"+i+"_"+c]._y = kordy;
			}
			
			//Ausrichten
			if (c == 0) {
				kordx += 60;
				_root["button_mc"+i+"_"+c]._xscale = 60;
			} else if (c == 1) {
				kordx += 55;
				_root["button_mc"+i+"_"+c]._xscale = 55;
			} else if (c == 2) {
				kordx += 65;
				_root["button_mc"+i+"_"+c]._xscale = 65;
			}
			
			//Klicken
            _root["button_mc"+i+"_"+c].onRelease = function() {
				trace(this.playername););
			};
		}					
		kordy += 20;
		kordx -= 180;
	}

so sieht das ganze aus aber ich weiß nicht ob das auch weiterhilft
 
Hi,

Du fügst dem MovieClip _root["button_mc"+i+"_"+c] die Variable "playername" hinzu, bevor Du ihn (per attachMovie) erstellst - Du kannst ja auch schlecht in ein Haus einziehen, bevor es gebaut wurde. ;)

Setze die Zeile mit der Variablenzuweisung direkt über den onPress-Handler.

Gruß
.
 
Gut hab das nun so gemacht:

Code:
			_root["button_mc"+i+"_"+c].onRelease = function() {
				_root.info.removeMovieClip();
				_root.createEmptyMovieClip("info", 99);
				var kordinfox = 200;
				var kordinfoy = 0;
				var playername = this.playername;
				var entriesinfo = new Array();
				var xminfo = new XML();
				xminfo.ignoreWhite = true;
				xminfo.onLoad = function() {
					parse(this.childNodes);
				};
				xminfo.load("playerinfo.xml");
				function parse(obj) {
					for (var j = 0; j<xminfo.childNodes.length; j++) {
						entriesinfo[j] = new Array();
						var k = 0;
						for (var l in xminfo.childNodes[j].attributes) {
							entriesinfo[j][k] = xminfo.childNodes[j].attributes[l];
							k++;
						}
					}
					for (var j = 0; j<entriesinfo.length; j++) {
						var k = 0;
						for (var k = 0; k<entriesinfo[j].length; k++) {
							if (entriesinfo[j][0] == playername) {
								//Hintergrund
								_root.info.attachMovie("background_mc", "backgroundplayerinfo_mc"+j+"_"+k, _root.getNextHighestDepth());
								_root.info["backgroundplayerinfo_mc"+j+"_"+k]._x = kordinfox;
								_root.info["backgroundplayerinfo_mc"+j+"_"+k]._y = kordinfoy;
								//Text
								_root.createTextField("playerinfo"+j+"_"+k, _root.getNextHighestDepth(), kordinfox, kordinfoy, 200, 100);
								_root.info["playerinfo"+j+"_"+k].text = entriesinfo[j][k];
								kordinfoy += 20;
							}
						}
					}
				}
			};

Jetzt ist dort aber das Problem das man dort die Schrifft nicht mehr sieht woran könnte das liegen. Denn ohne den Movieclip geht es.
 
Code:
_root.createTextField("playerinfo"+j+"_"+k, _root.getNextHighestDepth(), kordinfox, kordinfoy, 200, 100);
_root.info["playerinfo"+j+"_"+k].text = entriesinfo[j][k];
Du erstellst das Textfeld mit dem Bezeichner "playerinfoj_k" auf _root, willst aber dem Text einem Textfeld zuweisen, dass auf _root.info liegt.

Gruß
.
 

Neue Beiträge

Zurück