Foros del Web » Creando para Internet » Flash y Actionscript »

Aceleracion en tres fotos

Estas en el tema de Aceleracion en tres fotos en el foro de Flash y Actionscript en Foros del Web. Hola gente. tengo una pelicula que tiene 3 fotos una al lado de la otra que se mueven de acuerdo al boton que presione. por ...
  #1 (permalink)  
Antiguo 25/04/2006, 23:30
Avatar de momo  
Fecha de Ingreso: abril-2003
Mensajes: 898
Antigüedad: 21 años
Puntos: 0
Aceleracion en tres fotos

Hola gente.
tengo una pelicula que tiene 3 fotos una al lado de la otra que se mueven de acuerdo al boton que presione.
por ejemplo si presiono el uno las fotos se desplazan todas hacia la derecha hasta que queda en vista la primer foto y lo mismo con cada una.
el tema es que necesito que el movimiento sea con aceleracion osea que arranque lento acelere y desacelere al final hasta detenerse.
pero no logro dar con el calculo para que me salga bien esto y me sale cualquier cosa...
Si voy a la 3 desde la 1 queda en una posicion, ahora si voy a ala 3 pero desde la 2 queda en otra posicion...
ya me enfermó...
este es el code de cada boton:

Código:
//Boton3
on(release){
	_root.btnuno.enabled=false;
	_root.btndos.enabled=false;
	_root.btntres.enabled=false;
velo = 1;
	t = 0;
	//trace(t);
	//trace(velo);
	_root.fotos.onEnterFrame = function () {
		t++;
		velo = -(velo*1.2)
		valor=_root.fotos.imgs._x
		_root.fotos.imgs._x = _root.fotos.imgs._x+(velo*t)
		//trace(t);
		//trace(_root.fotos.imgs._x);
		if (_root.fotos.imgs._x<250) {
			velo = -(velo*0.9)
		}
		if (_root.fotos.imgs._x<(-398)) {
			delete this["onEnterFrame"];
	_root.btnuno.enabled=true;
	_root.btndos.enabled=true;
	_root.btntres.enabled=true;
		}
	};
}
Código:
//Boton2
on (release) {
	_root.btnuno.enabled=false;
	_root.btndos.enabled=false;
	_root.btntres.enabled=false;
	velo = 1;
	t = 0;
	//trace(t);
	//trace(velo);
	if (_root.fotos.imgs._x<400) {
		_root.fotos.onEnterFrame = function() {
			t++;
			velo = velo*1.1;
			valor=_root.fotos.imgs._x
			_root.fotos.imgs._x = _root.fotos.imgs._x+(velo*t);
			//trace(t);
			//trace(velo);
			if (_root.fotos.imgs._x>(-75)) {
				velo = velo*0.9;
			}
			if (_root.fotos.imgs._x>(-170)) {
				delete this["onEnterFrame"];
	_root.btnuno.enabled=true;
	_root.btndos.enabled=true;
	_root.btntres.enabled=true;
			}
		};
	}
	//**********volver*********************
	if (_root.fotos.imgs._x<400 & _root.fotos.imgs._x>200) {
		_root.fotos.onEnterFrame = function() {
			t++;
			velo = -(velo*1.1);
			valor=_root.fotos.imgs._x
			_root.fotos.imgs._x = _root.fotos.imgs._x+(velo*t);
			trace(t);
			trace(_root.fotos.imgs._x);
			if (_root.fotos.imgs._x<0) {
				velo = -(velo*0.9);
			}
			if (_root.fotos.imgs._x<(-250)) {
				delete this["onEnterFrame"];
	_root.btnuno.enabled=true;
	_root.btndos.enabled=true;
	_root.btntres.enabled=true;
			}
		};
	}
}
Código:
//Boton1
on (release) {
		_root.btnuno.enabled=false;
	_root.btndos.enabled=false;
	_root.btntres.enabled=false;
	velo = 1;
	t = 0;
	//trace(t);
	//trace(velo);
	_root.fotos.onEnterFrame = function() {
		t++;
		velo = velo*1.1;
		valor=_root.fotos.imgs._x
		_root.fotos.imgs._x = _root.fotos.imgs._x+(velo*t);
		//trace(t);
		//trace(velo);
		if (_root.fotos.imgs._x>(-190)) {
			velo = velo*0.9;
		}
		if (_root.fotos.imgs._x>135.5) {
			delete this["onEnterFrame"];
	_root.btnuno.enabled=true;
	_root.btndos.enabled=true;
	_root.btntres.enabled=true;
		}
	};
}
Aca esta el fla por si alguien lo quiere ver.
Acá

Muchas gracias por adelantado!
Salu2
Mariano
  #2 (permalink)  
Antiguo 26/04/2006, 11:26
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 20 años, 9 meses
Puntos: 406
Hola momo:
Elimina todos los códigos que tienes en tu .fla.
A los botones 1, 2 y 3 colócale como nombre de instancia: bton1, bton2 y boton3.
En la capa de acciones frame 1 coloca éste código:
posX = clip._x;
MovieClip.prototype.movimiento = function(desX) {
this.onEnterFrame = function() {
this._x += (desX-this._x)/5;
};
};
boton1.onPress = function() {
clip.imgs.movimiento(190);
clip1.imgs.movimiento(560);
};
boton2.onRelease = function() {
clip.imgs.movimiento(-130);
clip1.imgs.movimiento(30);
};
boton3.onRelease = function() {
clip.imgs.movimiento(-450);
clip1.imgs.movimiento(30);
};

Al MC que está en el escenario, que contiene las 3 fotos, ponle como nombre de instancia: clip.

Espero haberte sido de ayuda.
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/
  #3 (permalink)  
Antiguo 26/04/2006, 19:31
Avatar de momo  
Fecha de Ingreso: abril-2003
Mensajes: 898
Antigüedad: 21 años
Puntos: 0
DE AYUDA??!?!?!? me diste una mano enorme che!
Muchisimas gracias
Anda perfecto.

Veo que no iba demasiado bien rumbeado lo mio...
Muchas gracias Bandit
Salu2
Mariano
  #4 (permalink)  
Antiguo 26/04/2006, 19:38
Avatar de Bandit
Moderador
 
Fecha de Ingreso: julio-2003
Ubicación: Lima - Perú
Mensajes: 16.726
Antigüedad: 20 años, 9 meses
Puntos: 406
Y nada, para eso estamos.
Me alegro haberte sido de ayuda.
__________________
Bandit.
Si no sabes estudia y si sabes enseña.
http://www.banditwebdesign.com/
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:22.