PDA

Volledige versie bekijken : Movieclip scrollen, 1=horzontaal, 2=verticaal


Lin0
%Europe/Berlin %999 %2008, 23:59
Ik heb voor vele vast en simpel probleem maar voor mij is het wat ingewikkelder, ik probeer een movieclip naar een x en y coördinaat de laten met easing.

Dit lukt me prima, alleen kiest hij nu de korte weg dus rechtsreeks over het beeld (schuin).
Ik wil alleen er voor zorgen dat hij bijvoorbeeld eerst horizontaal en dan verticaal reist. (of andersom)
scrollen
Ik heb tot nu toe dit geprobeerd:

(normale dwars over het scherm easing)

onClipEvent (enterFrame) {
_y += (_root.M1Y-_y)/_root.speed;
}

Nu heb ik dit geprobeerd om mijn probleem te verhelpen:

onClipEvent (enterFrame) {
_y += (_root.M1Y-_y)/_root.speed;

if (_root.M1Y = _root.endY) {
_x += (_root.M1X-_x)/_root.speed;
}
}

Maar door een button waarmee ik bijvoorbeeld de coördinaten instel gaat me movielip nog steeds dwars over het scherm, dit omdat volgens flash denk ik de coördinaten al direct zijn zoals ze op de button ingesteld staan.
De movieclip moet er alleen nog heen reizen?

Vast iemand met een betere oplossing?

Lin0

Jan
%Europe/Berlin %049 %2008, 01:11
Je gebruikt hier best de Tween component van Flash voor:
import mx.transitions.Tween;
import mx.transitions.easing.*;

var horizontaal:Tween = new Tween (mc,"_x",Strong.easeOut,mc._x, mc._x+200 ,2,true);

horizontaal.onMotionFinished = function ()
{
var vertikaal:Tween = new Tween (mc,"_y",Strong.easeOut,mc._y, mc._y+200 ,2,true);
}

http://www.oman3d.com/tutorials/flash/tweenclasseasing/

1)En verder moet je altijd _root proberen te vermijden. Gebruik combinaties van this en _parent. http://www.flashfocus.nl/forum/showpost.php?p=343843&postcount=3

2)Ook geen script op of in je objecten (movieclips) zetten. Gebruik instance names en script zet je allemaal samen in een frame op de hoofdtijdlijn.

Groeten,
Jan