Volledige versie bekijken : Rotate
zynex_18
%Europe/Berlin %971 %2005, 00:19
Ik heb hulp nodig. Ik heb een movieclip op het scherm staan. die heeft de instancename "hero".
en nog een rechthoek (ook een movieclip), en die moet altijd richting de "hero" roteren. Zodat de rechthoek zegmaar altijd de hero aanwijst. (de hero is bestuurbaar).
Weet iemand hier een script voor?
Bij voorbaat dank,
Zynex
peres
%Europe/Berlin %980 %2005, 00:32
zo moet het volgens mij lukken
movieclip.onEnterFrame = function(){
a = this._y-hero._y;
b = this._x-hero._x;
hoekA = Math.atan2(a, b);
graden = hoekA/(Math.PI/180);
this._rotation = graden;
}
Dauntless
%Europe/Berlin %990 %2005, 00:46
zo moet het volgens mij lukken
movieclip.onEnterFrame = function(){
a = this._y-hero._y;
b = this._x-hero._x;
hoekA = Math.atan2(a, b);
graden = hoekA/(Math.PI/180);
this._rotation = graden;
}
Nee, da's fout...
Het is: graden = hoekA / Math.PI * 180
Ok, nvm, het is juist! :) Maar misschien is m'n uitleg hieronder nog voor iemand handig :).
Flash werkt met radialen, wij werken (meestal toch) met graden. Radialen gaan van 0 tot 2xPi . Graden van 0-360. Aangezien _rotation met graden werkt, en atan2 radialen teruggeeft moet je die omvormen. Dus, van 2PI -> 360 ... Delen door PI (dan heb je 2) en * 180 (dan heb je dus 360).
Daarbij zet je beter die regels in een functie die je oproept wanneer je je hero moved. Anders is het een beetje onnodig ge-onEnterFrame'd.
peres
%Europe/Berlin %036 %2005, 01:52
dat is toch hetzelfde?
a / b * c = a / ( b / c)
Dauntless
%Europe/Berlin %058 %2005, 02:24
dat is toch hetzelfde?
a / b * c = a / ( b / c)
Aah crap, was niet goed aan het opletten :I ... Helemaal gelijk! Sorry :).
vBulletin® v3.8.1, Copyright ©2000-2012, Jelsoft Enterprises Ltd.