PDA

Ver la Versión Completa : La primera versión de mi Contador para Zombicide (escenas tasker)


carcacia
13/01/14, 17:56:54
Hola. Bueno, he acabado la primera versión de una app que tenía ganas de hacer como apoyo para un juego de mesa. Ante todo decir que la informática no es mi campo, y mucho menos la programación, así que los posts de aprendizaje de tasker y preguntar lo que no sabía aquí en el foro de tasker, me han llevado al resultado que quería. Digamos que está es la primera versión a la que le añadiré y depuraré cosas en un futuro.

http://www.youtube.com/watch?v=BadgTEh2yrQ

EDITADO con parte de las sugerencias que me han dado mlesir, Caravantes y maid450

-Para que está destinada la app:
Pues de apoyo al juego de mesa Zombicide. Para los que no lo conozcan, básicamente se trata de un juego donde los jugadores controlan 6 supervivientes que tienen que realizar diferentes misiones sin ser pasto de los zombis. A cada zombi que matan los supervivientes ganan un punto hasta un máximo de 43, dividiéndose estos en 4 dificultades: Azul (0-6), Amarillo (7-19), Naranja (20-42) y Rojo (43), pudiendo obtener así diferentes habilidades en cada dificultad.

-¿Por qué la App para esto?

447554

Pues bien, los personajes tienen unas tarjetas como estas de tamaño aproximado de medio folio para anotar el nivel, que se hace con una especie de clip que colocas en la parte superior sobre el cero, y vas desplazando a medida que subes niveles. El engorro está ahí, porque la tarjeta la debes tener sobre la mesa pq encima también colocas unas cartas y unas fichas que indican la habilidad que escoges en cada dificultad, y desplazar el clip sin mover accidentalmente el resto es prácticamente imposible.

- Ahora al tema, de que se compone la App (hablando en Tasker):

3 tareas y 10 escenas (aparte de las numerosas imágenes previamente preparadas con Photoshop)

-TAREAS:

La tarea 1 sirve para sumar o restar niveles a los diferentes personajes

-T1: Contador Cambiar: 1.SI %par2 >0
.................................................. .. 2. Sumar a variable %Contador(%par1) Valor 1 ... Si %Contador(%par1) < 43
.......................................... 3. Else
.................................................. .. 4. Restar de variable %Contador(%par1) Valor 1 ... Si %Contador(%par1) > 0
.......................................... 5. Fin Si
.......................................... 6. SI %Contador(%par1) = 43
.................................................. .. 7. Establecer variable %Color(%par1) A #FFFF0000 (rojo)
.......................................... 8. Else Si %Contador(%par1) > 18
.................................................. .. 9. Establecer variable %Color(%par1) A #FFFF9700 (naranja)
......................................... 10. Else Si %Contador(%par1) > 6
.................................................. . 11. Establecer variable %Color(%par1) A #FFFFDF00 (Amarillo)
.......................................... 12. Else
.................................................. .. 13. Establecer variable %Color(%par1) A #FF0083FF (azul)
.......................................... 14. Fin Si

La siguiente tarea servirá para resetear todos los valores, por ejemplo al empezar una nueva partida, pasando todos a cero y color azul.

-T4: Contador Cero Todos: 1. For ... Variable %Arra ... Items 1:6
................................... 2. Establecer Variable %Contador(%Arra) A 0
................................... 3. Establecer Variable %Color(%Arra) A #FF0083FF
.......................... 3. End For

La última tarea es el lanzador de la escena.

-T3: Contador Zombicide: 1. Realizar tarea ... Contador Cero Todos
........................ 13. Mostrar escena ... Nombre: Zombicide Contador ... Como: Actividad, Pantalla Completa, sin titulo


-ESCENAS


E1: Zombicide Contador (explicación de cada elemento, decir que lo que ahí parecen botones, al añadirlos los añado como imagen y no como botón):

449019

