Flashhilfe.de - Flash Community

wie dupliziere ich clips [Flash 9]

 


AntwortenRegistrieren Seite1  

Olli_K#1
Benutzerbild von Olli_K
Beiträge: 1413
Wohnort: Hauptstadt
Registriert: Dec 2004

17.12.2010, 10:13

Schreibe gerade ein AS2 Skript um und kriege folgendes nicht gebacken (siehe Komentare im Code).
ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// MC aus der Bibliothek auf die Bühne kriege ich noch hin:
var mcStrich = new Strich();
addChild(mcStrich);
mcStrich.x = xMitte;
mcStrich.y = yMitte;

// ab hier hörts auf
// würde mich sehr freuen, wenn mir eine/einer sagen kann,
// wie folgende Zeilen in AS3 aussehen müssen
var r = 0;
for (var i=0;i<30;i++){
     r += 30;
     duplicateMovieClip(Strich, "Strich"+i, this.getNextHighestDepth());
     this["Strich_"+i]._y = -160;
     this["Strich_"+i]._rotation=r;
};


Bitte! Danke!
LG | Olli

pixbox
derFloh#2
Benutzerbild von derFloh
Beiträge: 992
Wohnort: ..::LAGE::..
Registriert: Apr 2006

17.12.2010, 12:17

hey,

ich würds einfach direkt in ner schleife machen ohne vorher erst eine instanz auf die bühne zu bringen... (was du auch immer für werte dabei nehmen willst)
ActionScript:
1
2
3
4
5
6
7
8
9
for( var i : int = 0; i < 30; i++ )
{
     var mcStrich = new Strich();
     mcStrich.x = xMitte;
     mcStrich.y = yMitte;
     mcStrich.rotation = i * 9;
     
     this.addChild(mcStrich);
}


hoffe das ist es, was du damit erreichen willst.
grüß
 flo
www.heimatdesign.com
Florin Sans - Buy on myFonts / Fontspring
Geändert von derFloh am 17.12.10 um 12:18 Uhr
RustyCake#3
Benutzerbild von RustyCake
Beiträge: 1776
Wohnort: Laimbach 6 1/2
Registriert: Nov 2002

17.12.2010, 12:44

Duplizieren geht auch, wobei es wirklich schlauer ist, das Zeug Direkt aus der Bibliothek zu holen ;-)

ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
var mcStrich:MovieClip = new Strich();
addChild(mcStrich);
mcStrich.x = 0;
mcStrich.y = 0;
for (var i:uint =0; i<5; i++)
{
     var myLink:Class = Class(getDefinitionByName(getQualifiedClassName(mcStrich)));
     var myDupClip:MovieClip = new myLink();
     myDupClip.name = "dupMC_"+i;
     myDupClip.x = (50 * i)+50;
     myDupClip.y = (50 * i)+50;
     trace(myDupClip.name)
     addChild(myDupClip);
}
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muss erst gehen lernen"
Olli_K#4
Benutzerbild von Olli_K
Beiträge: 1413
Wohnort: Hauptstadt
Registriert: Dec 2004

Themenautor/in

17.12.2010, 12:47

Danke @flo, das funktionert zwar und ich sehe die MC auch alle auf der Bühne, aber ich muss zur Laufzeit einzelne MC's anspechen können und  z.B. mit neuen Eigenschaften versehen.

Ich brauche also wirklich Strich1, Strich2, ... usw. als MC's.

@RustyCake, guck mir deins gerade an...
LG | Olli

pixbox
Geändert von Olli_K am 17.12.10 um 12:48 Uhr
Olli_K#5
Benutzerbild von Olli_K
Beiträge: 1413
Wohnort: Hauptstadt
Registriert: Dec 2004

Themenautor/in

17.12.2010, 13:10

"...das Zeug Direkt aus der Bibliothek zu holen" Hm, hunderte von Clips aus der Bibliothek holen? Ick wes nich.

Dein Script läuft, aber wie sage ich nun z.B. dem 3. duplizierten Clip, dass er beispielsweise einen anderen Alphawert haben soll. Hab versucht ihn mit
ActionScript:
1dupMC_3.alpha=33;
anzureden, ohne Erfolg.

Das sind meine ersten Schritte in AS3. Ganz schön krasser unterschied zu 2.0.
LG | Olli

pixbox
RustyCake#6
Benutzerbild von RustyCake
Beiträge: 1776
Wohnort: Laimbach 6 1/2
Registriert: Nov 2002

17.12.2010, 13:42

So evtl.
ActionScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
var mcStrich:MovieClip = new Strich();
mcStrich.name = "strich";
addChild(mcStrich);
mcStrich.x = 0;
mcStrich.y = 0;
MovieClip(root).getChildByName("strich").alpha = 0.33;
function dupMCs()
{
     for (var i:uint =0; i<5; i++)
     {
        var myLink:Class = Class(getDefinitionByName(getQualifiedClassName(mcStrich)));
        var myDupClip:MovieClip = new myLink();
        myDupClip.name = "dupMC_" + i;
        myDupClip.x = (50 * i)+50;
        myDupClip.y = (50 * i)+50;
        MovieClip(root).addChild(myDupClip);
     }
     MovieClip(root).getChildByName("dupMC_3").alpha = 0.33;
}
dupMCs();
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muss erst gehen lernen"
Olli_K#7
Benutzerbild von Olli_K
Beiträge: 1413
Wohnort: Hauptstadt
Registriert: Dec 2004

Themenautor/in

17.12.2010, 13:45

Warum Zeile 6?

Das bläht aber ganz schön den Code auf. Da war AS2 bei selben Ergebnis aber wesentlich schmaler.
LG | Olli

pixbox
Geändert von Olli_K am 17.12.10 um 13:48 Uhr
RustyCake#8
Benutzerbild von RustyCake
Beiträge: 1776
Wohnort: Laimbach 6 1/2
Registriert: Nov 2002

17.12.2010, 13:59

Zeile 6 war nur ein Beispiel!
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muss erst gehen lernen"
Olli_K#9
Benutzerbild von Olli_K
Beiträge: 1413
Wohnort: Hauptstadt
Registriert: Dec 2004

Themenautor/in

17.12.2010, 14:07

Und warum die Schleife innerhalb einer Funktion? Geh doch auch ohne Funktion.
LG | Olli

pixbox
Olli_K#10
Benutzerbild von Olli_K
Beiträge: 1413
Wohnort: Hauptstadt
Registriert: Dec 2004

Themenautor/in

17.12.2010, 14:53

Habs hingekriegt. Hier meine erste AS3 Portierung uhr_as3.fla (75.00 KB) eine analoge Uhr. Dank an euch beide.
LG | Olli

pixbox
RustyCake#11
Benutzerbild von RustyCake
Beiträge: 1776
Wohnort: Laimbach 6 1/2
Registriert: Nov 2002

17.12.2010, 14:57

Die funktion war dazu da, den MovieClip anzusprechen, das ging innerhalb der for-schleife nicht, und außerhalb auch nicht, da er da noch nicht am Leben war!
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muss erst gehen lernen"

AntwortenRegistrieren Seite1  

Schnellantwort

Du musst registriert sein, um diese Funktion nutzen zu können.

 
Ähnliche Beiträge zum Thema
Partner Webseiten: art-and-law.de  Mediengestalter.info   phpwelt.de   Scubacube.de  
Haftungsausschluss   Datenschutzerklärung   Impressum
© 1999-2022 Sebastian Wichmann - Flashhilfe.de