Comunidad de diseño web y desarrollo en internet online

ahora si desplazamiento infinito

Citar            
MensajeEscrito el 18 Jun 2009 03:50 pm
bueno, ahora estoy con otra parte del proyecto, esta si necesita el movimiento infinito, es decir que se repita el mc, (en el anterior solo necesitaba que se detuviera, pero ahora si necesito que siga)
lo que yo hice fue
tengo dos mc que se desplazan horizontalmente, el cielo y el paisaje, con dos botones laterales que hacen que se desplacen, todavia no logro manejar todo desde un solo script (tengo poca experiencia con esto) y lo parti en partes.
en el fotograma puse las variables y las velocidades de movimiento

stop();
var velo:Number=0;
_root.onEnterFrame=function(){
this.fondo._x+=4*velo;
this.terreno._x+=20*velo;
}

fondo es el cielo y terreno el paisaje
en los botones laterales puse
on(rollOver){
velo=+1;
}
on (rollOut){
velo=0
}
hasta ahi funciona bien, pero despues puse en el mismo fotograma de antes el siguiente script para que duplique el mc y siga asi hasta el infinito,

var ancho:Number=3358;
var limsup=0;
var liminf=-2808;
this.onEnterFrame=function(){
if(this._x>limsup){
limsup+=ancho;
_root.contder+=1;
duplicateMovieClip(this.terreno,"terrenoder"+_root.terreno, this.getNextHighestDepth());
this["terrenoder"+_root.contder]._x=-ancho*(_root.contder-1);
trace(_root.contder);
}
}

segun lo que lei en la ayuda y lo que he hecho tendria que andar pero cuando lo publico se detiene todo y nisiquiera andan los botones, me parece que el problema es que esta mal convocadas las variables pero... no me doy cuenta cual y hace una semana que estoy luchando con esto asi que toda ayuda sera muy agradecida
C3L3ST3

Por C3L3ST3

9 de clabLevel



 

firefox
Citar            
MensajeEscrito el 20 Jun 2009 12:30 pm
Claro, lo que estás haciendo es crear infinitamente clips duplicados (creas uno cada 8 millisegundos como mínimo) además los creas con el mismo nombre, que es algo bueno porque no se te llenará la escena de clips.
Teoricamente lo que debes hacer es tener el clip a duplicar dentro de un contenedor, después duplicar 2 veces como mínimo el movieClip dentro del contenedor uno a continuación del otro (te debe quedar un MovieClip grande repetido). Después el onterframe debe mover a este clip a lo largo de las "x" y cuando llegue a cierto punto (eso depende del ancho de tu movieClip) trasladas el movieClip otra vez al principio sin que se note el salto y continúas moviéndolo. En teoría debe hacer lo mismo que esta función (es una hipótesis no es para que copies y peges):

Código ActionScript :

//---Suponiendo que teoricamente tu movieClip tenga de ancho 5
this.fondo.onEnterFrame = function():Void{

     this._x++;

     if(this._x > 5){

          this._x = 0;

     }

}

Por elchininet

Claber

3921 de clabLevel

17 tutoriales

Genero:Masculino  

Front-end developer at Booking.com

firefox
Citar            
MensajeEscrito el 22 Jun 2009 11:48 pm
muchas gracias
creo que me das una idea de que puede ser lo que esta fallando, pero no estoy segura, asi que me voy a poner a probarlo y te cuento queresultados tuve, teoricamente me parece que puse mal las funciones en el contendor pero tu codigo me dio una idea para otra prueba, asi que intento las dos cosas a ver si alguna me sale
mil gracias
celeste

Por C3L3ST3

9 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.