...Imagen recargar: ....Click: 1. Mostrar Escena ... Nombre: Zombicide Recargar ... Como: Actividad, Pantalla Completa, sin titulo
...Imagen interrogante: Click: 1. Mostrar Escena ... Nombre: Zombicide Ayuda ... Como: Actividad, Pantalla Completa, sin titulo
...Imagen X: ...........Click: 1. Mostrar Escena ... Nombre: Zombicide Salir ... Como: Actividad, Pantalla Completa, sin titulo
...Imagen rostro Amy: ..Click: 1. Mostrar Escena ... Nombre: Zombicide 1 ... Como: Actividad, Pantalla Completa, sin titulo
........................Click Largo: 1. Visibilidad de elemento Nombre Escena: Zombicide Contador ... Coincidir elemento: Rostrodep 1 ... Establecer: Alternar
...Imagen rostro Doug: .Click: 1. Mostrar Escena ... Nombre: Zombicide 2 ... Como: Actividad, Pantalla Completa, sin titulo
........................Click Largo: 1. Visibilidad de elemento Nombre Escena: Zombicide Contador ... Coincidir elemento: Rostrodep 2 ... Establecer: Alternar
...Imagen rostro Josh: .Click: 1. Mostrar Escena ... Nombre: Zombicide 3 ... Como: Actividad, Pantalla Completa, sin titulo
........................Click Largo: 1. Visibilidad de elemento Nombre Escena: Zombicide Contador ... Coincidir elemento: Rostrodep 3 ... Establecer: Alternar
...Imagen rostro Ned: ..Click: 1. Mostrar Escena ... Nombre: Zombicide 4 ... Como: Actividad, Pantalla Completa, sin titulo
........................Click Largo: 1. Visibilidad de elemento Nombre Escena: Zombicide Contador ... Coincidir elemento: Rostrodep 4 ... Establecer: Alternar
...Imagen rostro Phil: .Click: 1. Mostrar Escena ... Nombre: Zombicide 5 ... Como: Actividad, Pantalla Completa, sin titulo
........................Click Largo: 1. Visibilidad de elemento Nombre Escena: Zombicide Contador ... Coincidir elemento: Rostrodep 5 ... Establecer: Alternar
...Imagen rostro Wanda: Click: 1. Mostrar Escena ... Nombre: Zombicide 6 ... Como: Actividad, Pantalla Completa, sin titulo
........................Click Largo: 1. Visibilidad de elemento Nombre Escena: Zombicide Contador ... Coincidir elemento: Rostrodep 6 ... Establecer: Alternar
...Imagen + en Amy: ....Click: 1. Realizar tarea Nombre: Contador Cambiar ... par1: 1 ... par2: 1
........................Click Largo: 1. Realizar tarea Nombre: Contador Cambiar ... par1: 1 ... par2: -1
...Imagen + en Doug: ...Click: 1. Realizar tarea Nombre: Contador Cambiar ... par1: 2 ... par2: 1
........................Click Largo: 1. Realizar tarea Nombre: Contador Cambiar ... par1: 2 ... par2: -1
...Imagen + en Josh: ...Click: 1. Realizar tarea Nombre: Contador Cambiar ... par1: 3 ... par2: 1
........................Click Largo: 1. Realizar tarea Nombre: Contador Cambiar ... par1: 3 ... par2: -1
...Imagen + en Ned: ....Click: 1. Realizar tarea Nombre: Contador Cambiar ... par1: 4 ... par2: 1
........................Click Largo: 1. Realizar tarea Nombre: Contador Cambiar ... par1: 4 ... par2: -1
...Imagen + en Phil: ...Click: 1. Realizar tarea Nombre: Contador Cambiar ... par1: 5 ... par2: 1
........................Click Largo: 1. Realizar tarea Nombre: Contador Cambiar ... par1: 5 ... par2: -1
...Imagen + en Wanda: ..Click: 1. Realizar tarea Nombre: Contador Cambiar ... par1: 6 ... par2: 1
........................Click Largo: 1. Realizar tarea Nombre: Contador Cambiar ... par1: 6 ... par2: -1
...Texto en Amy: ...Nombre: Nivel 1 ... Texto: %Contador1 ... Color Texto: %Color1
...Texto en Doug: ..Nombre: Nivel 2 ... Texto: %Contador2 ... Color Texto: %Color2
...Texto en Josh: ..Nombre: Nivel 3 ... Texto: %Contador3 ... Color Texto: %Color3
...Texto en Ned: ...Nombre: Nivel 4 ... Texto: %Contador4 ... Color Texto: %Color4
...Texto en Phil: ..Nombre: Nivel 5 ... Texto: %Contador5 ... Color Texto: %Color5
...Texto en Wanda: .Nombre: Nivel 6 ... Texto: %Contador6 ... Color Texto: %Color6
...(Hay unas imagenes que en principio permanecen ocultas. Las uso para marcar cuando un superviviente muere. Básicamente es una imagen identica en tamaño a las de rostro pero en blanco y negro y con una cruz roja. Estas imagenes las coloco en la misma posicion que su correspondiente rostro visible)

449020

...Lo que se hace es, mientras estamos manipulando la escena, una vez colocada esta imagen de muertos encima de las de vivos, pulsamos un click largo y sale un menu de opciones de elemento, y ahí marcamos ocultar)
...Imagen oculta rostro1: ..Click Largo: 1. Visibilidad de elemento Nombre Escena: Zombicide Contador ... Coincidir elemento: Rostrodep 1 ... Establecer: Alternar
...Imagen oculta rostro2: .Click Largo: 1. Visibilidad de elemento Nombre Escena: Zombicide Contador ... Coincidir elemento: Rostrodep 2 ... Establecer: Alternar
...Imagen oculta rostro3: .Click Largo: 1. Visibilidad de elemento Nombre Escena: Zombicide Contador ... Coincidir elemento: Rostrodep 3 ... Establecer: Alternar
...Imagen oculta rostro4: ..Click Largo: 1. Visibilidad de elemento Nombre Escena: Zombicide Contador ... Coincidir elemento: Rostrodep 4 ... Establecer: Alternar
...Imagen oculta rostro5: .Click Largo: 1. Visibilidad de elemento Nombre Escena: Zombicide Contador ... Coincidir elemento: Rostrodep 5 ... Establecer: Alternar
...Imagen oculta rostro6: Click Largo: 1. Visibilidad de elemento Nombre Escena: Zombicide Contador ... Coincidir elemento: Rostrodep 6 ... Establecer: Alternar
...(el resto son imagenes colocadas para hacer de fondo, sin ningún tipo de función)

E2: Zombicide 1 (La ficha de Amy, donde podemos ver sus habilidades según la dificultad en la que se encuentra)

449024

... Imagen check: .....Click: 1. Ocultar escena ... Nombre: Zombicide 1
...(El resto es una imagen de fondo)

E3: Zombicide 2 (La ficha de Doug, donde podemos ver sus habilidades según la dificultad en la que se encuentra)

... Imagen check: .....Click: 1. Ocultar escena ... Nombre: Zombicide 2
...(El resto es una imagen de fondo)

E4: Zombicide 3 (La ficha de Josh, donde podemos ver sus habilidades según la dificultad en la que se encuentra)
... Imagen check: .....Click: 1. Ocultar escena ... Nombre: Zombicide 3
...(El resto es una imagen de fondo)

E5: Zombicide 4 (La ficha de Ned, donde podemos ver sus habilidades según la dificultad en la que se encuentra)
... Imagen check: .....Click: 1. Ocultar escena ... Nombre: Zombicide 4
...(El resto es una imagen de fondo)

E6: Zombicide 5 (La ficha de Phil, donde podemos ver sus habilidades según la dificultad en la que se encuentra)
... Imagen check: .....Click: 1. Ocultar escena ... Nombre: Zombicide 5
...(El resto es una imagen de fondo)

E7: Zombicide 6 (La ficha de Wanda, donde podemos ver sus habilidades según la dificultad en la que se encuentra)
... Imagen check: .....Click: 1. Ocultar escena ... Nombre: Zombicide 6
...(El resto es una imagen de fondo)

E8: Zombicide Ayuda

449022

... Imagen check: .....Click: 1. Ocultar escena ... Nombre: Zombicide Ayuda
...(El resto es una imagen de fondo)

E9: Zombicide Recargar (Llegamos aquí al darle al botón de recargar en la escena principal, esto es un medio para evitar que se recargue todo inmediatamente si le damos sin querer al botón)

449021

... Imagen NO: .....Click: 1. Destruir escena ... Nombre: Zombicide Recargar
... Imagen SI: .....Click: 1. Realizar tarea ... Nombre: Contador cero todos
... .......................2. For ... Variable %Pjs ... Items 1:6
..................................3. Visibilidad del elemento ... Nombre escena: Zombicide Contador ... Coincidir Elemento: Rostrodep %Pjs ... Establecer Falso
... .......................4. End For
... .......................5. Destruir escena ... Nombre: Zombicide Recargar
...(El resto es una imagen de fondo)

E10: Zombicide Salir (Llegamos aquí al darle al botón de la X en la escena principal, esto es un medio para evitar que se salga de la aplicación si le damos sin querer al botón)

449023

... Imagen NO: .....Click: 1. Destruir escena ... Nombre: Zombicide Salir
... Imagen SI: .....Click: 1. Destruir escena ... Nombre: Zombicide Salir
.......................... 2. Destruir escena ... Nombre: Zombicide 1
.......................... 3. Destruir escena ... Nombre: Zombicide 2
.......................... 4. Destruir escena ... Nombre: Zombicide 3
.......................... 5. Destruir escena ... Nombre: Zombicide 4
.......................... 6. Destruir escena ... Nombre: Zombicide 5
.......................... 7. Destruir escena ... Nombre: Zombicide 6
.......................... 8. Destruir escena ... Nombre: Zombicide Contador

Por último, un icono a la tarea de lanzdor (T14) y exportar como APP.

Y hasta aquí la versión corregida, espero que se entienda. Ahora ya tengo ideas de mejora y ampliación de la app, que seguiré trabajando. Pero de momento ya me ha servido para echar unas partidas con ella.
Como siempre se aceptan comentarios, críticas, etc.
Saludos

mlesir
13/01/14, 18:29:32
Enhorabuena! Y gracias por compartirlo. Además de ayudar a otros que pueden coger ejemplos lo que has publicado a mi modo de ver sirve para demostrar que tasker dejo hace mucho de ser SOLO una app para automatizar tareas y que se pueden crear apps con tasker.
Posibles mejoras: en un vistazo rápido hay algo que me ha crujido. Como lo tienes es perfectamente válido pero creo que lo q te voy a decir puedes encontrar tirarlo interesante. Cuando reseteas las variables contador y color, estas utilizando un array, que digamos que es una lista de variables con un subindice que hace que sean variables independientes. Es lo que te hace tasker cuando xej separas un texto. Las distintas partes que estaban en la variable %Var las mete en %Var1,%Var2.... Pues que sepas que el subindice lo podemos indicar como una variable: %Contador1 es lo mismo que %Contador(%Subindice) siempre que en este caso %Subindice valga 1.
Así que tus catorce establecer se podrían reducir a esto:
A1 For: variable for
Items: 1,2,3,4,5,6,7
A2 Establecer variable: %Contador(%for) a 0
A3 Establecer variable %Color(%for) a #FF0083FF
A4 End for

Listo. Aunque te repito que enhorabuena y que como lo tienes funciona perfecto.
Por cierto tienes un foro en htcmania dedicado especialmente a mostrar apps de los usuarios. Lo digo por si quieres publicarlo ahí también.

carcacia
13/01/14, 18:52:55
Enhorabuena! Y gracias por compartirlo. Además de ayudar a otros que pueden coger ejemplos lo que has publicado a mi modo de ver sirve para demostrar que tasker dejo hace mucho de ser SOLO una app para automatizar tareas y que se pueden crear apps con tasker.

Muchas gracias, la intención es esa, que pueda servir para otros usuarios que necesiten algo parecido.

Posibles mejoras: en un vistazo rápido hay algo que me ha crujido. Como lo tienes es perfectamente válido pero creo que lo q te voy a decir puedes encontrar tirarlo interesante. Cuando reseteas las variables contador y color, estas utilizando un array, que digamos que es una lista de variables con un subindice que hace que sean variables independientes. Es lo que te hace tasker cuando xej separas un texto. Las distintas partes que estaban en la variable %Var las mete en %Var1,%Var2.... Pues que sepas que el subindice lo podemos indicar como una variable: %Contador1 es lo mismo que %Contador(%Subindice) siempre que en este caso %Subindice valga 1.
Así que tus catorce establecer se podrían reducir a esto:
A1 For: variable for
Items: 1,2,3,4,5,6,7
A2 Establecer variable: %Contador(%for) a 0
A3 Establecer variable %Color(%for) a #FF0083FF
A4 End for

Bien, a esto es a lo que me refiero en todos mis post con se aceptan comentarios, criticas etc; gracias por revisarlo. Como he dicho, como mi campo no es la informática, hay cosas que las veo o leo, como los array, pero que se me pasan por ese motivo. A ver si le doy unas vueltas entonces y consigo lo que dices, más cómodo parece desde luego.


Listo. Aunque te repito que enhorabuena y que como lo tienes funciona perfecto.
Por cierto tienes un foro en htcmania dedicado especialmente a mostrar apps de los usuarios. Lo digo por si quieres publicarlo ahí también.

Si, se de la sección, quizás lo cuelgue, pero prefería compartirlo primero aquí. Porque aunque mi objetivo era hacer la app para usarla, también quería compartir mis experiencias con Tasker para lograrla.
Si es que el Tasker a sustituido al Candy Crush en mis ratos libres:sisi1::sisi1:
Saludos

mlesir
13/01/14, 19:10:18
Juas Juas! Lo que comentas del candy crash es otra razón por la que tasker no solo es para automatizar tareas. Totalmente de acuerdo a mi me pasa lo mismo. Encima es de lo más adictivo al menos para unos cuantos.

carcacia
13/01/14, 20:50:54
Así que tus catorce establecer se podrían reducir a esto:
A1 For: variable for
Items: 1,2,3,4,5,6,7
A2 Establecer variable: %Contador(%for) a 0
A3 Establecer variable %Color(%for) a #FF0083FF
A4 End for

Genial. Gracias por el dato, ya lo he cambiado en un par de sitios, ocupa menos, es menos lio, y funciona igual de bien.

Caravantes
13/01/14, 22:45:39
La primera versión de mi Contador para Zombicide

Fascinante tinglado, y muy ingenioso. Recibe mis felicitaciones (y agradecimientos), especialmente por haberlo hecho sin experiencia relevante en programación, tiene mucho mérito.

Te sugiero darle otra vuelta de tuerca a la recomendación de Mlesir. Las tareas que incrementan y decrementan los contadores (ContadorArriba1, ContadorAbajo1, ContadorArriba2, ContadorAbajo2, etc)... esas 12 tareas pueden ser sustituidas por UNA sola tarea. Esa tarea común puede recibir dos parámetros: el primer parámetro es el número del superviviente (de 1 a 6) y el segundo parámetro es el incremento (o bien 1 para aumentar, o bien -1 para decrementar). La tarea podría quedar así:

- Si %par2 >0 (parámetro2 superior a cero significa aumentar)
- Sumar a Variable %Contador(%par1) Valor 1 Si %Contador(%par1) < 43
- Else (decrementar)
- Restar a Variable %Contador(%par1) Valor 1 Si %Contador(%par1) >0
- Endif
- SI %Contador(%par1) = 43
- Establecer Variable %Color(%par1) A #FFFF0000 (rojo)
- Else SI %Contador(%par1) > 18
- Establecer Variable %Color(%par1) A #FFFF9700 (Naranja)
- Else SI %Contador(%par1) > 6
- Establecer Variable %Color(%par1) A #FFFFDF00 (amarillo)
- Else
- Establecer Variable %Color(%par1) A #FF0083FF (azul)
- Fin si

La tarea que he descrito podría llamarse ContadorCambiar.

Luego, en la escena, tienes que hacer unos pequeños cambios para que todas las acciones de los distintos contadores llamen a esa tarea única, pero que lo hagan pasándole los parámetros correspondientes, así:

...Imagen + en Amy: ....Click: 1. Realizar tarea Nombre: ContadorCambiar, par1 1, par2 1
........................Click Largo: 1. Realizar tarea Nombre: ContadorCambiar, par1 1, par2 -1
...Imagen + en Doug: ...Click: 1. Realizar tarea Nombre: ContadorCambiar, par1 2, par2 1
........................Click Largo: 1. Realizar tarea Nombre: ContadorCambiar, par1 2, par2 -1
...etc...

carcacia
13/01/14, 23:03:02
Fascinante tinglado, y muy ingenioso. Recibe mis felicitaciones (y agradecimientos), especialmente por haberlo hecho sin experiencia relevante en programación, tiene mucho mérito.

Te sugiero darle otra vuelta de tuerca a la recomendación de Mlesir. Las tareas que incrementan y decrementan los contadores (ContadorArriba1, ContadorAbajo1, ContadorArriba2, ContadorAbajo2, etc)... esas 12 tareas pueden ser sustituidas por UNA sola tarea. Esa tarea común puede recibir dos parámetros: el primer parámetro es el número del superviviente (de 1 a 6) y el segundo parámetro es el incremento (o bien 1 para aumentar, o bien -1 para decrementar). La tarea podría quedar así:

- Si %par2 >0 (parámetro2 superior a cero significa aumentar)
- Sumar a Variable %Contador(%par1) Valor 1 Si %Contador(%par1) < 43
- Else (decrementar)
- Restar a Variable %Contador(%par1) Valor 1 Si %Contador(%par1) >0
- Endif
- SI %Contador(%par1) = 43
- Establecer Variable %Color(%par1) A #FFFF0000 (rojo)
- Else SI %Contador(%par1) > 18
- Establecer Variable %Color(%par1) A #FFFF9700 (Naranja)
- Else SI %Contador(%par1) > 6
- Establecer Variable %Color(%par1) A #FFFFDF00 (amarillo)
- Else
- Establecer Variable %Color(%par1) A #FF0083FF (azul)
- Fin si

La tarea que he descrito podría llamarse ContadorCambiar.

Luego, en la escena, tienes que hacer unos pequeños cambios para que todas las acciones de los distintos contadores llamen a esa tarea única, pero que lo hagan pasándole los parámetros correspondientes, así:

...Imagen + en Amy: ....Click: 1. Realizar tarea Nombre: ContadorCambiar, par1 1, par2 1
........................Click Largo: 1. Realizar tarea Nombre: ContadorCambiar, par1 1, par2 -1
...Imagen + en Doug: ...Click: 1. Realizar tarea Nombre: ContadorCambiar, par1 2, par2 1
........................Click Largo: 1. Realizar tarea Nombre: ContadorCambiar, par1 2, par2 -1
...etc...

Genial idea Caravantes. Muchas gracias. Con vuestros comentarios e ideas estoy aprendiendo mucho. A ver si estos días voy haciendo todos estos cambios y después publico el nuevo resultado.
Aparte me viene bien para futuros cambios, para cuando el número de supervivientes aumente (con expansiones o personajes propios) y así no tengan que aumentar el número de tareas.
Saludos

carcacia
14/01/14, 12:59:12
Añadido un vídeo de la app en funcionamiento

maid450
14/01/14, 14:47:45
Primero que nada, ¡enhorabuena!
En efecto como comenta Caravantes hacer todo eso sin experiencia en programación tiene mucho mérito. Además ¡estéticamente se ve genial!

Como recomendación, te diría que tratases de hacerla lo más "extensible" posible para poder ampliarla/modificarla de forma más facil en el futuro.
Para esto, hay que localizar las cosas que se repitan en más de un sitio y tratar de hacer que no se repitan.

La sugerencia de Caravantes es básica, reduces 12 tareas a una sola y te permite que cada vez que se añada algún jugador nuevo no haya que crear 2 tareas nuevas.

La de mlesir también es muy buena, aunque yo le pegaría una pequeña vuelta de tuerca, y es que en los "Items" del "For", en vez de poner "1,2,3,4,5,6" puedes poner "1:6" que se leería como "los números del 1 al 6", así si de repente quieres poner 9 jugadores te vale con cambiar el 6 por un 9 ("1:9").

Por otro lado, la tarea T14: Contador Zombicide es idéntica a la tarea T13: Contador Cero todos solo que mostrando una escena al final, con lo que la puedes cambiar por:

-Realizar tarea Contador Cero todos
-Mostrar escena ... Nombre: Zombicide Contador ... Como: Actividad, Pantalla Completa, sin titulo


En cuanto a las escenas, imagino que las fichas de personajes (desde la escena 2 hasta la 7) serán iguales solo cambiando la imágen de fondo, y lo que hace el botón también es lo mismo: ocultar la escena del personaje.
Así que pienso que puedes hacer una escena genérica tipo "Ficha Personaje" con un elemento imágen que ocupe toda la pantalla y el botón (imágen) del check y crear una tarea "Mostrar ficha" que acepte como %par1 el nombre del personaje.
La tarea sería algo así:

- Elemento Imagen .. Escena: Mostrar ficha .. Elemento: Imagen_fondo .. Imagen: /ruta/carpeta/imagenes/ficha_%par1.jpg
- Mostrar Escena ... Nombre: Ficha Personaje ... Como: Actividad, Pantalla Completa, sin titulo

Y en la acción de clicar el Check: Ocultar escena ... Nombre: Ficha Personaje

Es importanteque la acción "Elemento Imagen" vaya antes para poner la imágen que toca antes de mostrarla.
Por otro lado se parte de la base que todas las imágenes de las fichas de personajes están en la misma carpeta con un nombre que sigue una estructura tipo "ficha_doug.jpg", "ficha_wanda.jpg" o algo así, para poder poner la ruta directamente con la variable que le pases a la tarea
Así, al clicar un rostro la acción pasaría a ser Realizar Tarea Mostrar Ficha pasando como parametro 1 el nombre del personaje.

De esta forma, añadir nuevos personajes se simplifica mucho más todavía y te ahorras andar creando tantas escenas identicas.

carcacia
14/01/14, 15:21:37
en vez de poner "1,2,3,4,5,6" puedes poner "1:6" que se leería como "los números del 1 al 6"

Gracias por las sugerencias. Este detalle es algo que también desconocía.

la tarea T14: Contador Zombicide es idéntica a la tarea T13: Contador Cero todos solo que mostrando una escena al final

Cierto, es algo en lo que no había reparado, me ahorraba volver a poner lo mismo.

En cuanto a las escenas, imagino que las fichas de personajes (desde la escena 2 hasta la 7) serán iguales solo cambiando la imágen de fondo, y lo que hace el botón también es lo mismo: ocultar la escena del personaje.
Así que pienso que puedes hacer una escena genérica tipo "Ficha Personaje" con un elemento imágen que ocupe toda la pantalla y el botón (imágen) del check y crear una tarea "Mostrar ficha" que acepte como %par1 el nombre del personaje.

Esto tengo que probarlo también, a ver si saco algo claro, porque de las tres sugerencias es la que más me cuesta visualizar. Pero entiendo que si se añaden más personajes, si sería más fácil.

En serio chicos, muchas gracias por las sugerencias, porque con ellas estoy aprendiendo un montón. Seguiré haciendo estos cambios que me recomendáis.
Un saludo

carcacia
14/01/14, 15:41:59
Tengo una duda con los cambios sugeridos por Caravantes.
He realizado los cambios que Caravantes me recomendó para así reducir las 12 tareas de contar arriba y abajo a 1. Lo he hecho tal cual y funciona perfectamente. Pero la duda me surge con algo que incluso se me había pasado comentar en la explicación de la App pero que se ve tanto en el vídeo como en las capturas: Que el marco del rostro de los personajes también cambia de color al igual que el texto.
Para ello, simplemente, en cada rostro, en la ficha de segundo plano, había definido un marco y en color le ponía las variables que tenía, es decir:
Amy .... %Color1
Doug ... %Color2
...etc...

Pues bien, mi duda es: Ahora que he eliminado las 12 tareas de arriba y abajo, y que tengo la nueva de Marcador Cambiar tal como me explico Caravantes:

- Si %par2 >0 (parámetro2 superior a cero significa aumentar)
- Sumar a Variable %Contador(%par1) Valor 1 Si %Contador(%par1) < 43
- Else (decrementar)
- Restar a Variable %Contador(%par1) Valor 1 Si %Contador(%par1) >0
- Endif
- SI %Contador(%par1) = 43
- Establecer Variable %Color(%par1) A #FFFF0000 (rojo)
- Else SI %Contador(%par1) > 18
- Establecer Variable %Color(%par1) A #FFFF9700 (Naranja)
- Else SI %Contador(%par1) > 6
- Establecer Variable %Color(%par1) A #FFFFDF00 (amarillo)
- Else
- Establecer Variable %Color(%par1) A #FF0083FF (azul)
- Fin si

La tarea que he descrito podría llamarse ContadorCambiar.

Luego, en la escena, tienes que hacer unos pequeños cambios para que todas las acciones de los distintos contadores llamen a esa tarea única, pero que lo hagan pasándole los parámetros correspondientes, así:

...Imagen + en Amy: ....Click: 1. Realizar tarea Nombre: ContadorCambiar, par1 1, par2 1
........................Click Largo: 1. Realizar tarea Nombre: ContadorCambiar, par1 1, par2 -1
...Imagen + en Doug: ...Click: 1. Realizar tarea Nombre: ContadorCambiar, par1 2, par2 1
........................Click Largo: 1. Realizar tarea Nombre: ContadorCambiar, par1 2, par2 -1

Resulta que en los segundos planos sigo teniendo las variables antiguas: %Color1, %Color2,... Y funciona.
Y no entiendo a que se debe, son "restos" pq esas variables aun existen, o interpreta que al darle al + en Amy, como el par1 es 1 la variable %Color1 es realmente %Color(%par1).

Buff, siento si no me he explicado bien, me ha costado plantear esta duda.

Caravantes
14/01/14, 17:22:07
Resulta que en los segundos planos sigo teniendo las variables antiguas: %Color1, %Color2,... Y funciona.

Para Tasker, es indistinto que uses %Color3 o bien %Color(3) o incluso %Color(%alfa) [siempre que %alfa contenga el valor 3]. Todas esas denominaciones se refieren a la misma variable y por eso te siguen funcionando las variables "antiguas", que en realidad son las mismas que con la nueva denominación. Creo que con eso he contestado a tu duda, aunque no estoy muy seguro.

Tras leer el comentario de Maid450, se me ocurre otra posibilidad muy relacionada con lo anterior. Tienes 6 supervivientes, y estaría bien que todas sus informaciones y datos estuviesen referenciados numéricamente. Por ejemplo, en lugar de tener escenas que se llamen "Zombicide Amy", "Zombicide Doug", etc... esas escenas podrían llamarse Zombicide1, Zombicide2, etc. Si usas diferentes imágenes para los rostros, pues igual: Rostro1.jpg, Rostro2.jpg, etc. Puede que esto no te ofrezca ninguna ventaja actual, pero la unificación de denominaciones puede servir para organizar mejor tareas futuras en las que sí haya ventaja con los nombres "normalizados" (mediante terminaciones numéricas) que te permitan usar tareas o acciones comunes con la única diferencia del dígito, igual que ya has hecho con las puntuaciones.

carcacia
15/01/14, 16:09:48
Para Tasker, es indistinto que uses %Color3 o bien %Color(3) o incluso %Color(%alfa) [siempre que %alfa contenga el valor 3]. Todas esas denominaciones se refieren a la misma variable y por eso te siguen funcionando las variables "antiguas"

Gracias por responder. Lo cierto es que después de plantear la duda, medio la resolví haciendo como si incluyese un 7º personaje ( que antes no había existido) y comprobé que funcionaba igual de bien.

He editado el mensaje principal con los cambios que he realizado con las ideas que me habéis dado mlesir, Caravantes y Maid450, y con unas mejoras gráficas de paso. También e cambiado las capturas a un tamaño menor para que se pueda visualizar mejor. He cambiado también el nombre de varios archivos de imagen asi como el de las escenas de cada ficha, sustituyendo los nombres por sus correspondientes números.

Decir que la idea que me planteó Maid450, para las fichas:

En cuanto a las escenas, imagino que las fichas de personajes (desde la escena 2 hasta la 7) serán iguales solo cambiando la imágen de fondo, y lo que hace el botón también es lo mismo: ocultar la escena del personaje.
Así que pienso que puedes hacer una escena genérica tipo "Ficha Personaje" con un elemento imágen que ocupe toda la pantalla y el botón (imágen) del check y crear una tarea "Mostrar ficha" que acepte como %par1 el nombre del personaje.
La tarea sería algo así:
Código:
- Elemento Imagen .. Escena: Mostrar ficha .. Elemento: Imagen_fondo .. Imagen: /ruta/carpeta/imagenes/ficha_%par1.jpg
- Mostrar Escena ... Nombre: Ficha Personaje ... Como: Actividad, Pantalla Completa, sin titulo
No me ha acabado de funcionar, eso que he tenido cuidado de que estuviesen todas en la misma ruta y tenían nombres que solo cambiaba el número asociado al personaje, que era donde colocaba la variable.
Con todo, no estoy seguro de querer que las fichas fuesen así, porque en un futuro me gustaría que en ellas se puedan hacer más acciones que las que tienen ahora (mirar y cerrar).

Otra cosa que intenté, pero no logré fue hacer un for en el botón SI de la escena de Salir, al menos que abarcase las escenas de la 1 a la 6:

... Imagen SI: .....Click: 1. Destruir escena ... Nombre: Zombicide Salir
.......................... 2. Destruir escena ... Nombre: Zombicide 1
.......................... 3. Destruir escena ... Nombre: Zombicide 2
.......................... 4. Destruir escena ... Nombre: Zombicide 3
.......................... 5. Destruir escena ... Nombre: Zombicide 4
.......................... 6. Destruir escena ... Nombre: Zombicide 5
.......................... 7. Destruir escena ... Nombre: Zombicide 6
.......................... 8. Destruir escena ... Nombre: Zombicide Contador

Lo que sucede es que cuando en el destruir escena de dentro del for (con la variable de nombre %Escenas para 1:6), pongo: Zombicide %Escenas, al aceptar no me deja salir atrás en tasker y me manda un flash de que Zombicide %Escenas no existe. Así que se ha tenido que quedar así.

Caravantes
16/01/14, 00:37:17
Lo que sucede es que cuando en el destruir escena de dentro del for (con la variable de nombre %Escenas para 1:6), pongo: Zombicide %Escenas, al aceptar no me deja salir atrás en tasker y me manda un flash de que Zombicide %Escenas no existe.

Tal vez no se pueda hacer. Quizá las variables no se puedan aplicar a los nombres de las escenas.
Brainstorm dice: Antes de desistir, puedes probar a ponerle a las escenas un nombre que no contenga espacios. En lugar de "Zombicide 1", prueba con "Zombicide1". Es lo único que se me ocurre.

maid450
16/01/14, 08:34:00
No me ha acabado de funcionar, eso que he tenido cuidado de que estuviesen todas en la misma ruta y tenían nombres que solo cambiaba el número asociado al personaje, que era donde colocaba la variable.
Con todo, no estoy seguro de querer que las fichas fuesen así, porque en un futuro me gustaría que en ellas se puedan hacer más acciones que las que tienen ahora (mirar y cerrar).
En efecto, si en un futuro cada ficha debe realizar acciones propias este metodo ya no te valdría.

