| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Apr 2003
Beiträge: 18
| spezielle Movies per Actionscript auswählen
Hey hi, ich habe mir bei Flashstar dieses 3d-Menü (dieses Karussel, mit Buttons, dass sich um einen Ball herum dreht) heruntergeladen und versuche es jetzt in so weit zu verändern, dass die Movies, die sich um diesen Ball drehen, nicht immer aus dem gleichen Bild + Text bestehen, sondern, aus einem individuellen Bild + Text. Da ich bisher aber nicht wirklich fit in Actionscript bin, bin ich auf eure Hilfe angewiesen. Der bisherige Code: Code: fscommand("allowscale", "false");
// Menüeinträge
links = new Array();
links[1] = ["produkte/0010.php","Artikel Nr. 0010"];
links[2] = ["produkte/0011.php","Artikel Nr. 0011"];
links[3] = ["produkte/0012.php","Artikel Nr. 0012"];
links[4] = ["produkte/0013.php","Artikel Nr. 0013"];
links[5] = ["produkte/0014.php","Artikel Nr. 0014"];
links[6] = ["produkte/0015.php","Artikel Nr. 0015"];
// Bühnen Breite + Höhe
posX = Stage.width / 2;
posY = Stage.height / 2;
// Clips Erzeugen
anzahl = links.length-1;
for (var i = 1; i < anzahl + 1; i++) {
attachMovie("clip", "clip" + i, i);
}
// Global Signal
_global.signal=true;
// Clips auf Umlaufbahn bringen
this.onEnterFrame = function() {
if (signal) {
mausPos += ((_root._xmouse - posX) / 100);
for (var i = 1; i < anzahl + 1; i++) {
winkel = ((mausPos + (360 / anzahl * i)) * Math.PI) / 180;
this["clip" + i]._x = posX + (Math.sin(winkel) * 300);
this["clip" + i]._y = posY + (Math.cos(winkel) * 50);
this["clip" + i]._xscale = 100 + (Math.cos(winkel) * 50)
this["clip" + i]._yscale = 100 + (Math.cos(winkel) * 50);
this["clip" + i].swapDepths(1000 + (Math.cos(winkel) * 100));
this["clip" + i].txtName = links[i][1].toUpperCase();
this["clip" + i].url = links[i][0];
this["clip" + i].onRelease = function() {
getURL(this.url, "_target");
signal = false;
};
this["clip" + i].onRollOver = function() {
signal = false;
};
this["clip" + i].onRollOut = function() {
signal = true;
};
}
}
};
// MX (Logo)
planet.swapDepths(999 + 1); Zu diesem Hauptproblem, kommen noch zwei kleinere Probleme: Zum ersten wollen die Textfelder nicht "Artikel Nr. 0012" annehmen, sondern machen da "Artikel Nr. 0" draus. Und zum zweiten möchte ich, dass die Links nicht in einem neuen Fenster, sondern in dem bereits bestehenden geöffnet werden. Ich hoffe ihr könnt mir da ein wenig helfen!Danke im Voraus, Tom Geändert von TomFresh (01-09-2004 um 07:57 Uhr) |
| | |
| | #2 (permalink) |
| Farbe ist Luxus Registriert seit: May 2003 Ort: Köln
Beiträge: 2.405
|
hi, hier ist die stelle, an der die MCs attacht werden: ActionScript:
Weiter unten muss es dann aber auch this["MenuClip00" + i]._x = ... etc heißen. Im Clip befindet sich ein Textfeld, das vermutlich derzeit einfach zu klein ist für deinen Text. Grüße Sascha
__________________ 12:15, press return |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Apr 2003
Beiträge: 18
|
hmm, ich bräuchte noch ein bisschen mehr Hilfe. Das genügt mir noch nicht, da ich so gesehen echt nen Newbie bin . Leider.Also ich hab jetzt 12 MC, mit einem Bezeichner. Der Lautet z.B. Clip0010. Was genau muss ich da jetzt noch alles ändern? Was bedeutet eigentlich nochmal das i im Script. Und denkt daran, ich will bereits unter dem Punkt Menüeinträge festlegen, welcher MC zu welchem Text und zu welchem Link gehört. Trotzdem und weiterhin Danke für eure Hilfe, Tom |
| | |
| | #4 (permalink) |
| Farbe ist Luxus Registriert seit: May 2003 Ort: Köln
Beiträge: 2.405
|
also, i ist ein Zähler in der Schleife. for (var i = 1; i < anzahl + 1; i++) bedeutet, dass die Schleife (beginnend mit 1) solange i um eins erhöht (i++), solange die Austrittsbedingung nicht erfüllt ist, i also kleiner anzahl+1 ist. i hat also immer einen anderen Wert. Wenn du deine Verknüpfungen in der Bibliothek z.B. Clip1, Clip2, ..., Clip12 nennst, kannst du in der Schleife einfach mit: ActionScript:
in jedem Durchlauf der Schleife einen anderen MC attachen. Momentan ist die Verbindung zwischen Clip1, Clip2 etc. und den Texten im Array links nur dadruch gegeben, dass Clip1 ebenso an erster Stelle steht, wie der Inhalt von links[1]. Änderst du im Array die Reihenfolge, verrutschen dir die MCs. Du kannst aber einfach den Namen des MC auch im Array unterbringen: ActionScript:
Jetzt bleiben Text und MC zusammen, egal wie die Reihenfolge des Arrays aussieht. Hilft das weiter? Grüße Sascha
__________________ 12:15, press return |
| | |
| | #5 (permalink) |
| Neuer User Registriert seit: Apr 2003
Beiträge: 18
|
Hey super! Habs erstens jetzt mal verstanden und zweitens klappt es so weit astrein. Das einzige was ich jetzt noch bräuchte, wäre nen Befehl, mit dem ich die weiße Fläche der Bilder transparent mache... aber ich werd mich jetzt mal auf die Suche machen und da läßt sich dann hoffentlich was finden.Falls ihr auch was dazu wissen solltet, könnt ihr gern nochmal posten. Und nochmal allerbesten DANK an ludabruder! Wirklich klasse! Bis dann, Tom |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |