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

Array - Var - Ayuda! Urge! Flash8

Estas en el tema de Array - Var - Ayuda! Urge! Flash8 en el foro de Flash y Actionscript en Foros del Web. Buenas, antes que nada decir qu he estado siempre viendo este foro en modo "invisible" y he encontrado muchas cosas que me han ayudado, gracias ...
  #1 (permalink)  
Antiguo 23/05/2009, 10:05
 
Fecha de Ingreso: mayo-2009
Mensajes: 29
Antigüedad: 11 años, 4 meses
Puntos: 0
Array - Var - Ayuda! Urge! Flash8

Buenas, antes que nada decir qu he estado siempre viendo este foro en modo "invisible" y he encontrado muchas cosas que me han ayudado, gracias a todos.
He aquí mi problema, a ver quién puede arrojar un poco de luz sobre este tema, no soy un programador, siempre he usado Flash desde el punto de vista de un diseñador y me he buscado la vida haciendo las cosas de la manera tal vez menos práctica pero más sencilla, dicho esto: tengo una especie de juego que hacer para un cliente en el que le da un "muñeco" y el usuario lo va vistiendo, definiendo su comida, hábitos etc de acuerdo a los posibles clientes a los que les interesa llegar.
En principio tengo una película base en la que dependiendo de lo que selecciones se van cargando otras pelis en niveles superiores (loadmovienum) hasta aquí todo ok.
El tema es que al final tengo que hacer una opción en la que el usuario pueda enviar o el muñeco como ha quedado (no creo que sea posible desde flash exportar un .jpg ddel ultimo frame) o por lo menos un mail con las palabras claves de su seleccón (ej: 26años, nivel medio-alto, deportivo, etc) en principio lo estoy intentando de la siguiente manera, creo un array en el frame 1:
Código:
list=new Array("pr","op","de","ce");
He creado un campo de texto dinámico con una variable llamada texto y es seleccionable, para la gente que usa webmail y no tiene outlook o similarque lo puedan copiar y pegar.
En los botones siguientes:
Código:
 on (press){texto = list [0];  
}
en cada botón de cada frame con su opción correspondiente de la celda del array (0,1,2,3,4,etc) en el botón del mail: on (release)
Código:
{getURL("mailto:midirecciondemail?body=texto %0A%0A 3er Parrafo.");
}
, pero me ocurren varias cosas: primero no me añade la siguiente opción al campo de texto, sustituye la nueva por la anterior, cosa ue tengo que tener mientras estén los botonoes en el mismo fotograma, pero en el siguiente se añada, y que al volver a una opción anterior, en caso de que el usuario se equivoque y quiera volver borre la última..
Cuando intento enviar el mail, no me copia el contenido de la caja de texto ni de la variable ni nada, solo sale el código : texto.
Seguro que no es tán dificil, pero voy loco leyendo tutoriales y probando cosas, en cualquier caso gracias por leer esto y tu tiempo, si puedes ayudar muchas gracias.

Slds,

Por cierto esto va en un USB en un .exe
PD:No me deja copiar la dirección de correo entera en el mailto por motivos antispam, mientras tenga menos de 30 días en el foro ;)
  #2 (permalink)  
Antiguo 23/05/2009, 20:25
Avatar de the_ghost  
Fecha de Ingreso: octubre-2003
Ubicación: Caracas, Venezuela
Mensajes: 104
Antigüedad: 17 años
Puntos: 5
Respuesta: Array - Var - Ayuda! Urge! Flash8

Hola, el código que colocaste para los botones debería ser algo como:
on (press) {
texto += list[0];
}
De esta forma no reemplaza lo anterior sino que agrega "list[0]" a lo que contenía.

El otro código, debería tener "texto" fuera de las comillas, esto es:
... {
getURL("mailto:midirecciondemail?body="+texto+" %0A%0A 3er Parrafo.");
}

Por otro lado, aunque no lo he probado, sí hay forma de guardar una imagen a partir de una película de Flash: http://actionscript-blog.imagination...tion-script-3/

Espero que sirva de algo.
__________________
ThE GhOsT
  #3 (permalink)  
Antiguo 24/05/2009, 05:25
 
Fecha de Ingreso: mayo-2009
Mensajes: 29
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Array - Var - Ayuda! Urge! Flash8

GRACIAS PANA! ahora funciona, sabía que era un tontería que yo no podía ver, pero aún tengo un par de problemas:
Me mete este código html en el correo: <p align="left"></p> antes de introducir las palabras, es por que lo hago desde un programa de correo de mac y en outlook no ocurrirá o es por que me he dejado algo sin definir?

Y lo más importante; supongamos que en la pantalla 1era hay 2 opciones seleccionas la 1, en la 2da hay 3 más y seleccionas la 2, en la 3era te das cuenta que quieres cambiar la opción anterior, como le digo al array que borre la última? y al texto?
O es más facil crear un array sin definir los número de celda, o definiendo, y hacer un push.opción que tenga el botón? para poder volver atrás...

Muchas gracias por tu tiempo.
  #4 (permalink)  
Antiguo 24/05/2009, 08:19
 
Fecha de Ingreso: mayo-2009
Mensajes: 29
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Array - Var - Ayuda! Urge! Flash8

Hola, he intentado esto en el botón que lleva al keyframe anterior:
Código:
on (press){ prevFrame();
texto -= list [2,3];   
}
Según yo, esto es que quite las opciones 2 y 3 (cualquiera que se haya seleccionado) de las celdas del array que se encuentran en este keyframe.. pero quita todo y me pone Nan en el cuadro de texto, que según recuerdo es que confirma que no es un número?¿?¿
En cualquier caso, necesito que mantenga las anteriores y quite la última..

Alguna idea?

Gracias!
  #5 (permalink)  
Antiguo 25/05/2009, 10:13
Avatar de the_ghost  
Fecha de Ingreso: octubre-2003
Ubicación: Caracas, Venezuela
Mensajes: 104
Antigüedad: 17 años
Puntos: 5
Respuesta: Array - Var - Ayuda! Urge! Flash8

Hola, es mejor que utilices flags:
Crea constantes que definan cada una de las características, con valores que comiencen en 0:
const PR:int = 0;
const OP:int = 1;
...
Crea un arreglo de booleanos, de tamaño 4 (el número de características), y asigna inicialmente a todos los valores false. Supongamos que el arreglo se llama "caracteristicas".
Luego, al agregar una característica en particular, seteas ese valor en true: caracteristicas[OP] = true;

Cuando vayas a generar el código, sólo tienes que recorrer el arreglo y verificar las características que valen true, y agregas al código el valor correspondiente.
__________________
ThE GhOsT
  #6 (permalink)  
Antiguo 25/05/2009, 14:26
 
Fecha de Ingreso: mayo-2009
Mensajes: 29
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Array - Var - Ayuda! Urge! Flash8

Ok gracias de nuevo, pero me he perdido, Flags? Crear constantes? un arreglo de boleanos? entiendo el concepto, pero no como hacerlo, y en cualquier caso como funciona si el usuario va hacia atrás y cambia la opción? no lo puedo hacer con el array anterior? no quiero estar preguntando y molestando cada día...
Gracias por tu ayuda.
  #7 (permalink)  
Antiguo 25/05/2009, 14:40
Avatar de the_ghost  
Fecha de Ingreso: octubre-2003
Ubicación: Caracas, Venezuela
Mensajes: 104
Antigüedad: 17 años
Puntos: 5
Respuesta: Array - Var - Ayuda! Urge! Flash8

La idea es que cuando el usuario cambie la opción (entiendo que es habilitar o deshabilitar alguna característica), entonces pasas a false el valor de la posición correspondiente en el arreglo.

Un arreglo de booleanos es un Array donde a cada elemento le puedes asignar true o false.

Voy a intentar aclarar mi idea, porque creo que de esta forma no vas a tener tantos problemas al generar el código. Voy a inventarme un ejemplo para poder explicarlo mejor.

Supongamos que las características posibles son: Sombrero, Camisa, Pantalón y Zapatos.
Defino entonces las constantes:
const SOMBRERO:int = 0;
const CAMISA:int = 1;
const PANTALON:int = 2;
const ZAPATOS:int = 3;

Defino el arreglo:
var muneco:Array = new Array(4);
for (var i:int = 0; i<4; i++) {
muneco[i] = false;
}

Entonces, si el usuario le quiere poner un sombrero al muñeco, haces:
muneco[SOMBRERO] = true;

Si se lo quiere quitar, haces:
muneco[SOMBRERO] = false;

Y así para todas las características.

Cuando quieras generar el código del muñeco, haces algo similar a esto:
var codigo:String = "";
for (var i:int = 0; i<4; i++) {
switch(i) {
case SOMBRERO:
if (muneco[i] ) codigo +="Sombrero ";
break;
case CAMISA:
if (muneco[i] ) codigo +="Camisa ";
break;
case PANTALON:
if (muneco[i] ) codigo +="Pantalón ";
break;
case ZAPATOS:
if (muneco[i] ) codigo +="Zapatos ";
break;
}
}

Y listo, tendrás en la variable codigo todas las características que colocó el usuario.

Me expliqué mejor ahora?
__________________
ThE GhOsT
  #8 (permalink)  
Antiguo 26/05/2009, 12:15
 
Fecha de Ingreso: mayo-2009
Mensajes: 29
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Array - Var - Ayuda! Urge! Flash8

Si mucho mejor explicado, gracias, pero....
Lo dicho antes, no tengo NPI a fondo en Flash, lo he estado intentando, pero te explico como he hecho (mal) mi archivo, tengo un muñeco en la peli principal y as características que se le quieran poner encima las voy llamando con loadmovienum , por niveles claro, y cuando alguien se arrepiente prevframe y unloadmovieNum en un botón, en su momento me pareció lo más sencillo.
Si hubese sabido como llamar Mc etc, créeme que lo habría hecho, estoy aprendiendo, en cualquier caso la manera qu me explicas creo que tardaré en entenderla y averiguarla, me tengo que pasar por muchos tutoriales etc, por eso la primera opción me parecía la más fácil, sencilla y efectiva e insisto, no puedo en el botón del prevframe añadir algo para que me quite las opciones que se hayan seleccionado del frame anterior? me explico:
Si en el kfram 2 seleccionamos entre sombrero y gorra (opciones 2 y 3 del array) seleccionamos gorra y vamos a nextframe, luego decidimos cambiarla por sombrero, no hay alguna manera de decirle al list o al array que sea algo como:
on (press){ prevFrame();
texto = list [-"sombrero", "gorra"];
}
O:
on (press){ prevFrame();
texto = list [-2, -3];
} He intentado muchas combinaciones y maneras y no doy con ella, he intentado con pop:
on (press){ prevFrame();
texto = list.pop ;
} pero tampoco...
Siento haberte hecho perder el tiempo, pero a mí se me acaba, y veo esto cmo la opción que me está funcionando y que podría ser una solución..

Gracias,
  #9 (permalink)  
Antiguo 26/05/2009, 20:49
Avatar de the_ghost  
Fecha de Ingreso: octubre-2003
Ubicación: Caracas, Venezuela
Mensajes: 104
Antigüedad: 17 años
Puntos: 5
Respuesta: Array - Var - Ayuda! Urge! Flash8

Fino vale, tranquilo... Para remover una opción que agregaste utiliza substr ()
Si la última característica que agregaste fue list[1] (por ejemplo),
debe ser algo como:
texto = texto.substr(0,texto.length-list[1].length);

Esto lo que hace es quitar los últimos K caracteres de "texto", donde K es el número de caracteres de "list[1]".
__________________
ThE GhOsT
  #10 (permalink)  
Antiguo 01/06/2009, 06:42
 
Fecha de Ingreso: mayo-2009
Mensajes: 29
Antigüedad: 11 años, 4 meses
Puntos: 0
Respuesta: Array - Var - Ayuda! Urge! Flash8

Gracias gracias gracias, de momento creo que es suficiente así!
No te he respondido antes por trabajo.
Revisa tus mensajes.
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 17:05.