Otra cosa que intenté, pero no logré fue hacer un for en el botón SI de la escena de Salir, al menos que abarcase las escenas de la 1 a la 6
Lo que sucede es que cuando en el destruir escena de dentro del for (con la variable de nombre %Escenas para 1:6), pongo: Zombicide %Escenas, al aceptar no me deja salir atrás en tasker y me manda un flash de que Zombicide %Escenas no existe. Así que se ha tenido que quedar así.
Tal vez no se pueda hacer. Quizá las variables no se puedan aplicar a los nombres de las escenas. Brainstorm dice: Antes de desistir, puedes probar a ponerle a las escenas un nombre que no contenga espacios. En lugar de "Zombicide 1", prueba con "Zombicide1". Es lo único que se me ocurre.
Si que se puede hacer, incluso con espacios, pero la validación de la pantalla no está del todo bien hecha y no acepta texto mezclado con variables como en cualquier otro lado, tiene que ser o todo texto o solo una variable.
Podrías hacerlo de esta forma:

1. For Variable %contador Items Salir,1:6,Contador
2 Establecer Variable %escena Valor Zombicide %contador
3. Destruir escena ... Nombre: %escena
4. EndFor
Eso hará que el bucle se ejecute asignando a la variable local %contador los valores: "Salir", los numeros de 1 al 6 y "Contador", luego crea una variable local %escena que irá valiendo "Zombicide Salir", "Zombicide 1" ... "Zombicide 6", "Zombicide Contador" y entonces, teniendo el nombre completo de la escena en una variable SI deja destruirla.

Dicho esto, como veo que has empezado a usar Fors en distintas acciones, te recomiendo que la variable que sirve como iterador la hagas local siempre que puedas (con el nombre todo en minusculas) las variables locales son temporales y se destruyen en cuanto acaba la tarea en la que se definen, asi no vas dejando "basurilla" como %Arra, %Pjs...

Además, nuevamente pensando en que se puedan añadir más facilmente personajes, puedes crear una variable global (no local, así que debe tener alguna letra mayuscula y su valor persistirá) %NumPersonajes o algo así y asignarle el valor 6 desde la pestaña de variables por ejemplo, y en los distintos Fors usar 1:%NumPersonajes en vez de 1:6, asi, para añadir 3 peronajes bastaría con cambiar el valor de la variable de 6 a 9 y en los Fors recorrería usando los numeros de 1 a 9.
Esto también funcionaría en la acción de destruir escenas que he propuesto, poniendo como items: "Salir,1:%NumPersonajes,Contador"

carcacia
16/01/14, 10:23:40
1. For Variable %contador Items Salir,1:6,Contador
2 Establecer Variable %escena Valor Zombicide %contador
3. Destruir escena ... Nombre: %escena
4. EndFor
Eso hará que el bucle se ejecute asignando a la variable local %contador los valores: "Salir", los numeros de 1 al 6 y "Contador", luego crea una variable local %escena que irá valiendo "Zombicide Salir", "Zombicide 1" ... "Zombicide 6", "Zombicide Contador" y entonces, teniendo el nombre completo de la escena en una variable SI deja destruirla.

Dicho esto, como veo que has empezado a usar Fors en distintas acciones, te recomiendo que la variable que sirve como iterador la hagas local siempre que puedas (con el nombre todo en minusculas) las variables locales son temporales y se destruyen en cuanto acaba la tarea en la que se definen, asi no vas dejando "basurilla" como %Arra, %Pjs...

Además, nuevamente pensando en que se puedan añadir más facilmente personajes, puedes crear una variable global (no local, así que debe tener alguna letra mayuscula y su valor persistirá) %NumPersonajes o algo así y asignarle el valor 6 desde la pestaña de variables por ejemplo, y en los distintos Fors usar 1:%NumPersonajes en vez de 1:6, asi, para añadir 3 peronajes bastaría con cambiar el valor de la variable de 6 a 9 y en los Fors recorrería usando los numeros de 1 a 9.
Esto también funcionaría en la acción de destruir escenas que he propuesto, poniendo como items: "Salir,1:%NumPersonajes,Contador"

Gracias Maid450, la idea para cerrar las escenas todas tiene buena pinta, a ver si la pruebo y comento que tal ha ido.
En cuanto a lo de las variables, llevas razón, esas pueden ser tranquilamente locales, las cambiaré también.
La última idea está bien para cuando la aplicación se vuelva muy grande.
Gracias por todo nuevamente, un saludo.

geek1
14/12/14, 21:54:12
Impresionante trabajo, joder con tasker y vuestras ganas nos vais a dejar sin trabajo a los informáticos, jajajaja

kdmaufa
23/12/14, 14:12:16
Buenas, este proyecto sigue en marcha? Pq esta realmente genial. Si sigue en marcha, donde puedo descargarlo para probarlo, q no veo ningún enlace. Muchas gracias, un saludo y felices fiestas!

carcacia
23/12/14, 22:25:43
Buenas, este proyecto sigue en marcha? Pq esta realmente genial. Si sigue en marcha, donde puedo descargarlo para probarlo, q no veo ningún enlace. Muchas gracias, un saludo y felices fiestas!

Desafortunadamente no. En su momento había hecho una copia de los archivos de tasker al ordenador. Pero uno, no se donde los he metido, y dos la copia no era la final, pq cuando la tenía bastante bien definida, tuve un problema con el móvil en el que la estaba haciendo, y se fue todo al garete.
Ese fue mi primer proyecto con escenas, y aun estaba muy verde (que aun lo estoy, pero algo menos ;-) ). Lo abandoné y me centré en otros, sorry. Pero bueno, aquí tienes pautas de como montarla, y lo que necesites preguntar, si me paso por aquí lo responderé.