Flash Turntable

Hi,
ich versuche grad in Flash mit AS2 für meine Homepage eine Turntable-Gallerie mit meinen 3D-Objekten zu erstellen.
Genau wie auf der Seite von ZBrush: http://www.pixologic.com/turntable/

Allerdings bin ich absoluter Anfänger und Programmieren war noch nie meine stärke.
Ich bin soweit, das ich mein Turntable-Video was ich in ZBrush erstellt habe, als Video in Flash in einen Movieclip geladen habe.
Und ich hab nen Button den ich per Mausklick nach links und rechts schieben kann.
Und nun kommt der Teil, wo ich nicht weiter komme.
Wie mach ich es, das ich nun den MC mit schieben des Buttons nach links und rechts, vor- und zurückspulen kann?
Der MC besteht aus 37 Frames. Wichtig wäre auch, das wenn der Button ganz am Ende ist, auch der letzte Frame des MC angezeigt wird und wenn ich den Button unterwegs loslasse, der MC auch mittendrin stopt.
Ich habe 2 Layer zur zeit.
Button-layer wo sich der button befindet und darüber den Movie-layer mit dem MC. Instanzname des MC is movie_mc.

Der Button selbst ist auch ein MC mit eingefügtem Button. Das ist dazu da um den Wert angeben zukönnen wie weit ich den Button hin und her schieben kann.
Hier mal der Code des Buttons im MC:
on (press) {
startDrag("", false, startX, startY, startX+size, startY);

}
on (release, releaseOutside) {
stopDrag();
}
und der Code des MC vom Button selbst:
onClipEvent(load){
size = 480;
startX = _x;
startY = _y;

}
onClipEvent(enterFrame){
_root.content_feed_display.scroll = Math.round((_x-startX)/size * _root.content_feed_display.maxscroll);
}
Wie wäre nun der Code um halt mit dem MC_Button den Turntable-MC ansprechen zu können und dem vor und zurückspulen? Sollte ja eigentlich nicht so schwer sein oder?
Danke für die Hilfe.

MfG
Train
 
Hallo,

Deinen Plattenspieler-Clip sprichst du mit Instanznamen an, sagen wir mal turntable. Diser MovieClip befindet sich nun auf der Hauptzeitleiste.
Bezüglich der Zeitleisten-Synchronisierung verhält es sich folgendermassen:
Dein Plattenspieler-Clip muss sich immer auf dem Frame befinden, das sich aus dem Verhältnis Drag-Button zu maximal möglicher Drag-Distanz (x-Achse) mal die Gesamtanzahl Frames des Plattenspieler-Clips ergibt. In deinem Fall bedeutet das:
Code:
var newFrame = Math.round((_x/(startX+size))*_root.turntable._totalframes);
_root.turntable.gotoAndStop(newFrame);
Diese Anweisungen müssen nun onEnterFrame auf dem Dragger laufen.

Gruss
 
Ah ok, vielen dank so klappt es!
Das einzige kleine Problem was ich jetzt noch habe ist:
Der Plattenspieler-Clip, der ja zu Anfang auf stop steht, jetzt erst beim 3. Frame beginnt, seit ich den Code eingefügt habe.
Mit dem Dragger kann ich ihn zwar ganz bis zum Ende spulen und auch wieder zurück, aber halt nur zurück bis zum 3. Frame.
Warum verschluckt er die ersten beiden Frames?
 
Jupp Trace hab ich gemacht. Da gibt er mir erst:
0
0
und dann die ganze Zeit ohne Pause, durchgehen
6
6
6
und soweiter aus.
Hab jetzt bisschen was geändert. Die Turntable-Filme werden nun aus einer externen swf per verschiedener buttons in ein leeren MC geladen, was auch ohne Probleme klappt. Nur das halt der reingeladene swf-film nicht mit dem 1. Frame startet sondern mit ca. dem 6.
Wie sag ich ihm, das er mit dem 1. Frame beginnen soll?

EDIT: ok es scheint daran zuliegen, das der Dragger-Button auf der X-Achse nicht direkt auf 0 liegt beim Start, sondern halt schon etwas weiter rechts. Wenn ich jetzt den MC lade, denkt er, ich hätte schon etwas vorgespult und springt im MC gleich zum passenden Frame. Also muss ich dem Wert-x irgendwie sagen, das er da wo der Button zu Beginn steht 0 ist. Auch wenn er es eigentlich ja nicht ist..
.
EDIT2: ok, ich habs jetzt auf eine vermutlich etwas unsaubere Art und Weise gelöst:
Den Anker (also das kleine kreuz) des Button-MCs hab ich auf der X-Achse ganz an den Rand gesetzt, also X-Wert= 0. Wärend ich aber den Button im Button-MC selbst, auf der X-Achse an den Punkt gesetzt habe, wo mein eigentlicher gewünschter Start-Punkt für den Button sein sollte.
So funktionierts halt auch. Wenn jemand aber ne sauberere Lösung kennt, möchte ich ihn bitten, sie hier doch bitte noch zu posten.

Vielen Dank

Gruß
Train

ps: ich werde das Thema aber denoch schonmal als erledigt kennzeichnen.
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück