Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 18-06-2007, 17:06   #1 (permalink)
Neuer User
 
Registriert seit: Jan 2004
Beiträge: 4
Alle Instanzen während der Laufzeit verändern?

Hallo!

Vielleicht bin ich heut nur etwas blockiert, weil nur 2h geschlafen.

Problem:
Ich habe auf der Bühne ca. 60 Instanzen eines MCs. Diese Instanzen sollen zur Laufzeit(!) per AS alle gleichzeitig skaliert werden. Gibt es eine Möglichkeit, dies zu tun, ohne umständlich alle Instanzen einzeln zu verändern. Ich will auch kein Array benutzen á la

Code:
MC[i]._xscale = 4711
Lösung:
?
matewizard ist offline   Mit Zitat antworten
Alt 18-06-2007, 17:11   #2 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.134
Meinst du mit kein Arrayzugriff auch verzicht auf eine for (var i:String in this) {} Schleife?

Dann gibts noch den Eventdispatcher.
Omega Psi ist offline   Mit Zitat antworten
Alt 18-06-2007, 17:25   #3 (permalink)
Neuer User
 
Registriert seit: Jan 2004
Beiträge: 4
Geht das nicht irgendwie über eine selbstdefinierte Klasse? Oder bring ich da was durcheinander?
matewizard ist offline   Mit Zitat antworten
Alt 18-06-2007, 17:26   #4 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.134
Da bringst du was durcheinander:
ActionScript:
  1. for (var i:String in _root) {
  2.     trace(i+", "+_root[i])
  3. }
Omega Psi ist offline   Mit Zitat antworten
Alt 18-06-2007, 18:16   #5 (permalink)
Neuer User
 
Registriert seit: Jan 2004
Beiträge: 4
Danke erst mal und falls du noch Lust hast :

Über die Methode var bin ich ja gestolpert. Ich zeig dir mal meine Ausgaben für 2 beispielhaft platzierte Instanzen (ok waren also doch nicht direkt auf der Bühne, wollte bloß die Problembeschreibung vereinfachen):

instance2, _level0.box.karte.instance2
instance1, _level0.box.karte.instance1

Code:
for (var i:String in box.karte) {
	trace(i+", "+box.karte[i]);
}

...

for (var i:String in box.karte) {
	box.karte[i]._xscale = _global.dotscale;
	box.karte[i]._yscale = _global.dotscale;
}
matewizard ist offline   Mit Zitat antworten
Alt 18-06-2007, 18:38   #6 (permalink)
Neuer User
 
Registriert seit: Jan 2004
Beiträge: 4
Kleine Ursache, große Wirkung!

Der Fehler lag natürlich in der Variable _global.dotscale. Die wird durch Eigenschaften eines anderen MCs beeinflusst. Dabei haben sich die Wirkungen gegenseitig aufgehoben und ich dachte es tut sich nichts, weil der CODE falsch ist ...

Sorry, werde wohl vor dem nächsten Debuggen erst mal ne Mütze voll Schlaf nehmen, ich Schlafmütze
matewizard ist offline   Mit Zitat antworten
Alt 18-06-2007, 18:39   #7 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 12.134
Und am besten auf global Variablen verzeichten.
Omega Psi ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 07:10 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele