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

Efecto máquina de escribir

Estas en el tema de Efecto máquina de escribir en el foro de Flash y Actionscript en Foros del Web. Buenas tardes. encontré este efecto: http://www.cristalab.com/foros/t5558...ir-y-ping.html Fuenciona bien. Pero yo lo utilizo 2 veces en la misma película. Explico mas o menos como tengo le ...
  #1 (permalink)  
Antiguo 10/11/2008, 15:20
Avatar de ceaped  
Fecha de Ingreso: febrero-2004
Mensajes: 2.185
Antigüedad: 20 años, 2 meses
Puntos: 9
Pregunta Efecto máquina de escribir

Buenas tardes.

encontré este efecto:

http://www.cristalab.com/foros/t5558...ir-y-ping.html

Fuenciona bien.

Pero yo lo utilizo 2 veces en la misma película.

Explico mas o menos como tengo le pélicula:

Hay una animación llego al fotograma 100 y ahí hay un stop(); y está el campo de txt dinámico y las acciones para el efecto.
En el fotograma 101 hay lo mismo pero con diferente campo de txt osea nombre de instancia distinto y funciona bien.

Cita:
El problema radica en cuando se está ejecutando y yo pongo un botón que salte al fotograma 101 el efecto se acelera y si me devuelvo con otro botón al fotograma 100 se acelara más y al finalizar me agrega texto undefined.

Espero me puedan ayuda
__________________
Diseñador Gráfico publicitario
  #2 (permalink)  
Antiguo 10/11/2008, 15:40
Avatar de Lynxcraft  
Fecha de Ingreso: noviembre-2007
Ubicación: yecla murcia
Mensajes: 1.346
Antigüedad: 16 años, 5 meses
Puntos: 51
Respuesta: Efecto máquina de escribir

supongo que utilizas esta función

http://www.cristalab.com/tips/34788/...-en-flash.html

bueno tienes que eliminar el intervalo antes de continuar es decir en esta parte del código pondrías algo asi

Código PHP:
nuevaLetra = function () {


boton1.onPress=function() {

clearInterval(campo.nuevoIntervalo);
}
boton2.onPress=function() {

clearInterval(campo.nuevoIntervalo);
}
boton3.onPress=function() {

clearInterval(campo.nuevoIntervalo);
}
////etc etc etc 

      
if (campo.letra == undefined) {
         
campo.0;
      } else {
         
campo.i++;
      } 
de todos modos yo hice una modificación de ese código para que pueda poner texto en html lo puedes ver aqui

http://www.creatusjuegos.com/foro/showthread.php?t=11

y si lo quieres en as3


es asi

Código PHP:
function Escribe(Texto:String,AreaTexto:TextField,Tiempo:Number,HTML:Boolean) {
    var 
fArr:Array = new Array();
    var 
m:Number 0;
    var 
arrayLetras:Array = new Array();
    var 
nut:String="";

    if (
HTML) {

        for (var 
i:Number 0i<Texto.lengthi++) {
            if (
Texto.substr(i1).indexOf("<") == -1) {
                
fArr.push(Texto.substr(i1));
            } else {
                var 
con:Number 1;
                for (var 
j:Number ij<Texto.lengthj++) {
                    if (
Texto.substr(j1).indexOf(">") == -1) {
                        
con++;
                    } else {
                        
fArr.push(Texto.substr(icon));
                        
j;
                        break;
                    }
                }
            }
        }
        
arrayLetras fArr;
    } else {

        
arrayLetras Texto.split("");
    }
    function 
max(event:TimerEvent):void {
        
nut+=arrayLetras[m];
        if (
HTML) {
            
AreaTexto.htmlText =nut;
        } else {
            
AreaTexto.text =nut;
        }
        
m++;

    }
    var 
miTimer:Timer= new Timer(Tiempo*100arrayLetras.length);
    
miTimer.addEventListener("timer"max);
    
miTimer.start();



se activa de forma similar al código as2 suerte
__________________
Sobran las ideas cuando faltan ganas de trabajar en ellas
Lynxcraft
  #3 (permalink)  
Antiguo 11/11/2008, 06:54
Avatar de ceaped  
Fecha de Ingreso: febrero-2004
Mensajes: 2.185
Antigüedad: 20 años, 2 meses
Puntos: 9
Respuesta: Efecto máquina de escribir

Hola. Muchas grafias por tu ayuda tan detallada.
Mira el código con el cual estoy trabajando:

Cita:
text = "aqui va el texto..........";
function agrega(texto, campo) {
text = text.split("").reverse();
agregaT = function () {
campo.text += text.pop();
if (text.length == 0) {
clearInterval(miint);
}
};
miint = setInterval(this, "agregaT", 20);
}
agrega(text, mict);
Como te decia este mismo código lo utilizo en 2 fotogramas para dos txt distintos.
El funciona, pero cuando hago que me vaya de un fotograma a otro se me acelera el efecto y al final me sale "undefined". Osea el texto si sale pero con ese txt al final y se aumenta su acelerción.

Suerte y gracias por tu ayuda
__________________
Diseñador Gráfico publicitario
  #4 (permalink)  
Antiguo 11/11/2008, 07:36
Avatar de Lynxcraft  
Fecha de Ingreso: noviembre-2007
Ubicación: yecla murcia
Mensajes: 1.346
Antigüedad: 16 años, 5 meses
Puntos: 51
Respuesta: Efecto máquina de escribir

en la función o boton que te envié al otro fotograma añade esta linea



clearInterval(miint);
__________________
Sobran las ideas cuando faltan ganas de trabajar en ellas
Lynxcraft
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 01:34.