Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 22-05-2007, 14:30   #1 (permalink)
Neuer User
 
Registriert seit: Aug 2006
Beiträge: 13
MovieClip-Tiefe bei Sinumat

Hallo alle zusammen,

ich verwende Sinumat um 5 Kugeln um eine große Kugel rotieren zu lassen. Nun habe ich aber das Problem, dass die Kugeln nicht von der mittleren Kugel überdeckt werden. Zu diesem Zweck habe ich das Actionscript kopiert und in eine Zweite Ebene gelegt. Die Kugeln in der vorderen Ebene blende ich ab einem bestimmten Wert von xscale aus und gleichzeitig die hinteren ein.

Nur leider frunktioniert das nicht, da entweder alle oder keine Hugeln ausgeblendet werden. Ich hoffe das mir jemand zu diesem Problem zumindestens einen Ansatz geben kann.

Code:
/* Code in Ebene1 */
var i=0;
abstand=25;
hoehe=40;
breite=200;
x_speed=20;
y_speed=20;
p_speed=20;
perspektive=30;
groesse=100;
rotation_speed=0;
excenter=40;
rotationsabstand=10;
film=0;

/*
for(j=1;j<6;j++){
container.attachMovie("kugelmc","k"+j,j);
}*/ 
container.attachMovie("kugelmc1","k1",1);
container.attachMovie("kugelmc2","k2",2);
container.attachMovie("kugelmc3","k3",3);
container.attachMovie("kugelmc4","k4",4);
container.attachMovie("kugelmc5","k5",5);

_root.createEmptyMovieClip("counter",1);
counter.onEnterFrame=function(){
i++;trace(" "+i);
}
MovieClip.prototype.sinus = function() {
folger=Number(this._parent._name.substr(1))*abstand; 
zaehler=i+folger;
this._y = Math.sin(zaehler/y_speed)*hoehe;
this._x = Math.sin(zaehler/x_speed)*breite;
this._xscale=this._yscale=Math.cos(zaehler/p_speed)*perspektive+groesse;
trace("Ebene2 "+this._name);
if (this._xscale<90) this._alpha=100;
if (this._xscale>90) this._alpha=0;
};



/*  Code in Ebene 2 */
var i1=0;
abstand1=25;
hoehe1=40;
breite1=200;
x_speed1=20;
y_speed1=20;
p_speed1=20;
perspektive1=100;
groesse1=100;
rotation_speed1=0;
excenter1=40;
rotationsabstand1=10;
film=1;

container2.attachMovie("kugelmc6","k6",6);
container2.attachMovie("kugelmc2","k7",7);
container2.attachMovie("kugelmc3","k8",8);
container2.attachMovie("kugelmc4","k9",9);
container2.attachMovie("kugelmc5","k10",10);

_root.createEmptyMovieClip("counter1",1);
counter1.onEnterFrame=function(){
i1++;trace(" "+i1);
}

MovieClip.prototype.sinus = function() {
folger1=Number(this._parent._name.substr(1))*abstand1; 
zaehler1=i1+folger1;
this._y = Math.sin(zaehler1/y_speed1)*hoehe1;
this._x = Math.sin(zaehler1/x_speed1)*breite1;
this._xscale=this._yscale=Math.cos(zaehler1/p_speed1)*perspektive1+groesse1;
trace("Ebene1 "+this.getDepth());
if (this._xscale>90) this._alpha=100;
if (this._xscale<90) this._alpha=0;
};
sstx ist offline   Mit Zitat antworten
Alt 22-05-2007, 23:03   #2 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
Ob du deinen Code in Ebene 1 oder 100000 legst, ist dem Player ziemlich wurscht. Der arbeitet nur die Scripte von oben nach unten ab. Das hat dann aber rein gar nichts mit irgendwelchen Objekt-Tiefen zu tun, die werden über die MCs selbst gesetzt, bspw. beim Erstellen eines leeren MCs mit createEmptyMovieClip, mit attachMovie oder wenn du einen MC "händisch" auf eine Ebene der Bühne legst.

Auf eine Ebene der Bühne hat der Player zur Laufzeit keinen Einfluss mehr, wohl aber auf einen MC, der einen Instanznamen hat. Du kannst dann über swapDepths die Tiefe des MCs anpassen und mit getDepth die Tiefe des MCs ermitteln.

Zitat:
Nun habe ich aber das Problem, dass die Kugeln nicht von der mittleren Kugel überdeckt werden.
Mal als Ansatz:
PHP-Code:
andereKugeln.swapDepths(1000);//sicherheitshalber auf eine dynamische Tiefe befördern
mittlereKugel.swapDepths(andereKugeln.getDepth()-1);//eine Tiefe darunter parken 
Zitat:
ich verwende Sinumat
Noch nie von gehört...

Geändert von agedoubleju (22-05-2007 um 23:06 Uhr)
  Mit Zitat antworten
Alt 22-05-2007, 23:48   #3 (permalink)
Achim Math.PI
 
Benutzerbild von bloba
 
Registriert seit: Jul 2001
Ort: cool Colonia
Beiträge: 11.642
@ hw er meint Tutorial zum Sinumat
__________________
gruß bloba

2 x onkel² b_d
bloba ist offline   Mit Zitat antworten
Alt 23-05-2007, 07:55   #4 (permalink)
Neuer User
 
Registriert seit: Aug 2006
Beiträge: 13
@ agedoubleju,

danke für den Ansatz. Ich werde mir das mal genauer ansehen.
sstx 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 01:35 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele