aqui dejo mi scroll hecho con flash 7.2 y q carga el texto desde un archivo txt. Los botones llaman a funciones OnEnterframe.
El ejemplo es este
Solo hay 3 elementos necesarios en el escenario 2 botones y el campo de texto; arriba_btn, abajo_btn y cuento_txt
SOLAMENTE HAY UN FRAME, LA ANIMACION SE REALIZA MEDIANTE CODIGO. Y este va en la capa "acciones" ademas del codigo q carga el archivo de texto, acciones de los botones etc si se me queda algo (unico frame vuelvo a repetir).
Los 3 elementos estan en la capa "elementos" por ejemplo.
Leetelo todo y si te queda alguna duda postealo(lee las notas al final del codigo, casi lo mas importante esta ahi, para los q no dominan nada de AS2)
//texto que cargamos desde un txt
var cargador_lv:LoadVars = new LoadVars();
cargador_lv.onLoad = function(exit){
if(exit){//cargamos la variable en su sitio correspondiente
cuento_txt.htmlText = this.cuento;//en mi caso utilizo html embedido en flash
} else {//sino muestra el mensaje ...
cuento_txt.htmlText = "verificar codigo, url, etc..";
}
};
cargador_lv.load("cuento.txt");//*.txt elegido
//funcion que para la animacion fuera del boton (hablo del cursor del raton claro esta)
Roll_Out = function(texto){
delete this.onEnterFrame;
};
//funcion que baja el texto o lo mueve hacia abajo
abajo = function(texto){
onEnterFrame = function(){
texto.scroll = txt.scroll+1;
trace(txt.scroll);//para ver cual es el limite y poder poner limite
if (texto.scroll == 64){/*Ver notas al final del codigo*/
delete this.onEnterFrame;/*Ver notas al final del codigo*/
trace("Final del texto")//para ver q se cumple el delete
}
};
};
//Funcion que sube el texto o lo mueve
arriba = function(texto){
onEnterFrame = function(){
texto.scroll = txt.scroll-1;
trace(txt.scroll);//Limite 1 logicamente
if (texto.scroll == 1){
delete this.onEnterFrame;
trace("fin de la funcion o inicio del texto");
}
};
};
//Button actions
//El q tira hacia arriba
arriba_btn.onRollOver = function(){//cuando este encima del btn
arriba(cuento_txt);//llamo a la funcion arriba mandando el parametro requerido
};
arriba_btn.onRollOut = function(){//cuando este fuera del btn
Roll_Out(cuento_txt);//llamo a la funcion fuera o Roll_Out mandando el parametro requerido
};
//el q tira hacia abajo
abajo_btn.onRollOver = function(){//cuando este encima del btn
abajo(cuento_txt);//llamo a la funcion abajo mandando el parametro requerido
};
abajo_btn.onRollOut = function(){//cuando este fuera del btn
Roll_Out(cuento_txt);//llamo a la funcion fuera o Roll_Out mandando el parametro requerido
};
//boton de contacto
contact_btn.onRelease = function(){
getURL("https://one.webcindario.com/contact/", _blank);
};
/*
Notas
Elementos utilizados:
·Campo de texto, instancia "cuento_txt" Y VARIABLE "txt"
·Los botones de color verde oliva palido con instancias:
"arriba_btn" para el de arriba
"abajo_btn" para el de abajo
·Un clip contenedor de las flechitas rojas, texto+contacto(sin importancia, adornitos)
Explicaciones
·En mi caso es un solo frame asi q no contiene el archiconocido stop(); por ningun lado mira a ver q este parado si es necesario en tu caso.
·Si te fijas lo unico que tienes que cambiar para que funcione tu texto es el limite de la funcion abajo, ¿como lo sabes el limite? muy facil por el trace(); pon "//" delante del delete y el trace de "final del texto" para saber el limite de tu txt.Ctrl+enter y sobre en los botones pa ver el trace u output.
·Quita todos los trace(); cuando termines tu trabajo tuto o como quieras llamarlo a esto.Si los dejas, estaras procesando datos innecesariamente.
*/
Se admiten modificaciones, comentarios etc. Asi mismo, dejo caer q si le gusta a los admins lo dejen como fijo el tema para incluir tutoriales.
Saludos espero que les guste y les sirva de ayuda