moc kursora :]

Technologia Flash, czyli animacja na potrzeby stron WWW to świat daleko odbiegły od zwykłego programowania i kodu. Zapytaj o pomoc i podziel się z nami Twoimi problemami z zakresu Flasha.
Arczello
Nowy
Nowy
Posty: 94
Rejestracja: śr cze 18, 2003 1:18 pm
Lokalizacja: Otwock
Kontakt:

moc kursora :]

Post autor: Arczello »

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...
Arczello
Nowy
Nowy
Posty: 94
Rejestracja: śr cze 18, 2003 1:18 pm
Lokalizacja: Otwock
Kontakt:

Re: moc kursora :]

Post autor: Arczello »

Znalazłem przykład:

http://www.flashroom.com/forum/forumnav2.swf

(te elipsy po lewo)
Marek_bf
Administrator
Posty: 4419
Rejestracja: czw lut 24, 2005 2:14 am
Kontakt:

Re: moc kursora :]

Post autor: Marek_bf »

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);
Arczello
Nowy
Nowy
Posty: 94
Rejestracja: śr cze 18, 2003 1:18 pm
Lokalizacja: Otwock
Kontakt:

Re: moc kursora :]

Post autor: Arczello »

Dzięki. Tylko jak to działa?

Wstawiłem kod do klatki i zmieniłem "instancja_movieclipu". Tak nie idzie. Więc jak?
Marek_bf
Administrator
Posty: 4419
Rejestracja: czw lut 24, 2005 2:14 am
Kontakt:

Re: moc kursora :]

Post autor: Marek_bf »

Arczello
Nowy
Nowy
Posty: 94
Rejestracja: śr cze 18, 2003 1:18 pm
Lokalizacja: Otwock
Kontakt:

Re: moc kursora :]

Post autor: Arczello »

No rzeczywiście, na osobnym *.fla działa, tylko na tym moim jakoś nie. Pokombinuję...

thx
ODPOWIEDZ