Witam.
Czy ktoś wie jak zrobić coś takiego(?):
Mam parę obiektów np. Graphic. Chcę by po najechaniu kursorem na któryś, poruszył on się a następnie wrócił do poprzedniego miejsca, tak jakby był na sprężynie.
W mojej animacji obektami są gwazdki znajdujące się na poziomie dwóch MC: głównym dla całej animacji i dodatkowo jeszcze w jednym.
Poszukam jeszcze przykładu...
moc kursora :]
Re: moc kursora :]
Kod: Zaznacz cały
MovieClip.prototype.uciekaj = function(dist, wave, friction, ratio) {
this.dist = dist;
this.wave = wave;
this.friction = friction;
this.ratio = ratio;
this.dist_2 = this.dist * this.dist;
this.amp = this.wave / this.dist_2;
this.old_x = this._x;
this.old_y = this._y;
this.vel_x = this.vel_y = 0;
this.onEnterFrame = function() {
this.dist_x = _root._xmouse - this._x;
this.dist_y = _root._ymouse - this._y;
this.dist_x > 0 ? this.sign_x = -1 : this.sign_x = 1;
this.dist_y > 0 ? this.sign_y = -1 : this.sign_y = 1;
this.dist = this.dist_x * this.dist_x + this.dist_y * this.dist_y;
this.force_x = this.force_y = 0;
if (this.dist < this.dist_2) {
this.force = (-this.amp * this.dist + this.wave);
this.force_x = (this.dist_x * this.dist_x) / this.dist * this.sign_x * this.force;
this.force_y = (this.dist_y * this.dist_y) / this.dist * this.sign_y * this.force;
}
this.vel_x = this.vel_x * this.friction + (this.old_x - this._x) * this.ratio + this.force_x;
this.vel_y = this.vel_y * this.friction + (this.old_y - this._y) * this.ratio + this.force_y;
this._x += this.vel_x;
this._y += this.vel_y;
};
};
// wywołanie
instancja_movieclipu.uciekaj(50, 50, .5, .5);Re: moc kursora :]
Dzięki. Tylko jak to działa?
Wstawiłem kod do klatki i zmieniłem "instancja_movieclipu". Tak nie idzie. Więc jak?
Wstawiłem kod do klatki i zmieniłem "instancja_movieclipu". Tak nie idzie. Więc jak?
Re: moc kursora :]
No rzeczywiście, na osobnym *.fla działa, tylko na tym moim jakoś nie. Pokombinuję...
thx
thx
